Aller au contenu principal

OmniSS7 - Guide de l'utilisateur

OmniSS7 par Omnitouch Network Services est une pile de signalisation SS7 complète et polyvalente qui fournit une fonctionnalité flexible des éléments du réseau.

Aperçu du routage

Aperçu de la documentation​

Cette documentation est organisée par rôle d'élément de réseau. Choisissez le guide qui correspond à votre déploiement :

📚 Guides de configuration​

  • Guide STP - Configuration du Point de Transfert de Signal

    • Routage du trafic SS7 entre les pairs du réseau
    • Routage par code de point et titre global
    • Équilibrage de charge et masquage de topologie
    • Utilisez ceci si vous routez le trafic SS7 entre des réseaux
  • Guide Client MAP - Configuration du Client MAP

    • Connectez-vous en tant que client M3UA pour envoyer des requêtes MAP
    • Requêtes HLR, authentification, informations de routage
    • Support générique du protocole MAP
    • Utilisez ceci si vous envoyez des requêtes MAP à des éléments de réseau
  • Guide Centre SMS - Configuration du Centre SMS (SMSc)

    • Routage et livraison de messages SMS
    • Mise en file d'attente de messages soutenue par une base de données
    • Auto-flush et rapports de livraison
    • Utilisez ceci si vous exploitez un Centre SMS
  • Guide HLR - Configuration du Registre de Localisation Abonné

    • Gestion de la base de données des abonnés
    • Génération de vecteurs d'authentification
    • Mises à jour de localisation et informations de routage
    • Utilisez ceci si vous exploitez un HLR/HSS
  • Guide Passerelle CAMEL - Configuration de la Passerelle CAMEL

    • Services de réseau intelligent (CAP/CAMEL)
    • Contrôle d'appel en temps réel et facturation
    • Intégration CGrateS pour la facturation
    • Générateur de requêtes interactif et surveillance de session
    • Utilisez ceci si vous fournissez des services IN ou une facturation en temps réel
  • Guide Passerelle USSD - Configuration de la Passerelle USSD

    • Pont SS7/MAP USSD vers des rappels HTTP/JSON
    • Menus USSD interactifs multi-tours
    • Routage de codes courts vers différentes URL de rappel
    • Poussée USSD d'origine réseau via l'API REST
    • Utilisez ceci si vous construisez des applications USSD (vérifications de solde, recharges, etc.)

🔧 Fonctionnalités communes​

  • Guide des fonctionnalités communes - Composants partagés
    • Aperçu et configuration de l'interface utilisateur Web
    • Documentation API
    • Surveillance et métriques (Prometheus)
    • Meilleures pratiques et dépannage

📖 Documentation de référence​

  • Annexe - Référence technique
    • Spécifications du protocole SS7
    • Codes d'opération MAP
    • Flux de transactions TCAP
    • Encodages et formats de caractères

🧭 Exemples de routage par titre global​


Démarrage rapide​

1. Aperçu du système​

OmniSS7 peut fonctionner en différents modes selon vos exigences réseau :

3. Configuration​

OmniSS7 sélectionne son rôle à partir d'un ensemble de drapeaux de mode dans config/config.exs. Les drapeaux se composent, de sorte qu'une seule instance peut agir en plusieurs rôles à la fois (par exemple, Client MAP plus SMSc).

Remarque : config/runtime.exs dans ce dépôt est un court stub de test. Les serveurs de production ont leur propre runtime.exs déployé séparément. Modifiez config/config.exs (et le fichier spécifique à l'environnement qu'il importe) pour changer la configuration par défaut.

Pour sélectionner un rôle :

  1. Définissez les drapeaux de mode pertinents dans config/config.exs
  2. Configurez la connexion M3UA (map_client_m3ua ou cap_client_m3ua) et toutes les URL d'API backend
  3. Redémarrez l'application

→ Voir les guides spécifiques au mode ci-dessous pour des instructions de configuration complètes

Mode STP : routez le trafic SCCP/M3UA entre les pairs :

config :omniss7,
sctp_handler: %{enabled: true, local_ip: {0, 0, 0, 0}, local_port: 2905, point_code: 100},
enable_gt_routing: true,
m3ua_peers: [...],
m3ua_routes: [...],
m3ua_gt_routes: [...]

Mode HLR :

config :omniss7,
hlr_mode_enabled: true,
map_client_enabled: true,
hlr_api_base_url: "https://hlr-backend:8443",
map_client_m3ua: %{...}

Mode SMSc :

config :omniss7,
map_client_enabled: true,
smsc_mode_enabled: true,
smsc_api_base_url: "https://smsc-backend:8443",
auto_flush_enabled: true,
map_client_m3ua: %{...}

Mode Passerelle CAMEL :

config :omniss7,
cap_client_enabled: true,
camelgw_mode_enabled: true,
cgrates_enabled: true,
cgrates_url: "http://localhost:2080/jsonrpc",
cgrates_tenant: "cgrates.org",
cap_client_m3ua: %{...}

Voir la Référence de configuration pour chaque paramètre, y compris la Passerelle USSD (ussd_gateway_enabled).

4. Accéder à l'interface utilisateur Web​

L'interface utilisateur Web est servie sur HTTPS sur le port 8087 : par exemple https://localhost:8087/ (ou votre hôte configuré). L'endpoint impose TLS, donc le http:// simple est redirigé.


Architecture du système​


