如何在Microsoft Bot Framework v.3(Node.js)中自动发送欢迎消息并加载特定对话框?
我试图在我的机器人启动时显示欢迎消息,并加载一个特定的对话框。我们在我工作的公司使用的是版本3(我知道,它很旧,不受支持) 至于欢迎信息,说在conversationUpdate上使用如何在Microsoft Bot Framework v.3(Node.js)中自动发送欢迎消息并加载特定对话框?,node.js,botframework,Node.js,Botframework,我试图在我的机器人启动时显示欢迎消息,并加载一个特定的对话框。我们在我工作的公司使用的是版本3(我知道,它很旧,不受支持) 至于欢迎信息,说在conversationUpdate上使用,这很好,但这似乎与之相矛盾,这表明不应该使用conversationUpdate,除非使用DirectLine,而是应该发送事件。这是这件事的最终决定吗?有更好的办法吗 我还想在欢迎消息之后自动加载一个对话框。我该怎么做?我可以在上面的“on conversationUpdate”事件期间访问会话并直接在那里加载
,这很好,但这似乎与之相矛盾,这表明不应该使用conversationUpdate
,除非使用DirectLine,而是应该发送事件。这是这件事的最终决定吗?有更好的办法吗
我还想在欢迎消息之后自动加载一个对话框。我该怎么做?我可以在上面的“on conversationUpdate”事件期间访问会话并直接在那里加载对话框吗?有更好的办法吗
谢谢你的帮助 这是矛盾的,但在大多数情况下,conversationUpdate
可能是您的最佳选择。但是,由于通道处理此问题的方式不同,因此您应该知道结果可能会有所不同。对于直达线路,利用发送事件是更好的选择
例如,在需要时:
bot.on('conversationUpdate',函数(消息){
如果(message.membersAdded){
message.membersAdded.forEach(函数(标识){
if(identity.id==message.address.bot.id){
var reply=new builder.Message()
.address(message.address)
.text(“欢迎”);
发送(回复);
}
});
}
});
要立即调用特定对话框,请执行以下操作:
bot.on('conversationUpdate',函数(消息){
如果(message.membersAdded){
message.membersAdded.forEach(函数(标识){
if(identity.id==message.address.bot.id){
bot.beginDialog(message.address,'/main');
}
});
}
});
bot.dialog(“/main”[
函数(会话、参数、下一步){
发送(“很高兴你能加入”);
session.beginDialog('/next');
}
]);
只需将两者结合起来,即可发送欢迎信息并启动对话
希望有帮助