微信程序开发系列教程(二)微信订阅号+人工智能问答服务
我的前一篇文章**微信程序开发系列教程(一)**开发环境搭建 已经介绍了微信服务器的开发环境搭建。本文作为开发系列的第二篇文章,介绍如何给您的微信订阅号开发一个最简单的问答服务,非常好玩。
这个系列的完整代码在我的github上:
https://github.com/i042416/wechat
本文实现的场景
您的订阅号粉丝向订阅号发送消息,会得到一个和发送消息一模一样的文字回复,并且在前面加上了“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的原创技术文章,请关注公众号"汪子熙"或者扫描下面二维码:
微信程序开发系列教程(二)微信订阅号+人工智能问答服务相关推荐
- 微信程序开发系列教程(一)开发环境搭建
1. 您得从微信官方平台注册一个微信订阅号: https://mp.weixin.qq.com 2. 这个教程使用nodejs开发微信订阅号对应的消息服务器,因此需要具备基本的nodejs开发技能. ...
- 微信小程序开发系列教程三:微信小程序的调试方法
微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 这个教程的前两篇文章,介绍了如何用下图所示的微信开发者工具自动生成一个Hel ...
- C#微信公众号开发系列教程二(新手接入指南)
此系列前面已经更新了两篇博文了,都是微信开发的前期准备工作,现在切入正题,本篇讲解新手接入的步骤与方法,大神可直接跳过,也欢迎大神吐槽. 微信公众号开发系列教程一(调试环境部署) 微信公众号开发系列教 ...
- 微信小程序开发系列七:微信小程序的页面跳转
微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 微信小程序开发系列三:微信小程序的调试方法 微信小程序开发系列四:微信小程序 ...
- 微信小程序开发系列六:微信框架API的调用
微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 微信小程序开发系列三:微信小程序的调试方法 微信小程序开发系列四:微信小程序 ...
- 微信小程序开发系列五:微信小程序中如何响应用户输入事件
微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 微信小程序开发系列三:微信小程序的调试方法 微信小程序开发系列四:微信小程序 ...
- 微信小程序开发系列四:微信小程序之控制器的初始化逻辑
微信小程序开发系列教程 微信小程序开发系列一:微信小程序的申请和开发环境的搭建 微信小程序开发系列二:微信小程序的视图设计 微信小程序开发系列三:微信小程序的调试方法 这个教程的前两篇文章,介绍了如何 ...
- 微信小程序开发系列 (四) :微信小程序的页面跳转路由设计
笔者由于工作需要,曾经参加过一个微信小程序同 SAP 系统集成的项目,因此从零开始学习了微信小程序的开发知识.这里通过系列文章把自己所学分享出来,希望对相关学习者有所帮助. 本教程前面三篇文章: 微信 ...
- 微信小程序开发系列一:微信小程序的申请和开发环境的搭建
我最近也刚刚开始微信小程序的开发,想把我自学的一些心得写出来分享给大家. 这是第一篇,从零开始学习微信小程序开发.主要是小程序的注册和开发环境的搭建. 首先我们要在下列网址申请一个属于自己的微信小程序 ...
最新文章
- 查询x,y之间的素数
- Linux怎么对当前目录提权,linux提权方法(不断总结更新)
- java相对目录_java相对目录和绝对目录解析
- 美术师关于自己的报酬与工作的看法
- mysql安装提示language错误_MySQL 安装 CMake Error CMAKE_CXX_COMPILER not set
- Web学习之跨域问题及解决方案
- 初识react(二) 实现一个简版的html+redux.js的demo
- Eclipes导入的项目中的中文都是乱码的解决办法
- 为什么SpringBoot的jar可以直接运行
- 包含对象的json格式_如何把JSON数据格式转换为Python的类对象?
- 13.计蒜客ACM题库.A1147 结果填空:礼物盒
- Win11进桌面闪屏,亲测恢复正常
- EM算法原理解释及公式推导
- 拉格朗日乘数法怎么判断极大极小_用拉格朗日乘数法求出极值后如何判断其是极大值还是极小值?...
- android studio umake,Android Studio中NDK开发傻瓜教程(CMake)
- COPYPASTE: AN AUGMENTATION METHOD FOR SPEECH EMOTION RECOGNITION -论文阅读
- python3爬虫实战一: 爬取豆瓣最新上映电影及画出词云分布
- 无忧·企业文档自助配置完成单点登录配置,对接企业原有组织架构
- 国际大会演讲ppt_2008年上半年会议演讲时间表
- 留学日本专业比较: 理工科、文科、与研究