Tag: botframework

Node.js:如何使用MS Bot框架在Slack中发送直接消息?

我正在尝试使用LUIS创build一个Slack机器人,当机器人在添加的频道中看到问候语时,它会向发送问候语的用户发送直接消息。 我看了Issue #431并写了一个bot。 这是我的代码: var builder = require('botbuilder'); var restify = require('restify'); // Setup Restify Server var server = restify.createServer(); server.listen(process.env.port || process.env.PORT || 3978, function () { console.log("%s listening to %s", server.name, server.url); }); server.get(/.*/, restify.serveStatic({ 'directory': '.', 'default': 'index.html' })); // Create Chat Bot var connector = new builder.ChatConnector({ appId: process.env.MICROSOFT_APP_ID, appPassword: process.env.MICROSOFT_APP_PASSWORD […]

微软Bot框架对话框不处理正在发送的Facebook位置

我需要能够要求的位置和处理瀑布对话框stream(目前我只关心Facebook Messenger) 我想要在生成器提示中询问位置,尽pipe最接近的types是附件,但是期望来自用户的video或图像响应。 我想看到由用户处理的响应,因为我可以看到这个工作的唯一方法是如果我设置了一个标记,我已经问了这个问题,并明确地捕获响应,如果它是一个位置响应。 虽然,这不是我所追求的function。 有没有人有这个偶然的解决scheme? 谢谢,斯科特 编辑; 我正在寻找一个解决scheme,需要使用位置快速答复。

BotFramework:是否可以结合LUIS意图和正常意图?

我目前正在采取与微软Botframework为NodeJS聊天机器人的第一步。 到目前为止,我已经看到了“正常”的意图和LUIS.ai意图 有没有可能把两者结合起来? 我有一个.onDefault意图不是一个LUIS和一个LUIS意图,但不pipeinput是什么,它总是返回的LUIS意图的输出。 有人能给我一个简单的例子,或者指给我一个吗? 提前致谢

Botframework(Node) – dialogData删除正则expression式

BotBuilder Node SDK是否主动dialogData存储dialogData对象的任何内容? 例如,我创build了一个简单的循环,我在session.dialogData.questions存储了一个正则expression式。 当我存储它后,控制台login这个,我可以看到我的正则expression式存储如期: { validation: /^[0-9]{19}$/, } 但是,当我尝试在我的瀑布的下一步logging相同的session.dialogData.questions对象,那么正则expression式似乎已被转换为一个空的对象: { validation: {} } 我认为这是防止XSS和其他types的剥削的故意的尝试? 这个例子的代码可以在下面find: const builder = require('botbuilder') const lib = new builder.Library('FormBuilder') lib.dialog('/', [ (session, args) => { session.dialogData.questions = { validation: /^[0-9]{19}$/ } console.log(session.dialogData.questions) builder.Prompts.confirm(session, 'Would you like to proceed?') }, (session, results) => { console.log(session.dialogData.questions) } ]) module.exports.createLibrary = () […]

用图像提示对话select – node.js

我想用不同的选项提示用户,但不是文本,我希望他们是图片,所以用户将能够点击他/她想要的图像。 我正在使用Node.js中的Microsoft bot框架。 我的问题类似于这个,但与节点,而不是C#。 我也检查了提示文件,但看起来好像它不是开箱即可的。 我的机器人在FaceBook上运行,也许并不重要。

如何在Microsoft Bot框架中获取获取请求?

我无法find访问/编辑用户数据的方法,以响应node.js中另一台服务器的请求。 我特殊的用例涉及使用服务器发送的值更新某个特定用户的某些值。 服务器当前有与所有用户一起存储的对话地址。 此外,我计划实现提供GET请求到同一台服务器提供我能够访问的数据。

如何从自我托pipe的自定义Microsoft团队机器人获取消息?

我一直在这个头上撞了太久, 我想要一个设置在哪里 我在Node.js中编码 我运行本地服务器 在提到的渠道中,我们可以回复提到的自定义机器人 我已经设法 在Node.js中的代码 运行本地服务器(使用restify或https) 我设法得到一个请求发送到我的Node.js实现 我没有设法 抓住机器人提到的实际消息string或其他有用的信息 我已经淘汰了多个资源,没有太多的运气,这将解释你最简单的forms; 启动一个Node.js应用程序,它监听来自自定义bot的传入请求,parsing它以获取消息string,然后将其发送回通道。 以下是一些转储我得到的响应的代码 const fs = require('fs'); var restify = require('restify'); var builder = require('botbuilder'); const https_options = { key: fs.readFileSync('[redacted].key'), cert: fs.readFileSync('[redacted].pem') }; // Setup Restify Server var server = restify.createServer(https_options); server.listen(process.env.port || process.env.PORT || 8080, function () { console.log('%s listening to %s', […]

如何停止在bot生成器框架中识别的消息

我的问题基本上与这个github问题相同,但是对于BotBuilder框架的Node版本。 当机器人被添加到多个用户的频道时,它会对每一条消息做出反应,这不是它的目的。 我打算通过拦截这个消息来解决这个问题,如果它包含了一个bot的提到,它将被允许正常stream动,否则取消这个动作。 但是我无法find正确的function重写。 有什么build议么?

将LUIS Datetime V2转换为JSdate

在LUIS Sdk或Bot Sdk中是否有内置的辅助方法将LUIS DatetimeV2实体转换为JS Date对象? 我见过一些已经使用C#的慢性分析器,但我找不到任何适用于Nodejs的东西。 const dt = builder.EntityRecognizer.findEntity(args.intent.entities, 'datetimeV2'); if (dt) { // this is just the matching intent, I believe. // example intents; today, yesterday, 2/28, 31/5, … // How do I convert this to a valid Date is where I am stuck. }

微软QnA制造商 – 欢迎消息循环

我正试图实现类似于这个主题已经完成的东西开始对话与QnA Maker机器人框架识别器(节点JS) 这个build议是根据机器人首先发送一个欢迎消息,然后等待问题。 然而现在的机器人说'Hj! 我该怎么帮你?“,等待问题,然后再次回到欢迎。 就像是 A:嗨! 我怎么帮你? 问:汽车维修的电话号码是什么?答:致电500-XXXX等。问:假期期间我应该联系谁? A:嗨! 我怎么帮你? 我玩beginDialog,结束对话,取代对话..但是没有运气。 这是最新的代码。 bot.dialog('/', [ function (session ) { session.beginDialog('/welcome'); }, function (session) { session.beginDialog('/qna'); } ]) ; bot.dialog('/welcome', [ function (session) { // Send a greeting and show help. builder.Prompts.text(session, "Hi! How can I help you?"); // session.endDialog(); } ]); bot.dialog('/qna', basicQnAMakerDialog ) ;