Aggiungere il riconoscimento vocale ai messaggi con l'API Bot Connector
Se si sta creando un bot per un canale abilitato per il riconoscimento vocale, è possibile costruire messaggi che specificano il testo da pronunciare dal bot. È anche possibile tentare di influenzare lo stato del microfono del client specificando un hint di input per indicare se il bot accetta, prevede o ignora l'input dell'utente.
Specificare il testo da pronunciare dal bot
Per specificare il testo da pronunciare dal bot in un canale abilitato per il riconoscimento vocale, impostare la proprietà speak
all'interno dell'oggetto attività che rappresenta il messaggio. È possibile impostare la proprietà speak
su una stringa di testo normale o su una stringa formattata come Speech Synthesis Markup Language (SSML), un linguaggio di markup basato su XML che consente di controllare varie caratteristiche del parlato del bot, ad esempio voce, frequenza, volume, pronuncia, passo e altro ancora. Se il canale non supporta, il messaggio viene recapitato come testo.
La richiesta seguente invia un messaggio che specifica il testo da visualizzare e il testo da pronunciare e indica che il bot è previsto l'input dell'utente. Specifica la proprietà speak
utilizzando il formato SSML per indicare che la parola "sicuro" va pronunciata con moderata enfasi. In questa richiesta di esempio, Direct Line rappresenta l'URI di base; l'URI di base per le richieste che il bot emette può essere diverso. Per informazioni dettagliate sull'impostazione dell'URI di base, vedere informazioni di riferimento 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": "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"
}
Suggerimenti di inserimento
Quando si invia un messaggio su un canale abilitato per il riconoscimento vocale, è possibile esprimere lo stato previsto del microfono del client includendo anche un suggerimento di input per indicare se il bot accetta, prevede o ignora l'input dell'utente. Per altre informazioni, vedere Aggiungere suggerimenti di input ai messaggi.