Share via


Ajouter la reconnaissance vocale aux messages avec l’API Bot Connector

Si vous créez un bot pour un canal à extension vocale, vous pouvez créer des messages qui spécifient le texte à prononcer par votre bot. Vous pouvez également tenter d’influencer l’état du microphone du client en spécifiant un conseil de saisie pour indiquer si votre bot accepte, attend ou ignore l’entrée de l’utilisateur.

Vous pouvez configurer votre bot pour permettre aux applications clientes de communiquer avec lui via le canal Direct Line Speech.

Spécifier le texte à énoncer par votre bot

Pour spécifier le texte que doit énoncer votre bot sur un canal où sont activées les fonctionnalités vocales, définissez la propriété speak dans l’objet Activity qui représente votre message. Vous pouvez utiliser la propriété speak, une chaîne de texte brut ou une chaîne au format SSML (Speech Synthesis Markup Language), qui est un langage de balisage XML qui vous permet de gérer diverses caractéristiques de votre bot, telles que la voix, le débit, le volume, la prononciation, le ton, etc. Si le canal ne prend pas en charge, le message est remis sous forme de texte.

La requête suivante envoie un message qui spécifie le texte à afficher et le texte à énoncer, et indique que le bot attend l’entrée utilisateur. Elle spécifie la propriété à l’aide speak du format SSML pour indiquer que le mot « sure » doit être prononcé avec une accentuation modérée. Dans cet exemple de requête, Direct Line représente l’URI de base. L’URI de base des requêtes émises par votre bot peut être différent. Pour plus d’informations sur la définition de l’URI de base, voir Informations de référence sur l’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"
}

Conseils de saisie

Lorsque vous envoyez un message sur un canal à extension vocale, vous pouvez exprimer l’état prévu du microphone du client en incluant également un indicateur d’entrée pour indiquer si votre bot accepte, attend ou ignore l’entrée utilisateur. Pour plus d’informations, consultez Ajouter des conseils de saisie aux messages.

Ressources supplémentaires