如何为sdk v4 Bot的消息添加语音

时间:2019-02-01 05:48:31

标签: botframework

如何添加像session.say(.....)这样的功能,该功能适用​​于语音通道,如Cortana,适用于使用v4 sdk构建的漫游器。

这里is good doc for v3 bot

在哪里可以找到适用于v4 bot的类似软件?

2 个答案:

答案 0 :(得分:1)

您包含的链接用于 DirectLine v3,这是 DirectLine 的最新版本。

然而,相信你得到session.say从命令this V3 Doc。不幸的是,它没有V4版本。

但是,大多数消息类型都具有speakssml属性(JS / C#),您可以用来发送将说出的文本。

它的工作方式相同。而不是使用(来自V3文档):

JS v3

var msg = new builder.Message(session)
    .text('This is the text that will be displayed')
    .speak('This is the text that will be spoken.');
session.send(msg).endDialog();

C#v3

Activity msg = activity.CreateReply("This is the text that will be displayed."); 
reply.Speak = "This is the text that will be spoken.";
reply.InputHint = InputHints.AcceptingInput;
await connector.Conversations.ReplyToActivityAsync(reply);

您将使用:

<强> JS V4

var msg = MessageFactory.text({ text: "This is the text that will be displayed", ssml: "This is the text that will be spoken" });
await context.SendActivity(msg);

C#v4

var msg = MessageFactory.Text(text: "This is the text that will be displayed", ssml: "This is the text that will be spoken");
await context.SendActivity(msg);

await行可能会有所不同,具体取决于您在漫游器中的使用位置/使用方式。

请注意,要测试语音,还需要设置一些其他步骤。你可以在这里找到该引用:

最后,这里是a sample bot that uses Cortana and speech。具体地,可以看到它如何使用MessageFactory.text here

答案 1 :(得分:0)

有关为V3或V4机器人添加语音的主题的Cortana文档:https://docs.microsoft.com/en-us/cortana/skills/adding-speech