Медиашаблон позволяет отправлять изображения, GIF и видео в качестве структурированных сообщений, в которые можно добавить кнопку. Видео и анимированные GIF, отправленные в медиашаблоне, можно воспроизвести в переписке.
Медиашаблон можно отправить черезAPI Send, а также из веб-представления Messenger с помощью функции beginShareFlow()
Messenger Extension SDK.
В данный момент медиашаблоны позволяют отправлять только изображения и видео. Аудиофайлы пока не поддерживаются.
Чтобы отправить изображение, отправьте запрос POST
в API Send с указанным ниже свойством payload
в тексте запроса, где attachment_id
— это идентификатор, генерированный из API Attachment Upload. Для запросов со свойством attachment_id
поддерживаются изображения и видео.
Все свойства запроса см. в справке по медиашаблонам.
ID вложения не поддерживаются для медиаданных с URL Facebook. Эти файлы уже кэшированы и должны быть вложены в медиашаблон вместе со своим URL Facebook.
curl -X POST -H "Content-Type: application/json" -d '{
"recipient":{
"id":"<PSID>"
},
"message":{
"attachment": {
"type": "template",
"payload": {
"template_type": "media",
"elements": [
{
"media_type": "<image|video>",
"attachment_id": "<ATTACHMENT_ID>"
}
]
}
}
}
}' "https://graph.facebook.com/v2.6/me/messages?access_token=<PAGE_ACCESS_TOKEN>"
Медиашаблон позволяет отправлять фото и видео, загруженные на Facebook. Для этого отправьте запрос POST
на эндпойнт /messages
, а в свойстве url
запроса укажите URL Facebook:
Все свойства запроса см. в справке по медиашаблонам.
Медиашаблон не поддерживает никакие внешние URL — только URL Facebook. Чтобы отправить изображение или видео с внешним URL, загрузите его с помощью API Attachment Upload и получите attachment_id
.
curl -X POST -H "Content-Type: application/json" -d '{
"recipient":{
"id":"<PSID>"
},
"message":{
"attachment": {
"type": "template",
"payload": {
"template_type": "media",
"elements": [
{
"media_type": "<image|video>",
"url": "<FACEBOOK_URL>"
}
]
}
}
}
}' "https://graph.facebook.com/v2.6/me/messages?access_token=<PAGE_ACCESS_TOKEN>"
Чтобы настроить URL Facebook для изображения или видео, следуйте инструкциям ниже:
URL Facebook должен иметь следующий формат:
Тип медиаданных | Источник медиаданных | Формат URL |
---|---|---|
Видео | Страница Facebook |
|
Видео | Аккаунт Facebook |
|
Изображение | Страница Facebook |
|
Изображение | Аккаунт Facebook |
|
При необходимости в медиашаблон также можно добавить кнопки. Количество и типы поддерживаемых кнопок зависят от способа отправки медиашаблона — с помощью beginShareFlow()
Messenger Extensions SDK или API Send:
Send API
: можно включить до 3 кнопок любого типа.beginShareFlow()
: можно вложить только 1 кнопку с URL.Чтобы добавить в медиашаблон кнопку, добавьте массив buttons
в определение шаблона в тексте запроса.
Подробнее о доступных кнопках см. в разделе Кнопки.
"elements": [
{
"media_type": "image",
"url": "<MEDIA_URL>",
"buttons": [
{
"type": "web_url",
"url": "<WEB_URL>",
"title": "View Website",
}
]
}
]
В ответ на успешный запрос платформа Messenger возвращает recipient_id
и message_id
отправленного сообщения:
{ "recipient_id": "1254477777772919", "message_id": "AG5Hz2Uq7tuwNEhXfYYKj8mJEM_QPpz5jdCK48PnKAjSdjfipqxqMvK8ma6AC8fplwlqLP_5cgXIbu7I3rBN0P" }