Добавление предлагаемых действий в сообщения с помощью API Bot Connector

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

Отправка предлагаемых действий

Чтобы добавить предлагаемые действия к сообщению, задайте свойство suggestedActions для объекта Действие, чтобы указать список объектов CardAction, представляющих кнопки, которые будут показаны пользователю.

Следующий запрос отправляет пользователю сообщение, которое предлагает три действия. В этом примере запрос https://smba.trafficmanager.net/teams представляет базовый URI. Базовый URI для запросов, отправляемых вашим ботом, может отличаться. Дополнительные сведения о настройке базового URI см. в статье Справочник по API.

POST https://smba.trafficmanager.net/teams/v3/conversations/abcd1234/activities/5d5cdc723
Authorization: Bearer ACCESS_TOKEN
Content-Type: application/json
{
    "type": "message",
    "from": {
        "id": "12345678",
        "name": "sender's name"
    },
    "conversation": {
        "id": "abcd1234",
        "name": "conversation's name"
   },
   "recipient": {
        "id": "1234abcd",
        "name": "recipient's name"
    },
    "text": "I have colors in mind, but need your help to choose the best one.",
    "inputHint": "expectingInput",
    "suggestedActions": {
        "actions": [
            {
                "type": "imBack",
                "title": "Blue",
                "value": "Blue"
            },
            {
                "type": "imBack",
                "title": "Red",
                "value": "Red"
            },
            {
                "type": "imBack",
                "title": "Green",
                "value": "Green"
            }
        ]
    },
    "replyToId": "5d5cdc723"
}

Когда пользователь выбирает одно из предложенных действий, бот получает сообщение от пользователя, которое содержит значение value соответствующего действия.

Дополнительные ресурсы