Tag: botframework

如何在bot框架中validation电话号码?

我正在使用以下代码来获取电话号码的用户input。 我想validation用户input,如果不正确,需要请求用户再次input。 [function (session, results, next) { builder.Prompts.text(session, 'I will also need to know your contact number.'); } ,function (session, results, next) { session.userData.contactNo = results.response; next(); }] 我试过这个例子 ,但是它给出了一个警告,说它已经被弃用了。 欣赏任何关于正确的方法来做到这一点(不使用已弃用的方法)的帮助。 我的电话号码正则expression式是^[689]\d{3}\s?\d{4}$

使用node.js通过卡列出项目的最佳方法

我是一个在chatbot新手,我正在使用微软僵尸框架。我想列出我的知识基地已经训练与项目。 什么样的卡可以用来提示用户喜欢“嘿用户,我正在用这些列表的项目1. .. 2. .. 3. ..”在此先感谢..

如何在没有E标记的情况下在我的Messenger软件中显示非常小的数字?

我有一个机器人,需要在encryption显示非常小的转换。 目前,当数字很小时,输出以科学记数法显示E.我不想这种表示法,我怎样才能把它格式化为正常数字 提前感谢您的回答。 在Node.js中编码

提示没有路由的文本

我想join到我的机器人中是一种方式来提示用户本质上自由forms的自然语言文本,然后保存它。 我认为这将是足够简单的使用: builder.Prompts.text(session, prompt); 但UniversalBot似乎试图根据用户提供的文本来解释和路由。 我确实有LUIS作为识别器连接到机器人,很明显这是什么在这里发挥作用,因为它是解决我的一个定义的意图。 或者至less它是说它意识到这个意图,但实际上并没有把用户带到那个对话中。 有什么方法可以实现我的目标? 在收到对提示的响应时,基本上禁用识别器? 我在Node中编码。

如何从Microsoft Bot Framework发送短信(使用Twilio频道)?

目前我的机器人在Facebook Messenger上,由员工使用。 我想让我的机器人发送一条短信给一个人,欢迎他/她join我们的团队,并凭借其凭据。 我知道Microsoft Bot Framework集成了Twilio,所以我整合了Twilio频道,如下所示: https ://docs.microsoft.com/en-us/bot-framework/channel-connect-twilio,所以我有一个电话,一切都很好configuration,因为我可以手动发送短信(从Twilio的仪表板),它的工作原理。 问题是我现在不知道如何使用它。 const confirmPerson = (session, results) => { try { if (results.response && session.userData.required) { // Here I want to send SMS session.endDialog('SMS sent ! (TODO)'); } else { session.endDialog('SMS cancelled !'); } } catch (e) { console.error(e); session.endDialog('I had a problem while sending SMS :/'); } […]

BotFramework:获取IntentDialog的概率分数

是否有可能得到IntentDialogs的概率分数(0-1)? 所以我想知道机器人是如何有信心回答这个问题的,在此基础上我想要执行某些操作。 我怎样才能做到这一点? 我正在使用QnAMaker和一些硬编码的对话框。 示例代码: var qnarecognizer = new cognitiveservices.QnAMakerRecognizer({ knowledgeBaseId: '', subscriptionKey: '', top:4}); var intentrecognizer = new builder.IntentDialog(); var intents = new builder.IntentDialog({ recognizers: [intentrecognizer, qnarecognizer] }); bot.dialog('/', intents); intents.matches('qna', [ function (session, args, next) { var answerEntity = builder.EntityRecognizer.findEntity(args.entities, 'answer'); session.send(answerEntity.entity); } ]); intents.matchesAny([/Test/i], [ function (session) { session.send('This is not from […]

MS Bot框架:有一个命令来打开一个URL?

我可以通过点击build议的操作来打开URL: const msg = new builder.Message(session) .text('Open URL') .suggestedActions( builder.SuggestedActions.create( session, [ builder.CardAction.openUrl(session, url, title), ])); 我也可以使用英雄卡打开一个URL: const card = new builder.HeroCard(session) .text('Open URL') .buttons([ builder.CardAction.openUrl(session, url, title), ]); 但是: 我可以在没有button的帮助下打开一个URL吗? 我需要打开一个URL,当我的对话的特定步骤到达,我正在寻找某物。 喜欢 session.openUrl(url); 任何想法,如果这是可能的?

当`session`对象不可用时,在Bot框架中读/写bot用户数据

我想将一个简单的键值对存储在由微软的Bot Framework提供的bot用户数据存储器中。 通常很容易: session.userData.key = value; 但是,当session对象不可用时,我想在处理所有传入消息的事件处理程序中执行此操作: bot.on('incoming', incoming => { // Check whether user asked to switch on debug mode. if (incoming.text === 'debug on') { console.log('Enabling debug mode.'); // TODO FIXME – we need to save the result to bot memory. } }); 有没有其他的方式来保存从主app.js文件或从事件处理程序机器人内存?

如何直接将Web服务与bot框架进行通信?

我从上周开始使用bot框架。 实现了用于Skype聊天的node.js SDK。 有时我需要同步bot和API之间的通话。 服务是否可以直接与机器人联系,或只是一种方式? 如有任何build议,请指导我。

无法知道我的机器人有什么问题

我一直在通过一个bot框架教程,并做出了下面的代码。 var builder = require('botbuilder'); var restify = require('restify'); //Create Connector var connector = new builder.ChatConnector( { appId: process.env.MICROSOFT_APP_ID, appPassword: process.env.MICROSOFT_APP_PASSWORD } ); //Create bot with Connector var bot = new builder.UniversalBot(connector); //Restify //Create a server var server = restify.createServer(); //listen to server server.listen(process.env.port || process.env.PORT || 33333, function () { console.log('%s listening to URL […]