Recepción de Mensajes Whatsapp con Twilio Webhooks
Twilio utiliza webhooks para informarle a tu aplicación cuando se recibe un mensaje. Cuando se produce el evento, Twilio realiza una solicitud HTTP sincrónica (generalmente una POST o una GET) a la URL configurada al telefono, la solicitud de Twilio incluye detalles del evento, descritos en la tabla Parametros de Solicitud. La solicitud HTTP se realiza como un navegador web normal, en el formato application x-www- form-urlencoded. Cuando Twilio recibe un mensaje para uno de sus números, espera recibir TwiML en respuesta. Twilio envía los siguientes parámetros con su solicitud como parámetros POST o parámetros de consulta URL, según el método HTTP que haya configurado:
Parámetros de solicitud
PARÁMETRO | DESCRIPCIÓN —|— MessageSid | Un identificador único de 34 caracteres para el mensaje. Puede usarse para recuperar más tarde este mensaje de la API REST. SmsSid | Mismo valor que MessageSid . En desuso e incluido por compatibilidad con versiones anteriores. AccountSid | La identificación de 34 caracteres de la cuenta a la que está asociado este mensaje. MessagingServiceSid | La identificación de 34 caracteres del servicio de mensajería asociado con el mensaje. From |El número de teléfono o la dirección del canal que envió este mensaje. To | El número de teléfono o la dirección del canal del destinatario. Body | El cuerpo del texto del mensaje. Hasta 1600 caracteres de largo. NumMedia | El número de elementos multimedia asociados con su mensaje. Twilio también envía los siguientes parámetros cuando hay medios, como imágenes, asociados con el mensaje:
PARÁMETRO | DESCRIPCIÓN |
---|---|
MediaContentType {N} | Los ContentTypes para los medios almacenados en MediaUrl {N}. El orden de MediaContentType {N} coincide con el orden de MediaUrl {N}. Si más de un elemento de los medios de comunicación se indica mediante NumMedia que MediaContentType {N} se utilizarán, donde N es el índice de base cero de los medios de comunicación (por ejemplo MediaContentType0) |
MediaUrl {N} | Una URL que hace referencia al contenido de los medios recibidos en el Mensaje. Si más de un elemento de los medios de comunicación se indica mediante NumMedia que mediaUrl será utilizado {N}, donde N es el índice de base cero de los medios de comunicación (por ejemplo MediaUrl0) |
Cómo funciona el intérprete TwiML de Twilio
Cuando tu aplicación responde a una solicitud de Twilio con XML, Twilio ejecuta el documento a través del intérprete TwiML. El lenguaje TwiML consiste en : el elemento raíz Response, “verbos” y “sustantivos”.
Solo hay un verbo de mensaje TwiML básico y un verbo secundario, con documentación detallada sobre cada uno. El verbo central es: