我在NodeJS中使用LUIS机器人,我使用session.say()
让机器人说话,但没有音频输出。我想说一个像session.say('hi', list.shift())
这样的列表中的电影列表,我知道它很管用,因为聊天中会打印"嗨",但没有音频,我甚至把它放在SSML格式中session.say('hi','<speak version="1.0" xmlns="http://www.w3.org/2001/10/synthesis" xml:lang="en-US">hey</speak>');
你知道为什么我的机器人什么都不说,但还在聊天中打印东西吗?
要在Bot Framework Emulator上使用文本到语音功能,用户必须首先使用模拟器上的麦克风。基本上,只有当用户先与机器人对话时,机器人才会与用户对话。注意,要在模拟器上启用麦克风功能,需要执行以下几个步骤:
- 如果您的机器人程序还没有microsoftAppId和microsoftAppPassword,您将不得不创建一个新的机器人程序或在Azure门户上注册您的机器人。请注意,如果您选择注册您的机器人程序,您以后将无法在不创建新机器人程序的情况下部署它
-
一旦您有了microsoftAppId和microsoftAppPassword,就必须创建一个
.env
文件来存储它们。它应该看起来像:MicrosoftAppId=YOUR_MICROSOFT_APP_IDMicrosoftAppPassword=YOURR_MICROSOFT_APP_PASSWORD
此外,请确保已在
app.js
文件中配置了dotenv
。 - 现在,您必须将您的microsoftAppId和microsoftAppPassword添加到bot文件中的开发人员端点,或者通过模拟器添加。要将其添加到模拟器中,右键单击
ENDPOINT
部分下的机器人程序,然后选择Edit Settings
。它应该打开一个提示,您可以在其中填写microsoftAppId和microsoftAppPassword
完成以上所有步骤后,运行您的机器人并在模拟器中连接到它。你应该能够使用麦克风与你的机器人对话,机器人应该通过说一些文本来回应。希望这能有所帮助。