Weixin robot Java

微信公共平台自动回复机器人的Java SDK,你可以使用SDK简单快速构建微信机器人。

微信Robot Java借鉴了url rewrite的思想,url rewrite是根据url进行路由,而微信Robot则是根据消息类型和内容进行路由。

整理的流程如下:

WexinRobotServlet负责认证和微信消息接收

接收后进行XML解析,构建出 WeixinMessage对象,并注入到request的attribute中,名字为wxMsg

根据配置的路由参数,对微信消息进行匹配

根据匹配的结果进行URL路由转发

最后由处理的组件完成xml格式反馈的输出

如何使用

首先我们要在pom.xml中添加:

org.mvnsearch.wx

wx-robot-sdk

1.0.0

接下来就是修改web.xml添加Servlet负责接收微信公共平台发过来的消息:

WexinRobotServlet

org.mvnsearch.wx.servlet.WexinRobotServlet

token

yourTokenHere

confFile

/WEB-INF/weixin-router.xml

WexinRobotServlet

/servlet/weixinrobot

其中token是指你在微信公共平台上的token,这里和其一致。接下来我们还需要设置servlet mapping,添加url-pattern,

然后将最终的url,如上述配置的 http://www.foobar.com/servlet/weixinrobot 作为微信公共平台接口配置中的URL。

接下来是在WEB-INF目录下创建一个weixin-router.xml的文件,完成信息的路由。

接收到的消息如何路由到指定的组件处理,如Struts的Controller等,这里我们需要创建一个router文件,这里还是根据

消息的类型和内容进行转发,内容如下:

text

[\d]{11}

/weixin2.wx

text

/weixin.wx

上述的例子就是如果内容是手机号,交与/weixin2.wx这个URL处理。当然我们设置了一个默认的选项,如果text类型的消息没有任何

匹配,则由/weixin.wx处理。

收到微信消息后,要给出消息反馈。微信公共平台的消息反馈是一个xml格式的数据,在Java的系统中,我们使用jspx输出接口,样例如下:

${wxMsg.sender}

${wxMsg.receiver}

${wxMsg.createdTime}

text

${content}

0

编码

在代码中获取解析好的微信消息 WeixinMessage wxMsg = (WeixinMessage)request.getAttribute("wxMsg");

FAQ

如何调试: 由于微信服务器只能通知互联网IP和80端口,开发时你可以在你家中的ADSL拨号路由器上设置一下80转发,

然后微信服务器的消息通知就可以路由到你的笔记本上,方便你测试和开发。查看你的互联网Ip请访问 http://ip.mvnsearch.org

参考样例清访问robot-demo Maven module

java微信机器人_GitHub - linux-china/weixin-robot-java: 微信公共平台机器人Java SDK相关推荐

  1. java项目-第103期基于ssm的大学生校园兼职平台管理系统-java毕业设计

    java项目-第103期基于ssm的大学生校园兼职平台管理系统 [源码请到资源专栏下载] 1.项目简述 这是一款大学生校园兼职平台管理系统,分为前台和后台. 普通用户登录前台可以看到用户发布的各种兼职 ...

  2. php java执行linux_java_java执行Linux命令的方法,本文实例讲述了java执行Linux命 - phpStudy...

    java执行Linux命令的方法 本文实例讲述了java执行Linux命令的方法.分享给大家供大家参考.具体实现方法如下: public class StreamGobbler extends Thr ...

  3. linux小白微信群,用linux文件处理三剑客将微信群成员导出的方法

    工具: Mac/Linux 系统 Chrome Linux命令:vi.cat.wc.grep.awk.sed.sort.uniq 步骤: 1.微信网页版登陆: 2.选择群成员的HTMLcode区域: ...

  4. 深度linux创建微信图标,Deepin Linux 下基于deepin-wine的微信图标不见的问题解决

    D0-问题定义 今早打开deepin-Linux发现桌面的微信图标不见了,是之前在deepin的app store里安装的,打开APP store,卸载界面显示已经没有了,但安装界面显示open,意思 ...

  5. 2022-2027年中国公共服务机器人行业发展监测及投资战略研究报告

    [报告格式]电子版.纸介版 [出品单位]华经产业研究院 本报告由华经产业研究院出品,对中国公共服务机器人行业的发展现状.竞争格局及市场供需形势进行了具体分析,并从行业的政策环境.经济环境.社会环境及技 ...

  6. 公共服务机器人市场现状分析及前景预测

    在过去三年的时间里,在政策.经济.技术等多重因素合力驱动下,中国机器人产业迎来了一次发展热潮.服务机器人作为机器人行业重要的细分领域,近年来取得了长足的进步和发展,特别是在商场.银行.酒店.医院.政务 ...

  7. JAVA工具篇--java.awt.Robot模拟微信批量添加好友

    前言:java.awt.Robot可以控制鼠标和键盘,本文基于此通过模拟认为添加微信好友的过程实现批量添加微信好友,并最终输出微信号/手机号是否有好友及好友的基本信息,本文代码示例禁用学习交流使用: ...

  8. 微信公号 DIY:一小时搭建微信聊天机器人

    最近借用了女朋友的公号,感觉如果只是用来发文章,太浪费微信给提供的这些功能了.想了想,先从最简单的开始,做一个聊天机器人吧. 使用Python实现聊天机器人的方案有多种:AIML.chatterBot ...

  9. linux 硬件告警信息,shell 操作钉钉机器人实现告警提醒

    我们知道,之前的运维告警多通过mail 等方式通知到相应的人员,难以实现随时随地的查看.随着手机app的发展,很多告警开始发送到im软件上去.目前比较常用的是发送到微信和钉钉上,今天我们将重点放在钉钉 ...

最新文章

  1. 解决maven项目Cannot change version of project facet Dynamic web module to 3.0
  2. Find Minimum in Rotated Sorted Array
  3. 最新版飞鸽传书(http://www.freeeim.com)下载
  4. 日产汽车宣布已关停日、英、美、南非、俄等地工厂
  5. win10恢复出厂设置_手机如何恢复出厂设置
  6. mac vscode debug安装调试moodle
  7. Flash cs4快捷方式
  8. Windows10添加英文输入法
  9. cxf框架Demo1
  10. 2004年考研数学一真题解析pdf
  11. 阿里iconfont图标的使用教程
  12. 用python简易制作晋江城小说下载器(GUI+爬虫+多线程)
  13. Node.js基础入门第七天
  14. kityminder百度脑图转xmind
  15. 搭建 lepus 监控
  16. TTS中的stop_tokens
  17. 硬盘录像机-DVR文件系统及硬盘发展趋势
  18. 2019年线上销量翻倍!立白如何用数智化刷新自己?
  19. 【积】louvain社团检测算法(python)代码图片双解(一)
  20. 3次冲刺IPO,拉卡拉坎坷上市路

热门文章

  1. python357左轮尺寸_有小伙伴需要左轮枪~DUANG!DUANG!DUANG~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~!...
  2. Ubuntu 桌面死机后重启桌面方法
  3. centos7 Qt5.9.1 ucal_close_53错误解决
  4. 单位内网访问外网的二种方式
  5. 区块链技术在现实生活中的主要应用有哪些?
  6. 比特大陆之争终落幕,吴忌寒为爱和平退出?
  7. ping www.baidu.com时出现正在ping www.a.shifen.com
  8. 计算机控制实验报告组态软件学习,中北大学组态软件实验报告
  9. xlsx表格怎么筛选重复数据_怎样在excel2010中筛选出重复数据呢?
  10. 华三模拟器:路由备份路由聚合