Справка по persistent_menu

Вы можете настроить постоянное меню для бота, чтобы пользователи могли легко обращаться к различным функциям в переписке.

Постоянное меню всегда остается доступным для пользователя. Оно должно содержать действия верхнего уровня, которые пользователи могут выполнить в любой момент. Благодаря постоянному меню как новые, так и старые пользователи получают четкое представление о возможностях вашего бота. Если пользователь отсутствовал в переписке и вернулся, меню появится автоматически. Описание этих настроек см. в справке по API Messenger Profile

Постоянное меню также можно настраивать и изменять на уровне пользователя. Подробности см. в статье о меню на уровне пользователя.

Требования

Чтобы использовать постоянное меню:

  • настройте кнопку Начать;
  • убедитесь, что вам назначена роль администратора для Страницы, связанной с ботом.

Формат persistent_menu

Пример постоянного меню

{
    "persistent_menu": [
        {
            "locale": "default",
            "composer_input_disabled": false,
            "call_to_actions": [
                {
                    "type": "postback",
                    "title": "Talk to an agent",
                    "payload": "CARE_HELP"
                },
                {
                    "type": "postback",
                    "title": "Outfit suggestions",
                    "payload": "CURATION"
                },
                {
                    "type": "web_url",
                    "title": "Shop now",
                    "url": "https://www.originalcoastclothing.com/",
                    "webview_height_ratio": "full"
                }
            ]
        }
    ]
}

Свойства

Свойство Тип Описание

locale

Строка

Массив объектов, определяющих постоянное меню для разных регионов. Пользователю будет отображаться меню со свойством locale, совпадающим с его регионом.


По крайней мере один объект в массиве persistent_menu должен иметь значение "locale": "default". Такое меню будет использоваться, если ни в одном из объектов нет свойства locale, совпадающего с регионом пользователя.


См. список поддерживаемых регионов.

composer_input_disabled

Логическое значение

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


Значение по умолчанию — false.

disabled_surfaces

Массив

Массив имен элементов интерфейса, которые отключены в постоянном меню. В настоящий момент поддерживается только customer_chat_plugin.

call_to_actions

Массив<menu_item>

Массив элементов верхнего уровня для постоянного меню. Можно указать не более 3 элементов.


Обязательно, если задано значение "composer_input_disabled": true.

Свойство Тип Описание

type

Строка

Тип элемента меню. Поддерживаемые значения:

title

Строка

Отображаемое название элемента меню. Максимальное количество символов — 30.

url

Строка

URL, который открывается при нажатии кнопки. Обязательно, если задан тип web_url.

payload

Строка

Данные, которые будут возвращены через в Webhooks в событии messaging_postbacks. Обязательно, если задан тип postback. Максимальное количество символов — 1000.

webview_height_ratio

Строка

Необязательно. Высота веб-просмотра. Допустимые значения: compact, tall, full.

messenger_extensions

Логическое значение

Необязательно. Если используется тип элемента web_url и в веб-просмотре используется SDK расширений Messenger, свойство должно иметь значение true.

fallback_url

Строка

Необязательно. URL, который открывается в веб-просмотре для клиентов, не поддерживающих SDK расширений Messenger. Если он не задан, в качестве резервного будет использоваться url. Его можно указать, только если установлено значение "messenger_extensions": true.

webview_share_button

Строка

Необязательно. Значение hide позволяет отключить кнопку "Поделиться" в веб-просмотре (для конфиденциальной информации).

Отключение постоянного меню

В некоторых случаях постоянное меню бота в плагине чата требуется отключить. Для этого при настройке постоянного меню добавьте в код элемент "disabled_surfaces": ["CUSTOMER_CHAT_PLUGIN"]:

Пример полезных данных API Messenger Profile

{
  "persistent_menu":[
    {
      "locale":"default",
      "disabled_surfaces": ["CUSTOMER_CHAT_PLUGIN"],
      "composer_input_disabled": false,      
      "call_to_actions":[
        {
          "title":"My Account",
          "type":"postback",
          "payload":"PAYBILL_PAYLOAD"
        }
      ]
    }
  ]
}

Ограничение количества обращений

Количество обращений к API Messenger Profile ограничено десятью вызовами за каждые 10 минут (из расчета на Страницу).

Примечание. Вызовы к меню на уровне пользователя ограничены: 10 вызовов API на пользователя в течение 10 минут. Это ограничение действует для каждой страницы.