Matrice des fonctionnalités​

FonctionnalitéMode STPClient MAPMode SMScMode HLRPasserelle CAMEL
Routage par code de point✅❌❌❌❌
Routage par titre global✅❌❌❌❌
Réécriture de SSN✅❌❌❌❌
Support multi-pairs✅✅✅✅✅
Requêtes MAP (Envoyer)❌✅✅✅❌
Réponses MAP (Recevoir)❌✅✅✅❌
Gestion de file d'attente SMS❌❌✅❌❌
Auto-flush SMS❌❌✅❌❌
Base de données des abonnés❌❌❌✅❌
Vecteurs d'authentification❌❌❌✅❌
Mises à jour de localisation❌❌❌✅❌
Support CAP/CAMEL❌❌❌❌✅
Facturation en temps réel❌❌❌❌✅
Contrôle d'appel (Services IN)❌❌❌❌✅
Interface utilisateur Web✅✅✅✅✅
API REST✅✅✅✅✅
Métriques Prometheus✅✅✅✅✅

Opérations courantes​

OmniSS7 écoute sur plusieurs ports, chacun servant une surface différente :

PortProtocoleServi parObjectif
8087HTTPSControlPanel (Phoenix)Tableau de bord de l'interface Web (TLS imposé)
8445HTTPSapi_exAPI de statut JSON (/api/status, /api/m3ua-status, /api/routing, …)
9090HTTPAPIhandler (Plug.Cowboy)API d'opération MAP (/api/*), UI Swagger (/swagger), spécification OpenAPI (/swagger.json), métriques Prometheus (/metrics)
2905SCTPM3UA/M2PATransport de signalisation SS7

Accès à l'interface utilisateur Web​

  • Interface Web : https://localhost:8087/ (ou hôte configuré)
  • UI Swagger : http://localhost:9090/swagger
  • Spécification OpenAPI : http://localhost:9090/swagger.json
  • Métriques : http://localhost:9090/metrics

Surveillance​

# Voir les métriques Prometheus
curl http://localhost:9090/metrics

# Vérifier l'état des pairs M3UA (TLS, certificat auto-signé)
curl -k https://localhost:8445/api/m3ua-status

# État du service
curl -k https://localhost:8445/api/status

Journaux​

Les journaux sont émis sous forme de JSON structuré (un objet par ligne) pour ingestion par Loki/Alloy, via OmniLogger.JsonFormatter. Définissez le niveau de journalisation dans config/config.exs :

config :logger,
level: :debug # Options :debug, :info, :warning, :error

Capacités clés​

  • Support complet du protocole MAP - Opérations MAP Phase 2/3
  • Support du protocole CAP/CAMEL - CAP v1/v2/v3/v4 pour les services de réseau intelligent
  • Signalisation M3UA/SCTP - Transport SS7 basé sur IP
  • Facturation en temps réel - Intégration CGrateS pour la facturation prépayée/postpayée
  • Livraison de SMS - File d'attente de messages soutenue par HTTP/JSON avec auto-flush
  • Générateur de requêtes interactif - Interface Web pour les tests CAMEL/CAP
  • Surveillance des sessions - Suivi des sessions d'appel CAMEL en temps réel
  • Documentation API interactive - UI Swagger pour les tests
  • Métriques Prometheus - Observabilité complète
  • Configuration multi-rôle - STP, Client MAP, SMSc, HLR, Passerelle CAMEL, Passerelle USSD

Aperçu de la pile de protocoles​


Exemples de cas d'utilisation​

Passerelle réseau (STP)​

Routage du trafic SS7 entre différents réseaux mobiles

  • Connecter les réseaux d'opérateurs
  • Passerelle SS7 internationale
  • Équilibrage de charge entre HLR
  • Traduction de titre global
  • NAT SCCP (Réutilisation intelligente de titre global)
  • → Guide STP

Centre SMS (SMSc)​

Livrer des messages SMS aux abonnés mobiles

  • Livraison MT-SMS
  • Origination MO-SMS
  • Routage domestique SMS
  • Masquage IMSI
  • Pare-feu SMS
  • Gestion de file d'attente de messages
  • Rapports de livraison
  • Intégré dans OmniMessage pour gérer tous les SMS MAP
  • → Guide Centre SMS

Client MAP​

Interagir avec n'importe quel élément de réseau via MAP en utilisant une API RESTful simple

  • PRN / SRI / ATI / etc
  • Construisez vos propres applications SS7/MAP en utilisant des API RESTful
  • Passerelles USSD
  • Requêtes de vecteurs d'authentification
  • Recherches IMSI/MSISDN
  • Requêtes d'informations de routage
  • → Guide Client MAP

Base de données des abonnés (HLR)​

Gérer les données des abonnés et l'authentification

  • Mises à jour de localisation
  • Génération d'authentification
  • Provisionnement d'informations de routage
  • S'intègre complètement dans OmniHSS
  • → Guide HLR

Plateforme de réseau intelligent (Passerelle CAMEL)​

Contrôle d'appel en temps réel et facturation pour les opérateurs de télécommunications

  • Facturation d'appels prépayés/postpayés
  • Contrôle d'appel (connexion, libération, routage)
  • Gestion de session et génération de CDR
  • Générateur de requêtes interactif pour les tests
  • → Guide Passerelle CAMEL

Support et ressources​

Documentation​

Guides de configuration principaux :

Intégration & Référence :