Adicionar fala a mensagens com a API do conector de bot

Se você estiver criando um bot para um canal habilitado para fala, poderá construir mensagens que especifiquem o texto a ser falado pelo bot. Você também pode tentar influenciar o estado do microfone do cliente especificando uma dica de entrada para indicar se o seu bot está aceitando, esperando ou ignorando a entrada do usuário.

Você pode configurar seu bot para permitir que aplicativos cliente se comuniquem com ele por meio do canal do Direct Line Speech.

Especifique o texto a ser falado pelo seu bot

Para especificar o texto a ser falado pelo bot em um canal habilitado para fala, defina a propriedade speak no objeto Atividade que representa a mensagem. É possível definir a propriedade speak como uma cadeia de caracteres de texto sem formatação ou uma cadeia de caracteres formatada como SSML (Linguagem de Marcação de Sintetização de Voz), uma linguagem de marcação baseada em XML que permite controlar várias características de fala do bot como voz, velocidade, volume, pronúncia, tom e muito mais. Se o canal não for compatível, a mensagem será entregue como texto.

A solicitação a seguir envia uma mensagem que especifica o texto a ser exibido e o texto a ser falado, e indica que o bot está esperando a entrada do usuário. Ele especifica a propriedade speak usando o formato SSML para indicar que a palavra "certeza" deve ser falada com uma quantidade moderada de ênfase. Nessa solicitação de exemplo, Direct Line representa o URI base; o URI base das solicitações emitidas pelo bot pode ser diferente. Para obter detalhes sobre como definir o URI base, confira Referência de API.

POST https://smba.trafficmanager.net/apis/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": "Are you sure that you want to cancel this transaction?",
    "speak": "<speak version=\"1.0\" xmlns=\"http://www.w3.org/2001/10/synthesis\" xml:lang=\"en-US\">Are you <emphasis level=\"moderate\">sure</emphasis> that you want to cancel this transaction?</speak>",
    "inputHint": "expectingInput",
    "replyToId": "5d5cdc723"
}

Dicas de entrada

Ao enviar uma mensagem em um canal habilitado para fala, você pode expressar o estado pretendido do microfone do cliente, incluindo também uma dica de entrada para indicar se o bot está aceitando, esperando ou ignorando a entrada do usuário. Para obter mais informações, consulte adicionar dicas de entrada mensagens.

Recursos adicionais