Aller au contenu principal

Traduction de Numéros

📖 Retour à la Documentation Principale

La traduction de numéros convertit les numéros de téléphone entre différents formats pour garantir un formatage E.164 cohérent dans tout le système.

Documentation Connexe

Documentation Principale

Flux de Traitement des Appels

Services Connexes

Surveillance


Traduction de Numéros

La traduction de numéros convertit les numéros de téléphone entre différents formats (local, national, international) pour garantir un formatage E.164 cohérent dans tout le système.

Qu'est-ce que la Traduction de Numéros ?

La traduction de numéros normalise les numéros de téléphone au format E.164 (norme internationale) avant le traitement des appels. Cela garantit :

  • Un numérotage cohérent dans tout le système
  • Un routage approprié vers des destinations sur le réseau et hors réseau
  • Une compatibilité avec les trunks SIP internationaux et les réseaux IMS

Format E.164 : [Code Pays][Numéro National] (sans préfixe +, sans espaces)

  • Exemple : 61403123456 (mobile Australien)
  • Exemple : 16505551234 (numéro américain)

Quand la Traduction a Lieu

La traduction a lieu :

  • Avant les recherches Sh
  • Avant les recherches HLR
  • Avant l'autorisation OCS
  • Avant que le XML du plan de numérotation soit généré

Pour les Appels MT : Traduire le numéro de destination (partie appelée) Pour les Appels MO : Traduire à la fois les numéros de source et de destination

Configuration

config :tas,
number_translate: %{
country_code: :PF, # Code pays ISO 3166-1 alpha-2
localAreaCode: "617" # Code de zone par défaut pour les numéros courts
}

Paramètres :

  • country_code : Code pays ISO sous forme d'atome (par exemple, :AU, :US, :PF)
  • localAreaCode : Code de zone préfixé aux numéros locaux courts

Codes Pays Supportés

Le TAS inclut une logique de traduction pour ces pays :

Code PaysPaysFormats SupportésPréfixe E.164
:AUAustralie0NSN (10 chiffres), SN (8 chiffres), E.16461
:USÉtats-UnisNPANXXXXXX (10 chiffres), 1+NPANXXXXXX, E.1641
:PFPolynésie FrançaiseLocal (6 chiffres), National (8 chiffres), E.164689

Ajout de Nouveaux Codes Pays : Contactez votre ingénieur d'intégration pour ajouter le support de nouveaux pays.

Comportements de Traduction Spéciaux

1. Suppression des Préfixes de Blocage CLI

Avant la traduction de format, les préfixes de blocage CLI sont supprimés :

Entrée :  *67555123456
Étape 1 : Supprimer *67 → 555123456
Étape 2 : Traduire → 1555123456 (si États-Unis)

2. Suppression des Paramètres SIP

Les paramètres après les points-virgules sont supprimés :

Entrée :  61403123456;npdi;rn=+61400000000
Étape 1 : Supprimer ;npdi;rn=... → 61403123456
Étape 2 : Traduire → 61403123456

3. Suppression des Caractères Non Chiffrés

Tous les caractères non chiffrés (sauf +) sont supprimés :

Entrée :  +61 (403) 123-456
Étape 1 : Supprimer le formatage → +61403123456
Étape 2 : Traduire → 61403123456

Variables Définies Après Traduction

VariableValeurDescription
destination_numberFormat E.164Numéro de destination normalisé
tas_destination_numberFormat E.164Identique à destination_number (les deux définis pour compatibilité)
effective_caller_id_numberFormat E.164Numéro source normalisé (appels MO)

Que Se Passe-t-il Lorsque la Traduction Échoue

Scénario : Code Pays Indéfini

config :tas, number_translate: %{country_code: :XX}  # Invalide

Résultat : {:error, "Code Pays Indéfini"} - appel rejeté

Scénario : Format de Numéro Invalide

