API HTTP - acción 'receivemessage'
Esta acción se puede utilizar para recibir mensajes SMS desde la Pasarela SMS mediante sondeo HTTP. El sondeo HTTP significa que descargas mensajes SMS de la carpeta de entrada de la pasarela como si descargaras una página web. En esta sección puedes obtener información sobre cómo usar la acción receivemessage, cuáles son los parámetros y se te presentará un ejemplo de solicitud HTTP para descargar mensajes entrantes.
Descripción
Para descargar mensajes de texto entrantes, utiliza el siguiente formato de URL:
https://127.0.0.1:9508/api?action=receivemessage&username=UUUUU&password=PPPPP&
folder=inbox&limit=2&afterdownload=delete
Para 127.0.0.1, debes sustituir el nombre de host o la dirección IP de la computadora donde está instalada tu pasarela SMS. El número de puerto 9508 es el número de puerto HTTP predeterminado de la pasarela SMS Ozeki. Su número de puerto puede configurarse en la interfaz de usuario de Ozeki 10 SMS Gateway, haciendo clic en el botón Avanzado en la barra de herramientas.
El nombre de usuario y la contraseña deben sustituirse por "UUUUU" y "PPPPP". El nombre de usuario y la contraseña identifican al usuario que has creado en la pasarela SMS. Cuando invocas la acción receivemessage llamando a la URL, descargarás mensajes de la bandeja de entrada del usuario especificado en la consulta con el nombre de usuario y la contraseña.
El parámetro folder del mensaje debe establecerse en inbox.
El parámetro limit especifica el número de mensajes que se descargarán. Se recomienda descargar menos de 1000 mensajes en una sola solicitud. Puedes descargar los mensajes restantes en solicitudes posteriores.
El parámetro afterdownload puede usarse para eliminar mensajes de la pasarela SMS una vez que se hayan descargado correctamente.
Ejemplo de solicitud URL
https://127.0.0.1:9508/api?action=receivemessage&username=admin&password=abc123&
folder=inbox&limit=2&afterdownload=delete
Ejemplo de respuesta
HTTP/1.1 200 OK Content-Type: application/xml Content-Length: 824 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE response PUBLIC "-//OZEKI//DTD XML 1.0//EN" "http://www.ozekisms.com/DTD/response.xml"> <response> <action>receivemessage</action> <data> <message> <messageid>ERFAV23D</messageid> <originator>06301234567</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Hola mundo</messagedata> <senttime>2008-01-16 10:04:00</senttime> <receivedtime>2008-01-18 20:58:04</receivedtime> </message> <message> <messageid>GYT4455D</messageid> <originator>06209994444</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Segundo mensaje</messagedata> <senttime>2008-01-16 10:08:00</senttime> <receivedtime>2008-01-18 20:58:05</receivedtime> </message> </data> </response>
Parámetros de solicitud
Parámetro | Descripción | Valores posibles | Ejemplo | Obligatorio/Opcional* |
action | Especifica el comando de la API HTTP | receivemessage | action=receivemessage | Obligatorio |
username | Especifica el nombre de usuario. Los parámetros username y password se utilizan para autenticar al usuario. Una vez autenticado, los mensajes se descargarán de su bandeja de entrada. El valor debe estar codificado en URL. | valor de cadena, longitud máxima de 16 caracteres | username=admin | Obligatorio |
password | Especifica la contraseña. Los parámetros username y password se utilizan para autenticar al usuario. Una vez autenticado, los mensajes se descargarán de su bandeja de entrada. El valor debe estar codificado en URL. | valor de cadena, longitud máxima de 16 caracteres | password=abc123 | Obligatorio |
folder | Especifica el nombre de la carpeta. Por defecto, los mensajes se descargarán de la carpeta inbox. Puedes usar la acción receivemessage para descargar mensajes de otras carpetas también. |
inbox (predeterminado) outbox deliveredtonetwork deliveredtohandset deliveryfailed |
folder=inbox | Opcional |
limit | Especifica el número máximo de mensajes que se descargarán del servidor dentro de la solicitud. Puedes descargar los mensajes restantes con solicitudes posteriores. | valor entero, el límite predeterminado es 1000 | limit=10 | Opcional |
afterdownload | Especifica cómo se deben manejar los mensajes después de una
descarga exitosa. Los mensajes pueden eliminarse de la pasarela SMS; pueden
marcarse como descargados o pueden dejarse intactos. Si se
dejan intactos, la próxima vez que inicies una solicitud de descarga,
se descargarán nuevamente. |
delete (predeterminado) mark untouch |
afterdownload=delete | Opcional |
responseformat | Puedes especificar el formato de los mensajes entrantes del usuario. | xml, html, url-encoded | responseformat=xml | Opcional |
* Obligatorio = Parámetro obligatorio, Opcional = Parámetro opcional
Parámetros de respuesta
(formato de respuesta xml)
Parámetro | Descripción | Valores posibles | Ejemplo |
message | Contiene un único mensaje. La sección data puede contener muchos mensajes. El número de mensajes en los datos del mensaje es menor o igual al valor del parámetro limit. | <message> <messageid>ERFAV23D</messageid> <originator>06301234567</originator> <recipient>06201112222</recipient> <messagetype>SMS:TEXT</messagetype> <messagedata>Hola mundo</messagedata> <senttime>2028-01-16 10:04:00</senttime> <receivedtime>2028-01-18 20:58:04</receivedtime> </message> |
|
message.messageid | Contiene una referencia de mensaje que puede usarse para rastrear el mensaje en la pasarela SMS. Esta referencia de mensaje también se usa para identificar informes de entregado a la red y entregado al teléfono o para consultar información sobre el mensaje. | valor de cadena, longitud máxima de 16 caracteres | <messageid>ERFAV23D</messageid> |
message.originator | Contiene el número de teléfono del remitente. Este es el número de teléfono del teléfono móvil que envió el mensaje. | valor de cadena, longitud máxima de 16 caracteres | <recipient>06301234567</recipient> |
message.recipient | Contiene la dirección del destinatario. Este es el número de teléfono que se utilizó para enviar el mensaje. | valor de cadena, longitud máxima de 16 caracteres | <recipient>06201112222</recipient> |
message.messagetype | Contiene el identificador de tipo de mensaje especificado en la Especificación de Tipo de Mensaje Móvil. En la mayoría de los casos será SMS:TEXT. | valor de cadena, longitud máxima de 1024 caracteres | <recipient>SMS:TEXT</recipient> |
message.messagedata | Contiene los datos del mensaje. Para mensajes de texto, este es el texto del mensaje SMS. Para otros tipos de mensajes, es una estructura XML especificada en la Especificación de Tipo de Mensaje Móvil. Los datos del mensaje están codificados como UTF8. | valor de cadena | <messagedata>Hola mundo</messagedata> |
message.senttime | Contiene la marca de tiempo que indica cuándo se envió el mensaje desde el teléfono del remitente. | Valor de fecha y hora en el siguiente formato: AAAA-MM-DD hh:mm:ss | <senttime>2028-01-16 10:04:00</senttime> |
message.receivedtime | Contiene la marca de tiempo que indica cuándo se recibió el mensaje por la pasarela SMS. | Valor de fecha y hora en el siguiente formato: AAAA-MM-DD hh:mm:ss | <senttime>2028-01-18 20:58:04</senttime> |
Resumen
En este artículo, encontraste toda la información necesaria para usar la acción 'receivemessage' con nuestra API HTTP SMS.
Con esta solución, puedes aprovechar los beneficios del sondeo HTTP para recibir los mensajes de texto entrantes. Hicimos todo lo posible para que sea sencillo y guiarte a través de todos los detalles de la manera más clara posible. Si ya has completado los pasos, has visto las ventajas de usar nuestra API HTTP SMS. Si aún no has comenzado a trabajar en completar tu sistema SMS usando la API, no pierdas más tiempo. ¡Empieza ahora!
Si deseas conocer más información útil sobre las ventajas de otras soluciones SMS similares, por favor abre la página sobre enviar mensajes con el mismo sistema.
Espero que esta página sea útil para todos los lectores y especialmente para los principiantes.
More information
- Crear una cuenta de usuario de API HTTP SMS
- Compatibilidad
- Enviar y recibir SMS a través de la API HTTP
- Ejemplo de envío de SMS con HTTP SMS API
- Ejemplo de recepción de SMS con HTTP SMS API
- Codificador de url para HTTP SMS API
- Top 10 de API de SMS para programadores
- Cómo enviar SMS sobre HTTPS
- Trabajos de SMS por lotes programados