Cómo ajustar los prefijos de números de SMS
En esta guía proporcionamos ejemplos de reglas de enrutamiento que muestran cómo puedes ajustar los prefijos de números de teléfono con reglas de enrutamiento. Si los números de teléfono llegan en varios formatos de los usuarios, necesitamos crear reglas que ajusten cada formato para asegurar que los números se envíen correctamente al proveedor de servicios de SMS.
Introducción
En nuestro ejemplo, el proveedor de servicios de SMS aceptará un número de teléfono en el siguiente formato:
+97466781661
Los usuarios del sistema utilizarán otros formatos para enviar el mensaje. Por ejemplo:
66781661 | -> | +97466781661 |
0097466781661 | -> | +97466781661 |
97466781661 | -> | +97466781661 |
+97466781661 | -> | +97466781661 |
Queremos asegurarnos de que todos los formatos anteriores sean aceptados por nuestro proveedor de servicios de SMS. Para lograrlo, crearemos 5 reglas de enrutamiento:
Ruta 1: Agregar el prefijo "+974" a números de teléfono de 8 dígitos
Ruta 2: Cambiar números que comienzan con "00974" para que comiencen con "+974"
Ruta 3: Cambiar números que comienzan con "974" para que comiencen con "+974"
Ruta 4: Dejar números que comienzan con "+974" y enviar el SMS a la red móvil
Ruta 5: Cualquier otra cosa debe enviarse a la papelera de reciclaje
Ruta 1 / Paso 1: Crear la ruta
El primer ejemplo agregará un prefijo al número de teléfono si este tiene exactamente 8 dígitos.
Cambiar esto: 66781661 A esto: +97466781661
Necesitas crear una ruta dedicada para hacer esta modificación. Esta ruta debe coincidir con números de teléfono de 8 dígitos y modificarlos para que tengan el prefijo +974.
Puedes comenzar haciendo clic en el ícono "Rutas" en la barra de herramientas. Después de esto, especifica la conexión "Desde" como "Any_SMS_User" y la conexión "Hacia" como "SMPP_Client_1". Deja el modo como "Mover".
Ruta 1 / Paso 2: Crear una condición de coincidencia
Para que esta ruta coincida con números de teléfono de exactamente 8 dígitos, necesitas agregar una "Condición de coincidencia". La "Condición de coincidencia" verificará la "Dirección de destino" y si el número de teléfono tiene exactamente 8 dígitos, la ruta entrará en efecto.
Condición de coincidencia:
/^\d{8}$/
La condición anterior se puede desglosar así:
iniciar la coincidencia: ^
vienen 8 dígitos: \d{8}
finalizar la coincidencia: $
Ruta 1 / Paso 3: Crear un modificador
Después de que el SMS coincida con este patrón, la regla de modificación entrará en efecto:
/^(\d{8})$/+974$1/
La condición anterior se puede desglosar así:
cambiar esto: ^(\d{8})$
a esto: +974$1
Nota que la sección "a esto" contiene $1. Esto significa que el primer grupo debe colocarse allí. El primer grupo es "(\d{8})". Un grupo está marcado por ( ).
Ruta 1 / Paso 4: Probar la ruta
Para probar el sistema, simplemente envía un SMS a un número de teléfono de 8 dígitos. Nota que después de enviar el mensaje, cuando revises la carpeta de elementos enviados, verás que el número de teléfono "Para" fue cambiado al formato apropiado. Has enviado el SMS a "66781661", pero el SMS fue enviado realmente a "+97466781661".
Las propiedades de la ruta son:
Nombre de la ruta: | Ruta 1 |
Desde: | Any_SMS_User@localhost |
Hacia: | SMPP_client_1@localhost |
Modo: | Mover |
Coincidir con dirección de destino: | /^\d{8}$/ |
Modificar dirección de destino: | /^(\d{8})$/+974$1/ |
La tabla anterior contiene los ajustes que necesitas aplicar.
Ruta 2. - Cambiar prefijo 00971 a +971
La segunda ruta cambiará el prefijo 00 por un signo +. En las redes móviles, los números de teléfono internacionales comienzan con un signo +, mientras que en los sistemas telefónicos clásicos comienzan con 00.
Cambiar esto: 0097466781661 A esto: +97466781661Condición de coincidencia:
/^00974.*$/
La condición anterior se puede desglosar así:
iniciar la coincidencia: ^
los siguientes dígitos son: 00974
puede venir cualquier cosa después: .*
finalizar la coincidencia: $
/^00974(.*)$/+974$1/
La condición anterior se puede desglosar así:
cambiar esto: ^00974(.*)$
a esto: +974$1
Las propiedades de la ruta son:
Nombre de la ruta: | Ruta 2 |
Desde: | Any_SMS_User@localhost |
Hacia: | SMPP_client_1@localhost |
Modo: | Mover |
Coincidir con dirección de destino: | /^00974.*$/ |
Modificar dirección de destino: | /^00974(.*)$/+974$1/ |
La tabla anterior contiene los ajustes que necesitas aplicar.
Ruta 3. - Cambiar prefijo 971 a +971
La ruta agregará un signo + al número de teléfono. En las redes móviles, los números de teléfono internacionales comienzan con un signo +; a menos que se agregue el signo +, el número será tratado como un número local.
Cambiar esto: 97466781661 A esto: +97466781661Condición de coincidencia:
/^974.*$/
La condición anterior se puede desglosar así:
iniciar la coincidencia: ^
los siguientes dígitos son: 974
puede venir cualquier cosa después: .*
finalizar la coincidencia: $
/^974(.*)$/+974$1/
La condición anterior se puede desglosar así:
cambiar esto: ^974(.*)$
a esto: +974$1
Las propiedades de la ruta son:
Nombre de la ruta: | Ruta 3 |
Desde: | Any_SMS_User@localhost |
Hacia: | SMPP_client_1@localhost |
Modo: | Mover |
Coincidir con dirección de destino: | /^974.*$/ |
Modificar dirección de destino: | /^974(.*)$/+974$1/ |
La tabla anterior contiene los ajustes que necesitas aplicar.
Ruta 4. - Prefijo +971 a +971 (dejar pasar números correctamente formateados)
La cuarta ruta simplemente coincidirá con el número de teléfono correctamente formateado y dejará pasar el SMS sin modificaciones.
Coincidir con esto: 97466781661Condición de coincidencia:
/^[+]974.*$/
La condición anterior se puede desglosar así:
iniciar la coincidencia: ^
el siguiente dígito es: +
los siguientes dígitos son: 974
puede venir cualquier cosa después: .*
finalizar la coincidencia: $
Nota que el signo + fue puesto entre corchetes: [+]. Esto se debe a que el signo + es un carácter especial en la sintaxis de expresiones regulares.
Modificador:Dejar vacío
Si el número de teléfono está correctamente formateado, no se necesita modificación.
Las propiedades de la ruta son:
Nombre de la ruta: | Ruta 4 |
Desde: | Any_SMS_User@localhost |
Hacia: | SMPP_client_1@localhost |
Modo: | Mover |
Coincidir con dirección de destino: | /^[+]974.*$/ |
Modificar dirección de destino: |
La tabla anterior contiene los ajustes que necesitas aplicar.
Ruta 5. - Mover cualquier otra cosa a la papelera de reciclaje
Nuestra ruta final moverá cualquier número de teléfono que no coincida con ninguna de las condiciones de enrutamiento anteriores a la papelera de reciclaje.
Coincidir: Cualquier cosa Sin cambios Enrutar a: Papelera de reciclaje
Nombre de la ruta: | Ruta 5 |
Desde: | Any_SMS_User@localhost |
Hacia: | SMPP_client_1@localhost |
Modo: | Descartar |
Coincidir con dirección de destino: | |
Modificar dirección de destino: |
La tabla anterior contiene los ajustes que necesitas aplicar.
La tabla de enrutamiento final
Tu tabla de enrutamiento final se verá así:
Nombre de la ruta | Desde | Coincidir | Modificar | Modo | Hacia |
Ruta 1 | Any_SMS_User@localhost | /^\d{8}$/ | /^(\d{8})$/+974$1/ | Mover | SMPP_client_1@localhost |
Ruta 2 | Any_SMS_User@localhost | /^00974.*$/ | /^00974(.*)$/+974$1/ | Mover | SMPP_client_1@localhost |
Ruta 3 | Any_SMS_User@localhost | /^974.*$/ | /^974(.*)$/+974$1/ | Mover | SMPP_client_1@localhost |
Ruta 4 | Any_SMS_User@localhost | /^[+]974.*$/ | Mover | SMPP_client_1@localhost | |
Ruta 5 | Any_SMS_User@localhost | Descartar |
More information
- Cómo cambiar el número de teléfono del destinatario SMS
- Prefijos numéricos
- Signo más al frente
- Cómo cambiar el ID de remitente SMS
- Cómo reenviar un SMS a múltiples destinatarios
- Cómo intercambiar el remitente y destinatario SMS
- Cómo cambiar el texto SMS
- Cómo anexar texto al final del SMS
- Cómo encriptar mensajes SMS
- Cómo manipular la dirección del destinatario usando regexp
- Cómo cambiar el texto SMS con C#