Freigeben über


Hinzufügen von Sprache zu Nachrichten mit der Bot Connector-API

Wenn Sie einen Bot für einen sprachaktivierten Kanal erstellen, können Sie Nachrichten erstellen, die den Text angeben, der von Ihrem Bot gesprochen werden soll. Sie können auch versuchen, den Status des Mikrofons des Clients zu beeinflussen, indem Sie einen Eingabehinweis angeben, um festzulegen, ob Ihr Bot Benutzereingaben akzeptiert, erwartet oder ignoriert.

Sie können Ihren Bot so konfigurieren, dass Clientanwendungen über den Direct Line Speech-Kanal damit kommunizieren können.

Angeben des vom Bot zu sprechenden Texts

Um Text anzugeben, der von Ihrem Bot auf einem sprachaktivierten Kanal gesprochen werden soll, legen Sie die speak-Eigenschaft im Activity-Objekt fest, das Ihre Nachricht darstellt. Sie können die speak-Eigenschaft entweder auf eine Nur-Text-Zeichenfolge oder eine als Speech Synthesis Markup Language (SSML) formatierte Zeichenfolge verwenden. Bei SSML handelt es sich um eine XML-basierte Markupsprache, mit der Sie verschiedene Eigenschaften der Sprache Ihres Bots steuern können, wie z. B. Stimme, Geschwindigkeit, Lautstärke, Aussprache, Tonhöhe und mehr. Wenn der Kanal dies nicht unterstützt, wird die Nachricht als Text übermittelt.

Die folgende Anforderung sendet eine Nachricht, die den anzuzeigenden Text und den zu sprechenden Text festlegt und angibt, dass der Bot Benutzereingaben erwartet. Es gibt die Eigenschaft mit dem speakSSML-Format an, um anzugeben, dass das Wort "sure" mit einer moderaten Betonung gesprochen werden soll. In dieser Beispielanforderung stellt Direct Line den Basis-URI dar. Der Basis-URI für Anforderungen, die Ihr Bot ausgibt, kann ein anderer sein. Weitere Informationen zum Festlegen des Basis-URI finden Sie in der API-Referenz.

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"
}

Eingabehinweise

Wenn Sie eine Nachricht in einem sprachfähigen Kanal senden, können Sie den beabsichtigten Zustand des Mikrofons des Clients ausdrücken, indem Sie auch einen Eingabehinweis einschließen, um anzugeben, ob Ihr Bot Benutzereingaben akzeptiert, erwartet oder ignoriert. Weitere Informationen finden Sie unter Hinzufügen von Eingabehinweisen zu Nachrichten.

Zusätzliche Ressourcen