Introducción
Este documento describe cómo determinar y definir reglas de traducción de voz.
Prerequisites
Requirements
No hay requisitos específicos para este documento.
Componentes Utilizados
Este documento no tiene restricciones específicas en cuanto a versiones de software y de hardware.
La información que contiene este documento se creó a partir de los dispositivos en un ambiente de laboratorio específico. Todos los dispositivos que se utilizan en este documento se pusieron en funcionamiento con una configuración verificada (predeterminada). Si tiene una red en vivo, asegúrese de entender el posible impacto de cualquier comando.
Convenciones
Consulte Convenciones de Consejos Técnicos de Cisco para obtener información sobre las convenciones del documento.
Antecedentes
La sintaxis utilizada en este documento es la siguiente:
Sintaxis |
Definición |
rule precedence /match pattern/ /replace pattern/ |
/ — / delimita el número entero. |
rule precedence /match pattern/ /replace pattern/ |
/ — / delimita el número entero. |
Coincidencia y sustitución sencillas
Ejemplo 1
Este ejemplo reemplaza la primera aparición del número 123 por 456.
voice translation-rule 1
rule 1 /123/ /456/
Estos son ejemplos de reglas de traducción de voz de prueba:
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
En este ejemplo, la regla coincide con la primera aparición del número que contiene el patrón 123 en cualquier parte del número. En concreto, puede utilizar los indicadores de inicio y fin de número. Estos ejemplos lo muestran.
Ejemplo 2
Este ejemplo muestra cómo reemplazar cualquier aparición de 123 al principio de un número por 456.
voice translation-rule 1
rule 1 /^123/ /456/
Estos son los mejores ejemplos de reglas de traducción de voz.
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
Ejemplo 3
Si sólo desea la coincidencia de un número exacto, especifique los indicadores de número inicial y final:
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
Coincidencia de patrones con comodines
Estas tablas definen las combinaciones de comodines y comodines, y muestran algunos ejemplos.
Comodín |
Definición |
. |
Cualquier dígito |
0 a 9,*,# |
Cualquier carácter específico |
[0-9] |
Cualquier intervalo o secuencia de caracteres |
* |
Modificador: no coincide con ninguna o más apariciones |
+ |
Modificador: coincide con una o más apariciones |
? |
Modificador: no coincide con ninguna aparición o una aparición |
Combinación de comodines |
Definición |
.* |
Cualquier dígito seguido de ninguna o más apariciones. Esto incluye nulo o cualquier otro dígito. |
.+ |
Cualquier dígito seguido de ninguna o más apariciones. Esto incluye nulo o cualquier otro dígito. |
^$ |
Sin dígitos, nulo |
Ejemplo 1
En este ejemplo se reemplaza cualquier número de cinco dígitos que comience por 40 por el número 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
Ejemplo 2
En este ejemplo se reemplazan todos los números por 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
Ejemplo 3
En este ejemplo se reemplazan todos los números, excepto null, por 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
Ejemplo 4
En este ejemplo se reemplaza cualquier número que comience con una combinación de ceros (0, 00, etc.) por 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
Número de sector
Puede utilizar el sector de número cuando necesite copiar partes de un número coincidente en el número de reemplazo. El número coincidente se divide en conjuntos que se pueden mantener o omitir.
Carácter |
Descripción |
\ |
En el patrón de coincidencia, indica dónde dividir el número. |
\ |
En el patrón de reemplazo, indica dónde copiar los conjuntos para guardarlos. |
( ) |
Indica los conjuntos del número coincidente que se van a conservar. |
Uso de caracteres |
Descripción |
(a\) |
Mantenga la expresión a. |
b\ |
Omitir expresión b. |
\1 |
Copie el primer conjunto en el número de sustitución. |
Ejemplo genérico
Este ejemplo proporciona una explicación general.
/ (x\) y\ (z\) / /w\1\2/
Divida el número coincidente en tres conjuntos de x, y y z. La barra diagonal inversa (\) indica los lugares en los que se va a dividir el número. Los corchetes () indican los conjuntos que desea reutilizar en el patrón de reemplazo. Thew representa dígitos adicionales para insertar en el número de reemplazo.
El número de sustitución es un número concatenado: wxz.
Ejemplo relacionado
Este ejemplo proporciona más detalles:
voice translation-rule 1
rule 1 /^\(12\)3\(45\)$/ /6\1\2/
-
Conjunto 1: 12
-
Conjunto 2: 45
-
Omitir: 3
router#test voice translation-rule 1 12345
Matched with rule 1
Original number: 12345 Translated number: 61245
Tipo de número y plan
Puede restringir las coincidencias a números o tipos de plan concretos. Además, puede modificar el plan o tipo de reemplazo.
Ejemplo 1
En este ejemplo, si un número comienza por 4 y el tipo es nacional, la regla agrega 90 como prefijo. Si el tipo es internacional, la regla agrega 900 como prefijo.
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
Esto es útil cuando las compañías telefónicas (empresas de telecomunicaciones) eliminan los códigos de acceso de los números nacionales e internacionales. Puede agregar el prefijo correcto con el tipo de número como base.
Ejemplo 2
En este ejemplo se cambia el tipo de número y el plan.
voice translation-rule 8
rule 1 /^2\(...$\)/ /01779345\1/ type unknown national plan unknown isdn
Esta regla coincide con cualquier número de cuatro dígitos que comience por 2. La regla quita el 2, agrega el número 01779345 como prefijo y establece el plan en isdn y el tipo en 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
Rechazar llamadas
Utilice la palabra clave ejectkeyword para rechazar las llamadas que coinciden. En este ejemplo se rechazan todas las llamadas que empiezan por 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
Aplicar reglas
Las reglas de traducción de voz se aplican a los perfiles de traducción de voz. Estos perfiles se aplican a pares de marcado o puertos de voz. Los perfiles se pueden aplicar a pares de marcado VoIP o POTS o a puertos de voz y se pueden aplicar a llamadas entrantes o salientes. Un perfil puede traducir números de Llamada, Llamada o Redireccionamiento.
voice translation-rule 3
rule 1 /123/ /456/
voice translation-profile profile1
translate calling 3
dial-peer voice 10 pots
translation-profile outgoing profile1
Ejemplos adicionales
Truncar números hasta los dos últimos dígitos
rule 1 /^.*\(..\)/ /\1/
Este es un número dividido en un conjunto y una sentencia ignorada.
La instrucción de reemplazo especifica Set 1. Esta regla copia los dos últimos dígitos del número.
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
Quitar dígitos no deseados de un número
Este ejemplo es útil porque se sabe que ciertas empresas telefónicas insertan guiones en los números de la parte que llama. Dado que esto va en contra de los estándares, hace que se ignore el número de la parte que llama. La compañía telefónica envía los números llamantes en dos formatos, con un guión y a veces con dos. Se requieren dos reglas en la regla de traducción de voz. Además, el primer formato puede tener cinco o seis dígitos después del guión. Puede hacer coincidir ambas condiciones con una regla con el carácter '?' (hacer coincidir ninguna o una aparición).
Caracteres especiales:
-
El guión se utiliza para indicar un intervalo en un patrón de coincidencia, por ejemplo [0-9]. Para indicar en esta regla que desea que coincida en el carácter de guión, es necesario utilizar el carácter '\' para escapar de su significado. Esto se debe a que el guión es un carácter especial. Los caracteres '\-' realmente significan guión. El extremo '\' indica que el número está dividido aquí.
-
Si escribe?directamente, Cisco IOS® piensa que es una solicitud de ayuda. Debe escribir Control-Vthen?.
voice translation-rule 12
rule 1 /^\(01...\)\-\(......?$\)/ /\1\2/
rule 2 /^\(0[12]..\)\-\(...\)\-\(....$\)/ /\1\2\3/
Regla 1: El número se divide en tres secuencias, con dos conjuntos que se conservarán.
-
Set 1: 01...
Omitir: -
Juego 2: ...... o .....
Regla 2: El número se divide en cinco secuencias con tres conjuntos que se conservarán.
-
Conjunto 1: 0[12].
Omitir: -
Conjunto 2: ...
Omitir: -
Juego 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
Información Relacionada