Nuestra solicitud a tu URL de webhook
Cuando llega un mensaje entrante a tu número de teléfono de Twilio, Twilio envía una solicitud a tu aplicación web mediante una solicitud de webhook. Esta solicitud contiene información acerca del mensaje entrante, como su remitente y cualquier medio adjunto. La aplicación puede almacenar estos datos o utilizarlos para personalizar una respuesta, por ejemplo.
Twilio hace solicitudes de HTTP a tu aplicación, al igual que un navegador web normal, en el formato application/x-www-form-urlencoded
. Cuando se incluyen parámetros y valores en sus peticiones, Twilio envía datos a tu aplicación sobre los que puedes actuar antes de responder.
Puedes configurar las URL y los métodos HTTP que Twilio utiliza para realizar sus peticiones a través del portal de tu cuenta en la Consola de Twilio o utilizando la API REST.
Ten en cuenta que Twilio no puede almacenar POST en caché. Si deseas que Twilio almacene en caché las páginas TwiML estáticas, configura Twilio para que haga peticiones a tu aplicación usando GET.
Parámetros en la solicitud de Twilio a tu aplicación
Cuando Twilio recibe un mensaje en uno de tus números de Twilio o un número habilitado para WhatsApp, hace una petición HTTP sincrónica a la URL del mensaje configurada para ese número o al servicio de mensajería y espera recibir TwiML como respuesta.
Twilio envía los siguientes parámetros con su solicitud como parámetros POST o de consulta URL, dependiendo del método HTTP que hayas configurado:
Parámetros de solicitud
PARÁMETRO | DESCRIPCIÓN | EJEMPLO |
---|---|---|
MessageSid | Identificador único de 34 caracteres para el mensaje. Se puede utilizar para recuperar más adelante este mensaje de la API REST. | SMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
SmsSid | Mismo valor que MessageSid. Obsoleto e incluido por compatibilidad con versiones anteriores. | SMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
AccountSid | ID de 34 caracteres de la cuenta a la que está asociado este mensaje. | ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
MessagingServiceSid (SID del servicio de mensajería) | ID de 34 caracteres del servicio de mensajería asociado al mensaje. | MGXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
De | El número de teléfono o la dirección del canal que envió este mensaje. | +14017122661 |
To (Para) | El número de teléfono o la dirección del canal del destinatario. | +15558675310 |
Body (Texto) | El cuerpo del texto del mensaje. Hasta 1600 caracteres de longitud. | ¡"Ahoy! We can't wait to see what your build." |
NumMedia | Número de elementos de medios asociados con el mensaje | 0 |
ReferralNumMedia | Número de elementos de medios asociados a un anuncio de "Click to WhatsApp". | 0 |
Parámetros relacionados con el medio
Twilio también envía los siguientes parámetros cuando hay medios, como imágenes, asociados al mensaje entrante:
PARÁMETRO | DESCRIPCIÓN | EJEMPLO |
---|---|---|
MediaContentType{N} | Los ContentTypes para los medios almacenados en MediaUrl{N}. El orden de MediaContentType{N} coincide con el orden de MediaUrl{N}. Si NumMedia indica más de un elemento de medios, se utilizará MediaContentType{N}, en el que N es el índice basado en cero del medio (por ejemplo, MediaContentType0 ) |
imagen o jpeg |
MediaUrl{N} | Una URL que hace referencia al contenido de los medios recibidos en el mensaje. Si NumMedia indica más de un elemento de medios, se utilizará MediaUrl{N}, donde N es el índice basado en cero del medio (por ejemplo, MediaUrl0 ) |
|
Parámetros relacionados con los datos geográficos
Twilio también intenta buscar datos geográficos basados en los números de teléfono “From” (Origen) y “To” (Destino). Twilio envía los siguientes parámetros, si están disponibles:
PARÁMETRO | DESCRIPCIÓN | EJEMPLO |
---|---|---|
FromCity | La ciudad del remitente | SAN FRANCISCO |
FromState | Estado o provincia del remitente. | CA |
FromZip | El código postal del remitente llamado. | 94103 |
FromCountry | País del remitente llamado. | EE. UU. |
ToCity | Ciudad del destinatario. | SAUSALITO |
ToState | Estado o provincia del destinatario. | CA |
ToZip | Código postal del destinatario. | 94965 |
ToCountry | País del destinatario. | EE. UU. |
Parámetros específicos de WhatsApp
Para mensajes de WhatsApp, Twilio envía los siguientes parámetros adicionales:
PARÁMETRO | DESCRIPCIÓN | EJEMPLO |
ProfileName | Nombre del perfil de WhatsApp del remitente | Perspective Coffee |
WaId | El ID de WhatsApp del remitente (por lo general, un número de teléfono) | 14017122661 |
Se reenvía | true si el mensaje se ha reenviado una vez |
verdadero |
FrequentlyForwarded | true si el mensaje se ha reenviado con frecuencia |
verdadero |
ButtonText | Texto de un botón de respuesta rápida | Cancelar cita |
Para los mensajes de WhatsApp entrantes que comparten una ubicación, Twilio incluye los siguientes parámetros:
PARÁMETRO | DESCRIPCIÓN | EJEMPLO |
Latitud | Valor de la latitud de la ubicación que se envía | 51.51322977399644 |
Longitud | Valor de la longitud de la ubicación que se envía | -0.2197976373036567 |
Dirección |
Dirección de la ubicación que se envía |
187 Freston Road, London, Greater London W10 6TH |
Etiqueta |
Etiqueta o nombre de la ubicación que se envía |
The Harrow Club |
Para los mensajes de WhatsApp entrantes que se originan en un anuncio de "Click-to-WhatsApp", Twilio incluye los siguientes parámetros:
PARÁMETRO | DESCRIPCIÓN | EJEMPLO |
ReferralBody | Cuerpo del texto del anuncio | Para obtener más información sobre nuestra empresa, envíanos un mensaje en WhatsApp |
ReferralHeadline | Texto del encabezado del anuncio | Envíanos un mensaje |
ReferralSourceId | ID de Meta o WhatsApp del anuncio | 118588094077142 |
ReferralSourceType | Tipo de anuncio | publicación |
ReferralSourceUrl | Una URL que hace referencia al contenido de los medios que se muestran en el anuncio cuando el usuario hace clic para enviar un mensaje | https://fb.me/xyz123 |
ReferralMediaId | El ID de Meta o WhatsApp del medio publicitario que se muestra cuando los usuarios hacen clic para enviar un mensaje; no coincidirá con el SID de Twili Media | e420b130-f934-4acf-a5e6-f964f776bxyz |
ReferralMediaContentType | ContentType de medios del medio de anuncio que se muestra al usuario cuando este hace clic para enviar un mensaje | imagen o jpeg |
ReferralMediaUrl | Una URL que hace referencia a los medios que se muestran al usuario en el anuncio | https://api.twilio.com/2010-04-01 /Accounts/ACXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX /Messages/MMXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX/ Media/MEXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
Parámetros de devolución de llamada de estado
Para las devoluciones de llamada de estado, Twilio también envía parámetros relacionados con el estado:
PARÁMETRO | DESCRIPCIÓN | EJEMPLO |
---|---|---|
MessageStatus | El estado del mensaje. Puede ser: accepted , queued , sending , sent , failed , delivered , undelivered , receiving , received , or read (solo en WhatsApp). Para obtener más información, consulta las descripciones detalladas. |
entregado |
SmsStatus | Igual que el valor MessageStatus. Obsoleto e incluido por compatibilidad con versiones anteriores. | entregado |
Devolución de llamada de ErrorCode en mensajes de WhatsApp incorrectos
Si falla la entrega del mensaje con WhatsApp, los parámetros SmsStatus
y MessageStatus
leerán undelivered
y Twilio devolverá el Error 63016 como ErrorCode=63016
en la respuesta del webhook.
¿Necesitas ayuda?
Todos la necesitamos a veces; la programación es difícil. Obtén ayuda ahora de nuestro equipo de soporte, o recurre a la sabiduría de la multitud visitando Stack Overflow Collective de Twilio o navegando por la etiqueta de Twilio en Stack Overflow.