从 IBM Watson Assistant 获取我的聊天机器人中的选项列表
Posted
技术标签:
【中文标题】从 IBM Watson Assistant 获取我的聊天机器人中的选项列表【英文标题】:Getting list of options in my chatbot from IBM Watson Assistant 【发布时间】:2019-11-21 20:07:56 【问题描述】:image of ibm watson and options (2nd image)
如何从 IBM Watson Assistant 获取聊天机器人中的选项列表?我正在使用 IBM Watson AI 平台。下面是聊天机器人代码,上面给出了选项的屏幕截图。如何在我的代码中获取这些选项?
final ConversationService myConversationService =
new ConversationService(
"2017-05-26",
getString(R.string.username),
getString(R.string.password)
);
sendImg.setOnClickListener(new View.OnClickListener()
@Override
public void onClick(View view)
Toast.makeText(MainActivity.this, "working", Toast.LENGTH_SHORT).show();
inputText = etTypingMsg.getText().toString();
MessageRequest request = new MessageRequest.Builder()
.inputText(inputText)
.build();
myConversationService.message(getString(R.string.workspace), request)
.enqueue(new ServiceCallback<MessageResponse>()
@Override
public void onResponse(MessageResponse response)
outputText = "";
int length=response.getText().size();
Log.i("testing", "run: "+length);
if(length>1)
for (int i = 0; i < length; i++)
outputText += '\n' + response.getText().get(i).trim();
else
outputText = response.getText().get(0);
runOnUiThread(new Runnable()
@Override
public void run()
btnInvisisble.setVisibility(View.GONE);
String chatkey= databaseReference.push().getKey();
chatModel=new ChatModel(inputText,outputText,chatkey);
databaseReference.child(userid).child("MainChatting").child(chatkey).setValue(chatModel);
if(outputText.toLowerCase().contains("You should meet with".toLowerCase()))
btnInvisisble.setVisibility(View.VISIBLE);
btnInvisisble.startAnimation(shake);
);
@Override
public void onFailure(Exception e)
);
etTypingMsg.setText("");
try
InputMethodManager imm = (InputMethodManager)getSystemService(INPUT_METHOD_SERVICE);
imm.hideSoftInputFromWindow(getCurrentFocus().getWindowToken(), 0);
catch (Exception e)
// TODO: handle exception
【问题讨论】:
有任何错误或任何具体问题吗?什么不工作?你尝试了什么? 我不知道如何在我的聊天机器人中显示 ibm watson 帮助的这个选项(给定图片) 我不是 100% 确定你在问什么。我相信您在问如何在聊天机器人的 UI 中显示这些选项。 - 如果是这样的话,那么你有很多选择。您可以将这些选项显示为按钮,列表标签是按钮上显示的内容,以及选择按钮时结果的值。或者你可以这样一个列表,再次选择列表之一时,该值就是返回的值。我还必须注意,通常选择按钮/列表时的值是对话中显示的值,就像您输入了值一样。 是的。你说对了。我想在我的聊天机器人的 UI 中显示这些选项。你能告诉我任何与这个问题相关的演示代码吗?我不明白,我该怎么做? 【参考方案1】:我确切地知道为什么这对你不起作用。您需要使用更新的“版本日期”。您的代码显示您正在使用“2017-05-26”。该日期是在“选项”功能添加到助手之前。尝试使用最近的日期,例如“2019-07-01”。然后就可以了。
【讨论】:
我将版本更改为“2019-07-01”。但它仍然无法正常工作。选项未显示在我的聊天机器人的 UI 中。它仅适用于 Watson 的“试用”。我在帖子中添加了另一张 ibm watson 的图片。 我想你问的是如何显示选项——而不是如何从助手中检索它们。我无法帮助您处理 UI 部分,但您现在应该可以取回选项值。他们将在output.generic[0].options
。以上是关于从 IBM Watson Assistant 获取我的聊天机器人中的选项列表的主要内容,如果未能解决你的问题,请参考以下文章
尝试通过 Axios (React Native) 访问 IBM Watson Assistant 消息时出现错误 500
将 IBM Db2 连接到 Watson Assistant
IBM Watson Assistant 响应来自机器人的延迟
如何在 IBM Watson Assistant 客户端中实现“客户端”类型的操作?