首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >用微软Bot框架维护Api.ai中的会话

用微软Bot框架维护Api.ai中的会话
EN

Stack Overflow用户
提问于 2017-07-01 02:10:13
回答 1查看 465关注 0票数 0

我已经建立了一个机器人使用微软机器人框架能够与api.ai对话。现在,对于给定的用户输入,会收到回复。然而,api.ai具有上下文的概念,对其而言,维护会话很重要。如何在Microsoft Bot Framework中实现会话?

我的机器人代码(我已经更改了我的应用程序ID和密码):

代码语言:javascript
复制
`var builder = require('botbuilder');
var restify = require('restify');
var apiairecognizer = require('api-ai-recognizer');
var request = require('request');

//=========================================================
// Bot Setup
//=========================================================

// 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);
});

// Create chat bot
var connector = new builder.ChatConnector({
appId: '4c8f3u2b-c56n-4117-bc16-ec31eeb5d25c',
appPassword: '4CBNO8vBGtdcGh9PoiVYottY'
});

var connector = new builder.ConsoleConnector().listen();
var bot = new builder.UniversalBot(connector);

var recognizer = new apiairecognizer("84c78b2c15684c7380c6a74c8fbb343f");
var intents = new builder.IntentDialog({
recognizers: [recognizer]
});

bot.dialog('/',intents);

intents.matches('Flow_1',function(session, args){
var fulfillment = builder.EntityRecognizer.findEntity(args.entities, 'fulfillment');
if (fulfillment){
var speech = fulfillment.entity;
session.send(speech);
}else{
session.send('Sorry...not sure how to respond to that');
}
});

intents.onDefault(function(session){
session.send("Sorry...can you please rephrase?");
});`
EN

回答 1

Stack Overflow用户

发布于 2017-07-01 21:40:51

据我所知,您使用Microsoft Framework作为api.ai的webhook,而api.ai则通过集成或其他方式接收消息。

您不必处理此问题,因为api.ai会向您的webhook发送一个POST请求,然后您将在该请求上发送一个响应。因为这是一个https-tcp连接,所以不需要在webhook中处理会话id。这就是api.ai及其集成所要处理的。这就是上下文的全部内容。

如果你想通过不同的会话识别一个特定的用户,你必须考虑一些自己的东西。

使用API时使用,不使用集成

您必须跟踪会话id。必须在每个查询中提供此id。

来自查询的响应也将包含此id。

在文档中搜索sessionIdhttps://api.ai/docs/reference/agent/query#query_parameters_and_json_fields

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/44852584

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档