Entrée : "abc123" (contient des lettres)
Étape 1 : Supprimer les non-chiffres → "123"
Étape 2 : Trop court, ne peut correspondre à aucun modèle
Résultat : Peut passer tel quel ou être rejeté en fonction de la logique du plan de numérotation

Meilleure Pratique : Toujours valider la provision des abonnés avec des numéros E.164 corrects dans le HSS.

Tester la Traduction de Numéros

Testeur de Traduction de l'Interface Web (/translate) :

  1. Naviguez vers /translate dans le Panneau de Contrôle
  2. Sélectionnez le code pays dans le menu déroulant
  3. Entrez un numéro de test dans n'importe quel format
  4. Visualisez la sortie E.164 traduite
  5. Testez plusieurs formats pour valider

Scénarios de Test Courants :

  • Codes courts locaux → E.164
  • Format national (0NSN) → E.164
  • Format international (+CC) → E.164
  • Numéros avec préfixes CLI → supprimés et traduits
  • Numéros avec formatage (espaces, tirets) → E.164 propre

Dépannage de la Traduction de Numéros

Problème : Appels échouant avec "NUMÉRO_NON_ALLOUÉ"

  1. Vérifiez le format du numéro traduit :

    • Utilisez l'outil /translate pour tester le numéro
    • Vérifiez que la sortie correspond au format E.164 attendu
    • Confirmez que le code pays et le code de zone sont corrects
  2. Vérifiez la recherche Sh :

    • Le numéro traduit est utilisé pour la requête Sh
    • Utilisez /sh_test avec le numéro traduit
    • Vérifiez que l'abonné existe avec ce MSISDN
  3. Vérifiez les variables du plan de numérotation :

    • Consultez les journaux pour la valeur de destination_number
    • Confirmez que la traduction a eu lieu avant le plan de numérotation

Problème : Mauvais code de zone appliqué

# Configuration
config :tas, number_translate: %{
country_code: :AU,
localAreaCode: "617" # Incorrect pour votre région
}

# Entrée : 12345678 (numéro local à 8 chiffres)
# Sortie : 6161712345678 (incorrect - double code de zone)
# Correction : Définir le bon localAreaCode pour votre déploiement

Problème : Numéros internationaux non reconnus

Vérifiez si le numéro inclut le code pays :

  • +61403123456 ou 61403123456 → Reconnu
  • 0403123456 dans une configuration de code_pays incorrecte → Mal routé

Comportement de Traduction MO vs MT

Appels MT (Mobile Terminated) :

  • Seul le numéro de destination (partie appelée) est traduit
  • Le numéro source (appelant) est transmis tel quel depuis le SIP
  • La destination est utilisée pour la recherche Sh de l'abonné appelé

Appels MO (Mobile Originating) :

  • Le numéro de destination (partie appelée) est traduit
  • Le numéro source (partie appelante) est également traduit
  • La source est utilisée pour la recherche Sh de l'abonné appelant
  • Les deux numéros sont normalisés pour un journal/CDR cohérent

Meilleures Pratiques

  1. Utilisez le Bon Code Pays :

    • Définissez country_code pour correspondre à votre région de déploiement
    • Testez minutieusement avant la production
  2. Configurez le Code de Zone Local Approprié :

    • localAreaCode doit correspondre au code de zone par défaut de votre réseau
    • Utilisé pour les numéros courts sans code de zone
  3. Testez Tous les Formats de Numéros :

    • Local (codes courts)
    • National (format 0NSN)
    • International (format +CC)
    • Numéros de services spéciaux (urgence, messagerie vocale)
  4. Surveillez les Journaux de Traduction :

    • Vérifiez les erreurs "Code Pays Indéfini"
    • Surveillez les formats de numéro inattendus
    • Validez que la sortie E.164 correspond aux attentes
  5. Documentez Votre Plan de Numérotation :

    • Définissez quels formats les abonnés utiliseront
    • Testez chaque format dans l'outil /translate
    • Formez le personnel des opérations sur les formats attendus