搞了个微信机器人,求大家调戏!可以查天气,可以成语接龙……

2012-11-26 23:11:37 +08:00
 ktmud
用微信公众平台的开放信息接口,用 nodejs 搞了个自动回复的机器人。主要功能部分做成了 npm 模块,回复规则可以自定义。

源码放在了 github 上:
https://github.com/ktmud/weixin-robot

目前维护的是豆瓣同城的官方微信:douban-event ,可以直接发送位置查找附近活动。




另外还蛋疼地做了一些额外功能,比如查天气和成语接龙:




然后因为自定义回复很简单,所以还写了很多自动回复的对话:



当机器人的感觉真的很好玩啊……

求大家前往调教,以便正式推广前,它能回答的问题能更多一些~
18855 次点击
所在节点    微信
41 条回复
ktmud
2012-11-29 23:15:53 +08:00
@nodexy 可以另外写一个模块做这种事,现有的只是一个单纯的回复系统,也想保持这种单纯
liuyl
2012-11-30 09:15:41 +08:00
@ktmud 估计是不想让公众账号直接发消息给私人账号?那设置一下权限就好了。搞成这样挺不方便的
nasa
2012-12-01 15:55:16 +08:00
多谢 正在学习你的源码 :)
anyforever
2012-12-04 19:51:13 +08:00
挺喜欢这个开源产品的,可以学习一下了。可是node.js还没装上呢,config的时候总是提示某句话语法错误 -_-|||

源码还不太明白怎么用,希望有更详细点的文档,怎么二次开发之类的。就更好了。
ktmud
2012-12-06 14:12:52 +08:00
@anyforever github 上的源码更新了一下,给 examples/ 添加了一点注释,你可以再看看
anyforever
2012-12-06 19:26:35 +08:00
@ktmud 谢谢,我去看一下
plan9
2012-12-06 23:30:19 +08:00
为什么我登录不了微信公众平台
没有遇到跟我一样问题的人么
nasa
2012-12-11 09:56:07 +08:00
@ktmud 谢谢更新了注释。
heloo
2012-12-11 12:08:12 +08:00
很有意思, 可以先简单分词一下, 在做匹配
nasa
2012-12-12 13:47:45 +08:00
@ktmud 非常感谢更新了搜索的例子。
zhangkai_ch
2012-12-31 10:33:40 +08:00
学习一下。
wzxjohn
2013-01-01 17:53:51 +08:00
@ktmud 为什么我想运行的时候总是提示我
module.js:340
throw err;
^
Error: Cannot find module 'debug'
我已经安装了debug模块啊纠结。。。
ktmud
2013-01-05 22:32:56 +08:00
@wzxjohn 你是在哪儿运行?有试过执行 `npm install` 么?
wzxjohn
2013-01-05 23:00:16 +08:00
@ktmud 自己的VPS。试过了,木有用。。。还是提示
module.js:340
throw err;
^
Error: Cannot find module 'debug'
at Function.Module._resolveFilename (module.js:338:15)
at Function.Module._load (module.js:280:25)
at Module.require (module.js:362:17)
at require (module.js:378:17)
at Object.<anonymous> (/root/lib/robot.js:1:75)
at Module._compile (module.js:449:26)
at Object.Module._extensions..js (module.js:467:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Module.require (module.js:362:17)
ktmud
2013-01-06 00:03:19 +08:00
@wzxjohn 你是把这个作为一个 npm 模块在你自己的代码里跑,还是直接在 weixin-robot 的根目录下 npm start 跑的示例?无论如何,请确认你的 package.json 的 dependencies 里面有 debug 模块
wzxjohn
2013-01-06 01:15:50 +08:00
@ktmud 直接在根目录下跑的。话说这个能放到AppFog上跑么?
我直接把Git上的源码Clone下来npm install 然后npm start,提示我:
sh: 1: supervisor: not found
npm ERR! weixin-robot@0.0.6 start: `supervisor --debug examples/app.js`
npm ERR! `sh "-c" "supervisor --debug examples/app.js"` failed with 127
npm ERR!
npm ERR! Failed at the weixin-robot@0.0.6 start script.
npm ERR! This is most likely a problem with the weixin-robot package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR! supervisor --debug examples/app.js
npm ERR! You can get their info via:
npm ERR! npm owner ls weixin-robot
npm ERR! There is likely additional logging output above.

npm ERR! System Linux 3.2.0-29-generic-pae
npm ERR! command "nodejs" "/usr/bin/npm" "start"
npm ERR! cwd /root/weixin-robot
npm ERR! node -v v0.8.16
npm ERR! npm -v 1.1.69
npm ERR! code ELIFECYCLE
npm ERR!
npm ERR! Additional logging details can be found in:
npm ERR! /root/weixin-robot/npm-debug.log
npm ERR! not ok code 0
ktmud
2013-01-07 12:03:23 +08:00
@wzxjohn 你应该总是使用自己的项目目录 https://github.com/ktmud/weixin-robot/wiki/Usage
wzxjohn
2013-01-09 00:42:54 +08:00
@ktmud 试了各种方法。。。怎么弄都不行。。。。。。。。。跪了。。。
wzxjohn
2013-01-09 00:46:18 +08:00
@ktmud 我勒个去。。。这次居然成功了。。。直接git clone,npm install,npm start就好了。。。
ry_wang
2013-08-15 10:12:28 +08:00
@ktmud 请问这种功能是必须要微信公众服务号么? 订阅号可以进行这个操作么?谢谢。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/53380

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX