2011-01-22 18 views
7

He creado múltiples conexiones SMSC SMPP.Configuración de Kannel para múltiples smsc

después de la configuración tengo enviar sms pero el sms se envía con smsc al azar.

¿Cómo puedo controlar kannel para enviar sms con smpp que quiero enviar?

+0

se puede saber cómo lo hizo ¿configura 'kannel' para múltiples conexiones' smsc'? – Kulasangar

Respuesta

0

Puede especificar qué SMSC envía a través de la presentación al servidor kannel, por ejemplo:

GET /cgi-bin/sendsms?smsc=$smsc&username=$user&password=$password&to=$receipient&text=$text&dlr-mask=$dlrMask&dlr-url=$dlrUrl 

donde $smsc debe coincidir con un smsc-id que tiene en su kannel.conf

Documentation here, bajo "Tabla 6-16. Variables CGI SMS push (send-sms)".

+2

La respuesta no está completa. El smsc-id y la variable $ smsc no están necesariamente relacionados. Siguiendo la documentación de Kannel para smsc-id: "Tenga en cuenta que si la conexión de SMS Center tiene una ID de SMSC asignada, NO significa automáticamente que los mensajes con identificador de SMSC idéntico se enrutan a ella, sino variables de configuración denied-smsc-id, permitidas -smsc-id y preferred-smsc-id se usa para eso. " –

6

De forma predeterminada, Kannel enrutará el mensaje de forma rotativa entre todos los SMSC conectados.

Hay tres parámetros SMSC que controlan el enrutamiento a un SMSC específico:

  • negado-SMSC-id mensajes SMS con SMSC ID igual a cualquiera de los ID en esta lista no están dirigidas a este SMSC. Las entradas múltiples se separan con punto y coma (';')

  • permitido-SMSC-id Esta lista es opuesto al anterior: sólo los mensajes SMS con SMSC ID en esta lista cada vez se dirigen a este SMSC. Las entradas múltiples se separan con punto y coma (';')

  • preferida-SMSC-id mensajes SMS con SMSC ID de esta lista se envían a esta SMSC en lugar de a SMSC sin que ID como preferidos. Las entradas múltiples se separan con punto y coma (';')

Malabares con estas variables permite crear desde muy simples a los escenarios de enrutamiento muy complejos.

Aquí es un ejemplo muy básico:

Supongamos que tenemos 2 SMSC, smsc1 y smsc2 y queremos encaminar mensajes SMS a uno de los 2 SMSC. En nuestro archivo kannel config añadimos las siguientes líneas:

group = smsc 
smsc-id = smsc1 
allowed-smsc-id = smsc1 

group = smsc 
smsc-id = smsc2 
allowed-smsc-id = smsc2 

Ahora, podemos especificar lo SMSC para enviar a través de la solicitud a la interfaz kannel SendSMS:

GET /kannel/sendsms?smsc=SMSC_ID&to=TO&text=TEXT 

donde SMSC_ID puede ser una de smsc1 o smsc2. En este ejemplo, si no especificamos ningún smsc en la solicitud GET, los sms no coincidirán con ninguna de las reglas para smsc1 o smsc2 y no se enviarán.Podemos evitar esto mediante la creación de un defecto SMSC para ser utilizado por todos los mensajes salientes con la variable grupo siguientes SendSMS usuario:

  • default-SMSC cadena Si ningún ID SMSC se da con la petición HTTP, utilice esta como ruta predeterminada para todos los mensajes push.
group = sendsms-user 
default-smsc = smsc1 

Otra opción sería utilizar la variable denied-smsc-id:

group = smsc 
smsc-id = smsc1 
denied-smsc-id = smsc2 

group = smsc 
smsc-id = smsc2 
denied-smsc-id = smsc1 

Con esta configuración, cuando especificamos el SMSC en la petición HTTP el SMS se encamina al SMSC con ese ID , pero cuando no lo hagamos, Kannel recurrirá a un round-robin entre smsc1 y smsc2.

Para más aplicaciones avanzadas:

Para una comprensión más profunda de enrutamiento de Kannel y escenarios más complejos también se puede comprobar a cabo en este tema:

http://old.nabble.com/Routing-of-outgoing-sms-td19723248.html

+1

Triste pero no hay contenido por URL expuesta – ghost28147

Cuestiones relacionadas