Ce document décrit comment déterminer et définir des règles de traduction vocale.
Aucune exigence spécifique n'est associée à ce document.
Ce document n'est pas limité à des versions de matériel et de logiciel spécifiques.
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. Si votre réseau est en ligne, assurez-vous de bien comprendre l’incidence possible des commandes.
La syntaxe utilisée dans ce document est la suivante :
| Syntaxe |
Définition |
| préséance de la règle /match pattern/ /replace pattern/ |
/ — /délimite le nombre entier. |
| préséance de la règle /match pattern/ /replace pattern/ |
/ — /délimite le nombre entier. |
Cet exemple remplace la première occurrence du nombre 123 par 456.
voice translation-rule 1 rule 1 /123/ /456/
Voici des exemples de règles de traduction vocale de test :
router#test voice translation-rule 1 123 Matched with rule 1 Original number: 123 Translated number: 456 router#test voice translation-rule 1 1234 Matched with rule 1 Original number: 1234 Translated number: 4564 router#test voice translation-rule 1 6123 Matched with rule 1 Original number: 6123 Translated number: 6456
router#test voice translation-rule 1 6123123 Matched with rule 1 Original number: 6123123 Translated number: 6456123 Original number type: none Translated number type: none Original number plan: none Translated number plan: none
Dans cet exemple, la règle correspond à la première occurrence du numéro qui contient le modèle 123 n'importe où dans le numéro. Plus précisément, vous pouvez utiliser les indicateurs de début et de fin de numéro. Ces exemples le montrent.
Cet exemple montre comment remplacer toute occurrence de 123 au début d'un nombre par 456.
voice translation-rule 1 rule 1 /^123/ /456/
Voici les exemples de règles de traduction vocale les plus récents.
router#test voice translation-rule 1 123 Matched with rule 1 Original number: 123 Translated number: 456 router#test voice translation-rule 1 1234 Matched with rule 1 Original number: 1234 Translated number: 4564 router#test voice translation-rule 1 6123 6123 Didn't match with any of rules
Si vous voulez uniquement la correspondance d'un nombre exact, spécifiez les indicateurs de numéro de début et de fin :
voice translation-rule 1 rule 1 /^123$/ /456/
router#test voice translation-rule 1 123 Matched with rule 1 Original number: 123 Translated number: 456 router#test voice translation-rule 1 1234 1234 Didn't match with any of rules router#test voice translation-rule 1 6123 6123 Didn't match with any of rules
Ces tableaux définissent des combinaisons de caractères génériques et de caractères génériques, et présentent quelques exemples.
| Caractère Générique |
Définition |
| . |
Tout chiffre unique |
| 0 à 9,*,# |
Tout caractère spécifique |
| [0-9 ] |
Toute plage ou séquence de caractères |
| * |
Modificateur : ne correspond à aucune ou plusieurs occurrences |
| + |
Modificateur : correspondre à une ou plusieurs occurrences |
| ? |
Modificateur : ne correspond à aucune ou à une occurrence |
| Combinaison De Caractères Génériques |
Définition |
| .* |
Tout caractère unique suivi d'aucune ou de plusieurs occurrences. Cela signifie qu'il peut correspondre à une chaîne vide, un caractère unique ou une séquence de plusieurs caractères (sauf pour le caractère de nouvelle ligne, par défaut). |
| .+ |
Tout caractère unique suivi d'une ou plusieurs occurrences. Sauf pour les caractères de nouvelle ligne, par défaut. |
| ^$ |
Aucun chiffre, null |
Cet exemple montre comment remplacer tout numéro à cinq chiffres commençant par 40 par le numéro 6666000.
voice translation-rule 1 rule 1 /^40.../ /6666000/
router#test voice translation-rule 1 40123 Matched with rule 1 Original number: 40123 Translated number: 6666000
Cet exemple montre comment remplacer tous les nombres par 5554000.
voice translation-rule 2 rule 1 /.*/ /5554000/
router#test voice translation-rule 2 123 Matched with rule 1 Original number: 123 Translated number: 5554000 router#test voice translation-rule 2 86573 Matched with rule 1 Original number: 86573 Translated number: 5554000 router#test voice translation-rule 2 "" Matched with rule 1 Original number: Translated number: 5554000
Cet exemple remplace tous les nombres, à l'exception de null, par 5554000.
voice translation-rule 2 rule 1 /.+/ /5554000/
router#test voice translation-rule 2 123 Matched with rule 1 Original number: 123 Translated number: 5554000 router#test voice translation-rule 2 "" Didn't match with any of rules
Cet exemple remplace tout nombre commençant par une combinaison de zéros (0, 00, etc.) par 909.
voice translation-rule 5 rule 1 /^0+/ /909/
router#test voice translation-rule 5 0123456 Matched with rule 1 Original number: 0123456 Translated number: 909123456 router#test voice translation-rule 5 00123456 Matched with rule 1 Original number: 00123456 Translated number: 909123456 router#test voice translation-rule 5 000123456 Matched with rule 1 Original number: 000123456 Translated number: 909123456 router#test voice translation-rule 5 123456 123456 Didn't match with any of rules
Vous pouvez utiliser la tranche de numéros lorsque vous devez copier des parties d'un numéro apparié sur le numéro de remplacement. Vous découpez le nombre correspondant en ensembles que vous pouvez conserver ou ignorer.
| Caractère |
Description |
| \ |
Dans le modèle de correspondance, indique où découper le numéro. |
| \ |
Dans le modèle de remplacement, indique où copier les jeux à conserver. |
| ( ) |
Indique les jeux à conserver dans le numéro apparié. |
| Utilisation des caractères |
Description |
| (a\) |
Conserver expression a. |
| b\ |
Ignorer l'expression b. |
| \1 |
Copiez le premier jeu dans le numéro de remplacement. |
Cet exemple fournit une explication générale.
/ (x\) y\ (z\) / /w\1\2/
Fractionnez le nombre correspondant en trois ensembles : x, y et z. La barre oblique inverse (\) indique les emplacements où découper le numéro. Les crochets () indiquent les jeux à réutiliser dans le modèle de remplacement. La représente des chiffres supplémentaires à insérer dans le numéro de remplacement.
L'ensemble 1 devient expressionx.
L'ensemble 2 devient expressionz.
L'expression est ignorée.
Le numéro de remplacement est un nombre concaténé : wxz.
Cet exemple fournit plus de détails :
voice translation-rule 1 rule 1 /^\(12\)3\(45\)$/ /6\1\2/
Ensemble 1 : 12
Ensemble 2 : 45
Ignorer : 3
router#test voice translation-rule 1 12345 Matched with rule 1 Original number: 12345 Translated number: 61245
Vous pouvez limiter les rapprochements à un numéro ou à un type de plan particulier. Vous pouvez également modifier le plan ou le type de remplacement.
Dans cet exemple, si un nombre commence par 4 et que le type est national, la règle ajoute 90 comme préfixe. Si le type est international, la règle ajoute 900 comme préfixe.
voice translation-rule 7 rule 1 /^4/ /904/ type national national rule 2 /^4/ /9004/ type international international
router#test voice translation-rule 7 493456567 type national Matched with rule 1 Original number: 493456567 Translated number: 90493456567 Original number type: national Translated number type: national Original number plan: none Translated number plan: none router#test voice translation-rule 7 493456567 type international Matched with rule 2 Original number: 493456567 Translated number: 900493456567 Original number type: international Translated number type: international Original number plan: none Translated number plan: none
Cela est utile lorsque les compagnies de téléphone (opérateurs téléphoniques) suppriment les codes d'accès sur les numéros nationaux et internationaux. Vous pouvez ajouter le préfixe correct avec le type de numéro comme base.
Cet exemple montre comment modifier le type de numéro et le plan.
voice translation-rule 8 rule 1 /^2\(...$\)/ /01779345\1/ type unknown national plan unknown isdn
Cette règle correspond à tout numéro à quatre chiffres commençant par 2. La règle supprime le 2, ajoute le numéro 01779345 comme préfixe et définit le plan sur isdn et le type sur national.
router#test voice translation-rule 8 2001 type unknown plan unknown Matched with rule 1 Original number: 2001 Translated number: 01779345001 Original number type: unknown Translated number type: national Original number plan: unknown Translated number plan: isdn
Utilisez le mot clé ject pour rejeter les appels qui correspondent. Cet exemple montre comment rejeter tous les appels commençant par 234.
rule 1 reject /^234/
router#test voice translation-rule 10 1234 1234 Didn't match with any of rules router#test voice translation-rule 10 2345 blocked on rule 1
Les règles de traduction vocale sont appliquées aux profils de traduction vocale. Ces profils sont ensuite appliqués aux terminaux de numérotation dial-peer ou aux ports vocaux. Les profils peuvent être appliqués aux terminaux de numérotation dial-peer VoIP ou POTS ou aux ports vocaux, ainsi qu'aux appels entrants ou sortants. Un profil peut traduire les numéros appelés, en cours d'appel ou redirigés.
voice translation-rule 3 rule 1 /123/ /456/ voice translation-profile profile1 translate calling 3 dial-peer voice 10 pots translation-profile outgoing profile1
rule 1 /^.*\(..\)/ /\1/
Il s'agit d'un nombre divisé en un ensemble et une instruction ignorée.
Ignoré : ^.* Aucun ou plusieurs chiffres à partir du début du nombre
Jeu 1 : .. deux chiffres
L'instruction de remplacement spécifie Set 1. Cette règle copie les deux derniers chiffres du numéro.
router#test voice translation-rule 9 12345 Matched with rule 1 Original number: 12345 Translated number: 45 router#test voice translation-rule 9 123456 Matched with rule 1 Original number: 123456 Translated number: 56
Cet exemple est utile car certaines opérateurs téléphoniques sont connus pour insérer des tirets dans les numéros des appelants. Comme cela va à l'encontre des normes, le numéro de l'appelant est ignoré. L'opérateur de téléphonie envoie les numéros appelants dans deux formats, avec un trait d'union et parfois deux. Deux règles sont requises dans la règle de traduction vocale. En outre, le premier format peut comporter cinq ou six chiffres après le trait d'union. Vous pouvez faire correspondre ces deux conditions avec une règle avec le point d'interrogation (?) (ne correspond à aucune occurrence ou à une occurrence).
Caractères spéciaux :
Le trait d'union est utilisé pour indiquer une plage dans un modèle de correspondance, par exemple [0-9]. Pour indiquer dans cette règle que vous voulez faire correspondre le caractère de trait d'union, il est nécessaire d'utiliser le caractère '\' pour échapper à sa signification. En effet, le trait d'union est un caractère spécial. Les caractères '\-' signifient en réalité un trait d'union. La fin '\' indique que le numéro est découpé ici.
Si vous tapez ?directement, Cisco IOS® pense qu'il s'agit d'une demande d'aide. Vous devez taper Control-Vthen?.
voice translation-rule 12 rule 1 /^\(01...\)\-\(......?$\)/ /\1\2/ rule 2 /^\(0[12]..\)\-\(...\)\-\(....$\)/ /\1\2\3/
Règle 1 : Le numéro est divisé en trois séquences, avec deux ensembles à conserver.
Set 1: 01...
Ignorer : -
Ensemble 2 : ......ou.....
Règle 2 : Le numéro est divisé en cinq séquences avec trois ensembles à conserver.
Set 1: 0[12]..
Ignorer : -
Ensemble 2 : ...
Ignorer : -
Ensemble 3 : ....
router#test voice translation-rule 12 "01208-333444" Matched with rule 1 Original number: 01208-333444 Translated number: 01208333444 router#test voice translation-rule 12 "01208-72345" Matched with rule 1 Original number: 01208-72345 Translated number: 0120872345 router#test voice translation-rule 12 "0161-333-4444" Matched with rule 2 Original number: 0161-333-4444 Translated number: 01613334444 router#test voice translation-rule 12 "0208-123-4567" Matched with rule 2 Original number: 0208-123-4567 Translated number: 02081234567
| Révision | Date de publication | Commentaires |
|---|---|---|
4.0 |
29-May-2026
|
Recertification |
2.0 |
13-Nov-2023
|
Mis à jour pour la mise en forme et l'orthographe. |
1.0 |
10-Aug-2004
|
Première publication |