微信程序开发系列教程(二)微信订阅号+人工智能问答服务

我的前一篇文章微信程序开发系列教程(一)开发环境搭建 已经介绍了微信服务器的开发环境搭建。本文作为开发系列的第二篇文章,介绍如何给您的微信订阅号开发一个最简单的问答服务,非常好玩。

这个系列的完整代码在我的github上:

https://github.com/i042416/we...

本文实现的场景

您的订阅号粉丝向订阅号发送消息,会得到一个和发送消息一模一样的文字回复,并且在前面加上了“Add by Jerry:”的前缀。

没有什么意思,对吧?因为现在这个订阅号的微信消息服务器是我们自己开发的了,因此在消息服务器上接收到粉丝发送的文本后,我们可以实现一些有趣的逻辑。比如调用一些人工智能的图灵API,同订阅号的粉丝进行聊天,像下面这样:

下面是详细步骤。

1. 打开我github项目里的server.js文件:

实现如下代码。这个server.js是整个消息服务器的入口了,routesEngine的作用是针对微信平台发送到消息服务器的不同请求,进行对应处理。当然具体实现在文件夹jerryapp/routes下面的index.js里。

var express = require('express');

var routesEngine = require('./jerryapp/routes/index.js');

var app = express();

routesEngine(app);

app.listen(process.env.PORT || 3000, function () {

console.log('Listening on port, process.cwd(): ' + process.cwd() );

});

2. 现在我们就开始实现index.js。当粉丝的文字请求发送到消息服务器时,调用自己实现的nodejs module "echoService"进行处理。

var request = require('request');

var echoService = require("../service/echo.js");

module.exports = function (app) {

app.route('/').post(function(req,res){

echoService(req, res);

});

};

打开echo.js看看实现:

从下图第6行能看到加在回复前的前缀"Add by Jerry:"。

具有人工智能的图灵服务

如果不想给您的订阅号粉丝回复呆板的"Add by Jerry:", 那就在index.js里把ecoService注释掉,用图灵API代替吧。如下图29行所示。

图灵API的调用实现位于tuning.js,实际上就是消费了一个通过RestFul API暴露出来的人工智能服务:

url如下:

www.tuling123.com/openapi/api?key=de4ae9269c7438c33de5806562a35cac&info=

我们只用把订阅号粉丝在微信App里发送的文本粘贴到上述url末尾,调用该API就能得到图灵API分析应答结果。以成都天气预报为例:

访问www.tuling123.com可以了解更多该图灵机器人的细节。

要获取更多Jerry的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:

你可能感兴趣的:(微信程序开发系列教程(二)微信订阅号+人工智能问答服务)