我是Microsoft Bot框架的新手.现在我正在模拟器上测试我的代码.我想在你连接后立即发送Hello消息.以下是我的代码.
var restify = require('restify'); var builder = require('botbuilder'); var server = restify.createServer(); server.listen(process.env.port || process.env.PORT || 3978, function () { console.log('%s listening to %s', server.name, server.url); }); var connector = new builder.ChatConnector({ appId: "-- APP ID --", appPassword: "-- APP PASS --" }); var bot = new builder.UniversalBot(connector); server.post('/api/message/',connector.listen()); bot.dialog('/', function (session) { session.send("Hello"); session.beginDialog('/createSubscription'); });
上面的代码在用户发起对话时发送Hello消息.我想在用户连接后立即发送此消息.
挂钩conversationUpdate
事件并检查添加机器人的时间.之后,您可以发布消息或开始一个新的对话框(如下面的代码我从ContosoFlowers Node.js样本中提取的,尽管还有许多其他人在做同样的事情).
// Send welcome when conversation with bot is started, by initiating the root dialog bot.on('conversationUpdate', function (message) { if (message.membersAdded) { message.membersAdded.forEach(function (identity) { if (identity.id === message.address.bot.id) { bot.beginDialog(message.address, '/'); } }); } });