首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Microsoft框架与api.ai集成

将Microsoft框架与api.ai集成
EN

Stack Overflow用户
提问于 2017-06-29 10:14:35
回答 1查看 805关注 0票数 1

我正致力于将与api.ai集成。我学习了教程这里。在编码方面,我还使用Heroku命令行将bot部署到Heroku。

我使用了以下代码:

(我更改了我的应用程序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?");
});` 

我的Package.json

代码语言:javascript
复制
{
  "name": "nodebot",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "scripts": {
    "test": "echo \"Error: no test specified\" && exit 1"
  },
  "author": "",
  "license": "ISC",
  "dependencies": {
    "api-ai-recognizer": "^1.0.1",
    "botbuilder": "^3.8.4",
    "restify": "^4.3.0"
  }
}

我的过程文件

代码语言:javascript
复制
web: node app.js

但是在成功部署到Heroku之后,我看到了以下错误:{“代码”:“ResourceNotFound”,“消息”:“/api/messages不存在”}

即使当我尝试从below模拟器测试bot时,我也看到以下错误:请求'http://localhost:3978/api/messages‘失败: 404未找到

我有以下几个问题: 1.如何成功地将api.ai与框架集成? 2.如何托管Heroku?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2017-06-29 11:00:19

似乎没有定义api/messages路由。您错过了这一行server.post('/api/messages', connector.listen());

另外,您要两次定义连接器,即ChatConnectorConsoleConnector。确保删除与ConsoleConnector相关的代码。

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

https://stackoverflow.com/questions/44822324

复制
相关文章

相似问题

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