Existen varios tipos de contenido en bruto (no estructurado) que puedes enviar a tus usuarios.
Texto
{
type: "TEXT",
text: "¡Hola Mundo!"
}
Copiar
Propiedad | Descripción | Obligatorio |
---|
type | TEXT | S |
text | Cadena; limitado a 2.000 caracteres | S |
Imagen
Propiedad | Descripción | Obligatorio |
---|
type | IMAGE | S |
url | URL del archivo de imagen | S |
attachment_id | Cadena; ID de la imagen que subiste | N |
- La imagen debe estar en un formato válido de archivo de imagen, incluyendo
.jpg
, .jpeg
, .png
, .gif
, .tiff
y .bmp
- El tamaño máximo del archivo es 2MB
- Puedes enviar botones de Respuesta rápida junto con una imagen
Audio
Propiedad | Descripción | Obligatorio |
---|
type | AUDIO | S |
url | URL del archivo de audio | S |
attachment_id | Cadena; ID del audio que subiste | N |
- El audio debe estar en un formato válido de archivo de audio, incluyendo
.aac
, .flac
, .m4a
, .m4p
, .mp3
, .wav
y .wma
- Puedes enviar botones de Respuesta rápida junto con un mensaje de audio
Video
Propiedad | Descripción | Obligatorio |
---|
type | VIDEO | S |
url | URL del archivo de video | S |
attachment_id | Cadena; ID del video que subiste | N |
- El video debe estar en un formato válido de archivo de video, incluyendo
.mkv
, .gif
, .avi
, .wmv
, .rmvb
, .mp4
, .m4v
, .mpg
, .mpeg
y .3gp
- El tamaño máximo del archivo es 25MB
- Puedes enviar botones de Respuesta rápida junto con un video
Archivo
Propiedad | Descripción | Obligatorio |
---|
type | FILE | S |
url | URL del archivo adjunto | S |
attachment_id | Cadena; ID del archivo que subiste | N |
- El archivo debe estar en un formato válido, incluyendo
.pdf
- El tamaño máximo del archivo es 25MB
- Puedes enviar botones de Respuesta rápida junto con un archivo
Carrusel
El carrusel es una fila horizontal desplazable de elementos, cada uno compuesto por un archivo adjunto de imagen, descripción corta y botones para solicitar una acción a los usuarios.
{
type: "CAROUSEL",
carousel: [{
title: "Camiseta clásica",
subtitle: "Gris medio\n$29.99",
image_url: "http://img.url",
default_action: {
type: "web_url",
url: "https://zuckstees.com"
},
buttons: [{
type: "web_url",
url: "https://sanuker.com",
title: "Ver detalles"
}, {
type: "postback",
title: "Comprar ahora",
payload: "UN_PAYLOAD_LARGO_AQUÍ"
}, {
type: "phone_number",
title: "algún título 3",
payload: "NÚMERO_DE_TELÉFONO"
}]
}],
image_aspect_ratio: "square"
}
Copiar
Objeto respuesta
Propiedad | Descripción | Obligatorio |
---|
type | CAROUSEL | S |
carousel | Array de elementos del carrusel; máximo de 10 elementos | S |
image_aspect_ratio | Configura "horizontal" (1.91:1) o "square" (1:1); por defecto es "horizontal" | N |
Objeto carousel
Propiedad | Descripción | Obligatorio |
---|
title | Cadena; limitado a 80 caracteres | S |
subtitle | Cadena; limitado a 80 caracteres | N |
image_url | URL de la imagen mostrada | N |
default_action | URL del sitio web por defecto cuando el usuario haga clic en la imagen | N |
buttons | Array de botones; máximo 3 botones que aparecen como llamados a la acción | N |
- Puedes enviar botones de Respuesta rápida junto con un carrusel
- No necesariamente debes incluir botones en un carrusel si no se desea un llamado a la acción
Botones
{
type: "BUTTON",
text: "¿En qué puedo ayudar?",
buttons: [{
type: "web_url",
url: "https://sanuker.com",
title: "Ver estado del pedido"
}, {
type: "phone_number",
title: "Llámanos",
payload: "NÚMERO_DE_TELÉFONO"
}, {
type: "postback",
title: "algún título 2",
payload: "UN_PAYLOAD_LARGO_AQUÍ"
}]
}
Copiar
Propiedad | Descripción | Obligatorio |
---|
type | BUTTON | S |
text | Cadena; limitado a 640 caracteres | S |
buttons | Array de botones; máximo 3 botones que aparecen como llamados a la acción | S |
Botón URL
El botón URL se puede usar para abrir una página web en el navegador integrado de la aplicación. Este botón se puede usar con la plantilla de Botones, Carrusel y Lista. La vista web puede mostrarse de tres formas diferentes: compacta, alta o completa.
{
type: "web_url",
title: "algún título",
url: "https://sanuker.com",
webview_height_ratio: "tall",
messenger_extensions: true,
fallback_url: "https://sanuker.com",
webview_share_button: "hide",
urlTracking: false,
}
Copiar
Propiedad | Descripción | Obligatorio |
---|
type | web_url | S |
title | Cadena; limitado a 20 caracteres | S |
url | URL de destino; debe ser HTTPS si messenger_extensions es "true" | S |
webview_height_ratio | Altura de la ventana webview; valores: "compact", "tall" o "full"; por defecto es "full" | N |
fallback_url | URL a usar en clientes que no soportan Messenger Extensions; solo se usa si messenger_extensions es "true"; por defecto es url si no se especifica | N |
webview_share_button | Configura "hide" o sin configurar | N |
urlTracking | Por defecto es "true" | N |
La analítica para URL puede activarse al crear el botón URL en la respuesta.
Una vez que un usuario haga clic en el botón URL, se registrará y se mostrará en el panel de analíticas.
Botón de postback
El botón de postback ayuda a invocar una acción en tu chatbot. Puedes asignar un payload al botón.
{
type: "postback",
title: "algún título",
payload: "algún payload",
}
Copiar
Propiedad | Descripción | Obligatorio |
---|
type | postback | S |
title | Cadena; limitado a 20 caracteres | S |
payload | Payload definido por el usuario triggers; limitado a 1.000 caracteres | S |
Botón de llamada
El botón de llamada se puede usar para iniciar una llamada telefónica directamente.
{
type: "phone_number",
title: "Llámanos",
payload: "+85281930208"
}
Copiar
Propiedad | Descripción | Obligatorio |
---|
type | phone_number | S |
title | Cadena; limitado a 20 caracteres | S |
payload | Formato debe tener prefijo "+" seguido del código país, código de área y número local sin espacios | S |
Botón de inicio de sesión
Botón de inicio de sesión
El botón de inicio de sesión puede usarse para vincular una cuenta de usuario de un tercero a Facebook Messenger.
Propiedad | Descripción | Obligatorio |
---|
type | account_link | S |
url | URL de destino; debe ser HTTPS | S |
Respuesta rápida
La respuesta rápida ofrece una forma diferente de presentar botones en un mensaje. Contiene texto y una imagen opcional.
La única diferencia entre Respuesta rápida y Botón es que Respuesta rápida solo aparece una vez y desaparece cuando se hace clic, mientras que el Botón permanece en el mensaje incluso después de hacer clic. Esto previene el escenario donde los usuarios podrían tocar botones de Respuesta rápida antiguos adjuntos a mensajes anteriores en la conversación.
Respuestas rápidas de Facebook
{
type: "QUICK_REPLIES",
text: "algún texto",
quickReplies: [{
content_type: "text",
title: "Rojo",
payload: "PAYLOAD_STRING",
image_url: "http://red.img.url"
}, {
content_type: "text",
title: "Verde",
payload: "PAYLOAD_STRING",
image_url: "http://green.img.url"
}, {
content_type: "text"
}]
}
Copiar
Objeto respuesta
Propiedad | Descripción | Obligatorio |
---|
type | QUICK_REPLIES | S |
text | Cadena; limitado a 2.000 caracteres | S |
quickReplies | Array de botones de respuesta rápida; máximo 13 botones | S |
Objeto quickReplies
Propiedad | Descripción | Obligatorio |
---|
content_type | Configura "text" , "user_phone_number" o "user_email" | S |
title | Cadena; leyenda del botón; limitado a 20 caracteres | Solo si content_type es "text" |
image_url | URL de imagen para respuesta rápida de texto | N |
payload | Payload definido por el usuario trigger; limitado a 1.000 caracteres | Solo si content_type es "text" |
- La imagen para image_url debe ser al menos 24x24 y se recortará y redimensionará.
- Si el usuario no tiene teléfono o correo electrónico en el perfil, los botones de respuesta rápida
"user_phone_number"
y "user_email"
no se mostrarán.
Medios
Los medios son similares a un carrusel sin título ni subtítulo, pero también pueden mostrar videos.
{
type: "MEDIA",
media_type: "image",
attachment_id: "attachmentId",
buttons: [{
type: "postback",
title: "¡Muéstrame más!",
payload: "UN_PAYLOAD_LARGO_AQUÍ"
}]
}
Copiar
Propiedad | Descripción | Obligatorio |
---|
type | MEDIA | S |
media_type | Configura "image" o "video" | S |
attachment_id | Cadena; ID del archivo multimedia que subiste | S |
buttons | Array de botones; máximo 3 botones que aparecen como llamados a la acción | N |
nota
- Puedes enviar botones de Respuesta rápida junto con una plantilla de medios
Respuesta pública
Respuesta pública se refiere a la respuesta de comentario a los comentarios de usuarios en publicaciones de Facebook.
Respuesta pública de Facebook
{
type: "PUBLIC_REPLY",
text: "algún texto",
attachment_id: "attachmentId",
attachment_url: "https://img.url"
}
Copiar
Propiedad | Descripción | Obligatorio |
---|
type | PUBLIC_REPLY | Se debe establecer texto, attachment_id o attachment_url |
text | Cadena; limitado a 5.000 caracteres | Se debe establecer texto, attachment_id o attachment_url |
attachment_id | Cadena; ID del archivo multimedia que subiste | Se debe establecer texto, attachment_id o attachment_url |
attachment_url | URL del archivo multimedia que quieres publicar | Se debe establecer texto, attachment_id o attachment_url |
Tipos de mensajería
Meta soporta 3 tipos de mensajería para asegurar que el mensaje enviado cumple con las políticas de mensajería y las preferencias del destinatario.
Consulta aquí para más detalles sobre los tipos de mensajería.
Respuesta
{
"type": "TEXT",
"messagingMeta": {
"messaging_type": "RESPONSE"
},
"text": "Texto de prueba"
}
Copiar
Actualizaciones
{
"type": "TEXT",
"messagingMeta": {
"messaging_type": "UPDATE"
},
"text": "Texto de prueba"
}
Copiar
Etiqueta de mensaje
{
"type": "TEXT",
"messagingMeta": {
"tag": "ACCOUNT_UPDATE",
"messaging_type": "MESSAGE_TAG"
},
"text": "Texto de prueba"
}
Copiar
Propiedad | Descripción |
---|
tag | Debe ser uno de estos: ACCOUNT_UPDATE , CONFIRMED_EVENT_UPDATE , CUSTOMER_FEEDBACK o HUMAN_AGENT |