WatBot 是一个由 IBM Watson 支持的 ChatBot,在 Android 上运行,并使用 IBM Cloud(一个用于构建、运行和管理应用程序和服务的开放标准云平台)上的 Watson Assistant 服务。
注意:此应用程序使用 Watson Assistant V1 API
克隆存储库并在 Android Studio 中导入代码,
git clone https://github.com/VidyasagarMSC/WatBot.git
查看此博客文章以获取分步和最新说明。
要配置应用程序,您需要获取 Watson Assistant 服务的密码、 URL和工作区 ID
在MainActivity类中找到名为sendMessage()的方法。在您创建的助手服务的管理选项卡上,单击启动工具> 技能 > 单击技能旁边的三个垂直点 > 查看 API 详细信息 > 您可以找到工作区 ID、用户名和密码。如果您希望使用 API Key 直接阅读 TODO,请取消注释代码并将占位符替换为 API Key 值。
您可以在管理选项卡或服务凭据下找到API 密钥和 URL。
Assistant assistantservice = new Assistant("2018-02-16");
//If you like to use USERNAME AND PASSWORD
//Your Username: "apikey", password: "<APIKEY_VALUE>"
assistantservice.setUsernameAndPassword("apikey", "<API_KEY_VALUE>");
//TODO: Uncomment this line if you want to use API KEY
//assistantservice.setApiKey("<API_KEY_VALUE>");
//Set endpoint which is the URL. Default value: https://gateway.watsonplatform.net/assistant/api
assistantservice.setEndPoint("<ASSISTANT_URL>");
InputData input = new InputData.Builder(inputmessage).build();
//WORKSPACES are now SKILLS
MessageOptions options = new MessageOptions.Builder().workspaceId("<WORKSPACE_ID>").input(input).context(context).build();
MessageResponse response = assistantservice.message(options).execute();
assistantservice.setUsernameAndPassword("apikey", "<ASSISTANT_PASSWORD>");
获取工作区 ID:并将其添加到以下代码中,
MessageOptions options = new MessageOptions.Builder("<Workspace_ID>").input(input).context(context).build();
摇篮入口
compile 'com.ibm.watson.developer_cloud:assistant:6.11.0'
在 MainActivity.java 的第 95 行,将密码和 URL 占位符替换为 TTS 服务凭证
textService.setUsernameAndPassword("apikey", "<TEXT_TO_SPEECH_APIKEY>");
textService.setEndPoint("<TEXT_TO_SPEECH_URL>");
现在,当您点击任何消息时,将通过语音 (Voice.EN_US_LISAVOICE) 听到文本。您可以在代码中更改语音格式(第120行0f MainActivity.java)
注意: TTS 所需的 gradle 条目已包含在 build.gradle 文件中
compile 'com.ibm.watson.developer_cloud:text-to-speech:6.11.0'
compile 'com.ibm.watson.developer_cloud:android-sdk:0.5.0'
注意: STT 所需的 gradle 条目已包含在 build.gradle 文件中
compile 'com.ibm.watson.developer_cloud:speech-to-text:6.11.0'
compile 'com.ibm.watson.developer_cloud:android-sdk:0.5.0'
如果您遵循了上述所有说明,您应该可以愉快地与您的 Wat(son)Bot 聊天。
** 请记住,您的机器人将与您的 Watson Assistant 服务对话(意图、实体和对话)。**
演讲者标签
注意:说话者标签功能是测试版功能,适用于美国英语、日语和西班牙语。
发言者标签标识了在多参与者交流中哪些人说了哪些词。 (标记发言者和发言时间有时称为发言者分类。)您可以使用这些信息来开发音频流的逐人转录,例如与呼叫中心的联系。或者,您可以使用它来动画化与对话机器人或头像的交流。为了获得最佳性能,请使用至少一分钟长的音频。
要启用,请单击 Android Studio 底部选项卡上的 TODO 或在 MainActivity.java 文件中搜索 TODO 并取消注释行。您应该在 logcat 中看到输出,如下所示
SPEECHRESULTS: {
"confidence": 0.5,
"final": false,
"from": 1.59,
"speaker": 0,
"to": 1.82
}