在使用Dialogflow进行Web演示集成时,是否可以格式化对话,使得机器人发起对话?
目的是说“你好,我是一个机器人,我可以做x”来表明这是一个聊天机器人而不是人类。
有没有人有任何想法建议?
在使用Dialogflow进行Web演示集成时,是否可以格式化对话,使得机器人发起对话?
目的是说“你好,我是一个机器人,我可以做x”来表明这是一个聊天机器人而不是人类。
有没有人有任何想法建议?
event
参数的/query
请求。将event
参数设置为WELCOME
,你的聊天机器人将会回复任何你设置的对话开场白。/query
请求?你是指使用v2.beta API吗?它适用于Web集成还是仅适用于其他集成(Facebook、Google助手等)?我考虑使用Webhook fulfillment,但没有用户输入就不会触发它。我在“默认欢迎意图”中有一个WELCOME事件,但据我所知它不会自动触发。绝对不适用于Web集成。 - Vadorequest/query
)。 - Omegastick如果您使用的不是API与Dialogflow代理进行交互(如Slack、Facebook Messenger等),您需要在控制台下的“意向”中添加一个适当的事件(例如“Facebook Welcome”事件)。
要通过API与Dialogflow代理进行交互,请参见以下内容。
在API交互快速入门文档中,Dialogflow提供了SessionClient的detectIntent方法,以与您的机器人共享消息。
每种语言都有不同的解决方案。但在抽象层面上,您需要更改发送到Dialogflow的请求对象,以包含一个“欢迎”事件(无需输入消息),就像Omegastick描述的那样。
例如,在Node.js中,您的请求对象将如下所示:
// The text query request.
const request = {
session: sessionPath,
queryInput: {
event: {
name: "Welcome",
languageCode: languageCode
}
},
};
假设您在Dialogflow控制台中设置了相应的意图来处理欢迎事件。默认情况下提供了一个您可以观察的意图。
您还可以添加上下文,以便根据某些条件使您的代理人给出不同的问候消息。