Ir al contenido

Notas de Actualización

Esta es una guía para configurar y conectar nuestra API SMS a su cliente Kannel.

Si utiliza Kannel para enviar mensajes a diferentes pasarelas SMS, puede añadir fácilmente un módulo SMSC adicional sin cambiar la arquitectura de su aplicación.

Soporte: berlin@lox24.eu

Para enviar mensajes con Kannel, debe crear una clave de autenticación en la página de cuenta con el tipo ‘Kannel API’. Vaya a “Configuración” -> “Configuración API” y haga clic en “Crear nueva clave”. Tiene que elegir como tipo “Kannel API”. Account page an API key

Existen dos tipos de configuraciones SMSC posibles para enviar SMS con LOX24 vía Kannel:

  • envío de solicitudes DLR a su punto fina
  • el envío de solicitudes DLR a su módulo SMSC Kannel, que a su vez envía una solicitud DLR a su endpoint (encadenamiento DLR URL)

Nota: Lo que hay sobre una petición de DLR lo puedes leer aquí:

La API LOX24 enviará los informes de entrega directamente a su endpoint sin pasar por Kannel.

Para utilizar la API de Kannel, basta con crear una nueva configuración SMSC:

group = smsc
smsc = http
system-type = kannel
smsc-id = "lox24"
allowed-smsc-id = "lox24"
port = 10443
send-url = "https://lox24.eu/api/kannel/{SERVICE_CODE}.php"
smsc-username = "{USER_ID}"
smsc-password = "{API_KEY}"
max-sms-octets = 1530

Donde:

  • SERVICE_CODE - cualquier código de servicio disponible para su cuenta en minúsculas por ejemplo, “text2speech”, “direct”, etc.
  • USER_ID - su ID de cuenta, el mismo que el ID de cliente utilizado para iniciar sesión en account.lox24.eu
  • API_KEY - un token de API activo de tipo ‘API Kannel’. Cómo crearlo ver here.

Nosotros enviaremos los informes de entrega a Kannel, que a su vez enviará los DLR a su endpoint.

Para utilizar la API de Kannel, basta con crear una nueva configuración SMSC:

group = smsc
smsc = http
system-type = kannel
smsc-id = "lox24"
allowed-smsc-id = "lox24"
port = 10443
send-url = "https://lox24.eu/api/kannel/{SERVICE_CODE}.php"
smsc-username = "{USER_ID}"
smsc-password = "{API_KEY}"
dlr-url = "http://youhosthere.com:10443/?username={USER_ID}&password={API_KEY}"
connect-allow-ip = "127.0.0.1;213.133.127.70;116.203.64.153;85.10.245.*"
max-sms-octets = 1530

Donde:

  • SERVICE_CODE - cualquier código de servicio disponible para su cuenta en minúsculas por ejemplo, “text2speech”, “direct”, etc.
  • USER_ID - su ID de cuenta, el mismo que el ID de cliente utilizado para iniciar sesión en account.lox24.eu
  • API_KEY - un token de API activo de tipo ‘API Kannel’. Cómo crearlo ver aquí.

Si configura API v2 Status URL/E-mail en la cuenta web de lox24 podrá omitir el parámetro dlr-url y recibir notificaciones de mensajes de la misma forma que si enviara SMS mediante nuestra API v2 normal directamente a un script en su servidor o por correo docs.

En los ejemplos de configuración de SMSC se utiliza el puerto 10443, pero puede ser cualquier puerto que desee. Recomendamos encarecidamente bloquearlo por el cortafuegos y permitir conexiones TCP desde los servidores LOX24 (116.203.64.153,213.133.127.70,85.10.245.*) y hosts conocidos.

LOX24 Kannel API es una implementación mínima de Kannel y sólo soporta las siguientes variables:

  • %d - Tipo de informe Kannel (entero):

    • 1: Entregado al teléfono
    • 2: No entregado al teléfono
    • 4: En cola en SMSC
    • 8: Entregado a SMSC
    • 16: No entregado a SMSC
  • %q - El número de teléfono internacional (E.164) que recibirá el mensaje.

  • %T - La hora del informe de entrega expresada en segundos desde la época UNIX.

Nota: Puede utilizar cualquier otra variable, pero no podemos garantizar que los datos sean correctos.

(obligatorio)

ID del remitente del mensaje. Puede ser un número (hasta 15 dígitos) o un texto (hasta 11 caracteres). Si se trata de un número, utilice preferentemente el formato de número de teléfono E.164. Un remitente de texto puede contener espacios pero no otros caracteres especiales. Tenga en cuenta que algunos países no admiten identificadores de remitente propios o exigen un registro previo. Nuestro sistema intenta detectar automáticamente si un ID de remitente es un texto o un número de teléfono. Evite los caracteres especiales en un número e introdúzcalo de la misma forma que se marcaría en un teléfono.

(obligatorio)

Número de destinatario (internacional)

(obligatorio)

El texto del mensaje puede tener una longitud de hasta 1530 caracteres. Con un SMS Unicode, la longitud máxima de caracteres se reduce a 670 caracteres. La codificación interna es UTF-8.

(opcional)

Puedes enviar un SMS con el parámetro ‘coding’:

0 - GSM 03.38 (default), 1 - 8-bit or 2 - UCS-2 encoding.

En nuestro caso, 8 bits y UCS-2 son lo mismo (is_unicode = true) y se tratarán como SMS unicode.

(opcional)

Especifique una URL y pídanos que la llamemos para informarle del estado de la entrega. Si no se especifica el parámetro ‘dlr-url’, se utilizará API v2 DLR endpoint from user’s settings (si está configurado).

(opcional)

Si se da, el centro de SMS pospondrá el mensaje para que se entregue en el momento más esta cantidad de minutos. Si se omite, el SMS se enviará lo antes posible.

Ese ejemplo de solicitud get que el usuario envía a su smsbox de Kannel que está a la escucha en el puerto 9001.

http://127.0.0.1:9001/cgi-bin/sendsms?dlr-url=http://yourhost.com/dlr_test.php?status=%d%26time=%T%26q=%q%26customid=1234567&from=sender&password=test1&smsc=lox24&text=test%20message&to=+49751234567&username=test1&coding=0

Añade a una url DLR un parámetro personalizado con el ID interno del mensaje para procesar correctamente la petición DLR. En nuestro ejemplo es un customid = 1234567.