Bot Connector API를 사용하여 메시지에 제안된 작업 추가

제안된 동작은 사용자가 입력하기 위해 탭할 수 있는 단추를 봇이 표시하도록 합니다. 제안된 동작은 작성기 근처에 표시되며, 사용자가 키보드를 사용하여 응답을 입력하는 대신 질문에 대답하거나 간단히 단추를 탭하여 선택할 수 있도록 하여 사용자 환경을 개선합니다. 제안된 동작 창 내에 표시되는 단추는 서식 있는 카드 내에 표시되는 단추와 달리(탭한 후에도 사용자에게 표시되고 액세스 가능함) 사용자가 선택한 후에 사라집니다. 이렇게 하면 사용자가 대화 내에서 부실 단추를 탭하지 못하게 되며 봇 개발이 간소화됩니다.

제안된 동작 보내기

제안된 동작을 메시지에 추가하려면 Activity 개체의 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를 포함하는 메시지를 사용자로부터 수신합니다.

추가 리소스