Adicionar ações sugeridas a mensagens com a API do Bot Connector
As ações sugeridas permitem que o bot apresente botões que o utilizador pode tocar para fornecer entradas. As ações sugeridas aparecem perto do compositor e melhoram a experiência do utilizador ao permitir que o utilizador responda a uma pergunta ou faça uma seleção com um simples toque num botão, em vez de ter de escrever uma resposta com um teclado. Ao contrário dos botões que aparecem em cartões avançados (que permanecem visíveis e acessíveis para o utilizador mesmo depois de serem tocados), os botões que aparecem no painel de ações sugeridas desaparecerão depois de o utilizador efetuar uma seleção. Isto impede o utilizador de tocar em botões obsoletos numa conversação e simplifica o desenvolvimento de bots.
Enviar ações sugeridas
Para adicionar ações sugeridas a uma mensagem, defina a suggestedActions
propriedade do objeto Atividade para especificar a lista de objetos CardAction que representam os botões a serem apresentados ao utilizador.
O pedido seguinte envia uma mensagem que apresenta três ações sugeridas ao utilizador. Neste pedido de exemplo, https://smba.trafficmanager.net/teams
representa o URI base; o URI base para pedidos de que os problemas do bot podem ser diferentes. Para obter detalhes sobre como definir o URI base, veja Referência da 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"
}
Quando o utilizador toca numa das ações sugeridas, o bot receberá uma mensagem do utilizador que contém a value
da ação correspondente.