Быстрые ответы

Быстрые ответы — это возможность добавить в переписку набор кнопок (не больше 13) с названием и необязательным изображением. Они отображаются над полем для публикации. Кроме того, с помощью быстрых ответов можно запросить у человека его геоданные, электронный адрес и номер телефона.


Когда кто-то нажимает на один из быстрых ответов, кнопки исчезают, а в переписке публикуется название выбранной кнопки в виде сообщения. После этого на ваш Webhook будет отправлено событие messages с названием кнопки и необязательными полезными данными.

Полный список свойств запроса см. в Справке по быстрым ответам.

Отправка быстрых ответов

Чтобы можно было отправить быстрый ответ, добавьте массив quick_replies в текстовое сообщение и включите объекты, которые задают до 13 кнопок быстрых ответов.

Поддерживаемые типы быстрых ответов:

curl -X POST -H "Content-Type: application/json" -d '{
  "recipient":{
    "id":"<PSID>"
  },
  "messaging_type": "RESPONSE",
  "message":{
    "text": "Pick a color:",
    "quick_replies":[
      {
        "content_type":"text",
        "title":"Red",
        "payload":"<POSTBACK_PAYLOAD>",
        "image_url":"http://example.com/img/red.png"
      },{
        "content_type":"text",
        "title":"Green",
        "payload":"<POSTBACK_PAYLOAD>",
        "image_url":"http://example.com/img/green.png"
      }
    ]
  }
}' "https://graph.facebook.com/v21.0/me/messages?access_token=<PAGE_ACCESS_TOKEN>"    

Текстовые быстрые ответы

Текстовые быстрые ответы можно также отправлять вместе с необязательным изображением, которое демонстрируется в виде значка рядом с названием. Если content_type быстрого ответа имеет значение text, необходимо заполнить поле title.

Синтаксис

Полный список свойств запроса см. в Справке по быстрым ответам.

{
  "content_type":"text",
  "title":"<BUTTON_TEXT>",
  "image_url":"http://example.com/img/red.png",
  "payload":"<DEVELOPER_DEFINED_PAYLOAD>"
}

Событие Webhook

При нажатии быстрого ответа отправляется текстовое сообщение на ваш Webhook обратного вызова о получении сообщения.

Свойство text события соответствует названию в быстром ответе. Объект message также будет содержать поле quick_reply с данными payload в быстром ответе.

{
  "object": "page",
  "entry": [
    {
      "id": "<PAGE_ID>",
      "time": 1502905976963,
      "messaging": [
        {
          "sender": {
            "id": "1254459154682919"
          },
          "recipient": {
            "id": "682498171943165"
          },
          "timestamp": 1502905976377,
          "message": {
            "quick_reply": {
              "payload": "DEVELOPER_DEFINED_PAYLOAD_FOR_PICKING_GREEN"
            },
            "mid": "m_AG5Hz2Uq7tuwNEhXfYYKj8mJEM_QPpz5jdCK48PnKAjSdjfipqxqMvK8ma6AC8fplwlqLP_5cgXIbu7I3rBN0P",
            "text": "Green"
          }
        }
      ]
    }
  ]
}

Быстрые ответы с номером телефона пользователя

Этот тип быстрых ответов позволяет запросить у пользователя его номер телефона. При отправке быстрого ответа с номером телефона платформа Messenger автоматически вводит в отображаемый быстрый ответ номер телефона из профиля пользователя.

Если в профиле пользователя нет номера телефона, быстрый ответ не отображается.

Бот не получит номер телефона, пока пользователь не нажмет быстрый ответ.

При выборе быстрого ответа информация будет передана один раз. Данное действие не означает предоставления разрешения на доступ к этой информации в дальнейшем.

Синтаксис

{
  "content_type":"user_phone_number"
}

Событие Webhook

Когда пользователь коснется быстрого ответа, номер телефона будет передан в атрибуте payload события Webhook messages.

{
  "object": "page",
  "entry": [
    {
      "id": "

Быстрые ответы с электронным адресом

Этот тип быстрых ответов позволяет запросить у пользователя его электронный адрес. При отправке быстрого ответа с электронным адресом платформа Messenger автоматически вводит в отображаемый быстрый ответ электронный адрес из профиля пользователя.

Если в профиле пользователя нет электронного адреса, быстрый ответ не отображается.

Бот не получит электронный адрес, пока пользователь не нажмет быстрый ответ.

При выборе быстрого ответа информация будет передана один раз. Данное действие не означает предоставления разрешения на доступ к этой информации в дальнейшем.

Синтаксис

{
  "content_type":"user_email"
}

Событие Webhook

Когда пользователь коснется быстрого ответа, электронный адрес будет передан в атрибуте payload события Webhook messages.

{
  "object": "page",
  "entry": [
    {
      "id": "

Рекомендации

Быстрые ответы позволяют побудить людей выполнить следующие действия.

Пишите кратко, поскольку мы сокращаем длинные быстрые ответы.

Не используйте для долгосрочных действий: быстрые ответы исчезают после следующего сообщения.

Поддержка разработчиков