《JAVA如何开发微信机器人?》要点:
本文介绍了JAVA如何开发微信机器人?,希望对您有用。如果有疑问,可以联系我们。
相关主题:web微信和微信机器人
对于想用JAVA开发微信机器人的同学们,可以用 wechat-api 框架,
https://github.com/biezhi/wechat-api
wechat-api 是微信个人号的Java版本API,让个人号具备更多能力,提供方便的接口调用。
使用简单,引入依赖即可
支持本地图片和终端输出二维码
本地自动登录
支持文本、图片、视频、撤回消息等
支持发送文本、图片、附件
注解绑定消息监听
群聊、单聊支持
添加好友验证
撤回消息获取
JDK7+
本地开发的同学请先安装 lombok 插件并确保你的JDK环境是1.7+
引入 maven
依赖
<dependency> <groupId>io.github.biezhi</groupId> <artifactId>wechat-api</artifactId> <version>1.0.5</version> </dependency>
构建自己的小机器人
public class HelloBot extends WeChatBot {
public HelloBot(Config config) {
super(config);
}
@Bind(msgType = MsgType.TEXT)
public void handleText(WeChatMessage message) {
if (StringUtils.isNotEmpty(message.getName())) {
log.info("接收到 [{}] 的消息: {}", message.getName(), message.getText());
this.sendMsg(message.getFromUserName(), "自动回复: " + message.getText());
}
}
public static void main(String[] args) {
new HelloBot(Config.me().autoLogin(true).showTerminal(true)).start();
}
}
/**
* 给文件助手发送消息
*
* @param msg 消息内容
* @return 发送是否成功
*/
boolean sendMsgToFileHelper(String msg);
/**
* 给某个用户发送消息
*
* @param name 用户UserName
* @param msg 消息内容
* @return 发送是否成功
*/
boolean sendMsg(String name, String msg);
/**
* 根据名称发送消息
*
* @param name 备注或昵称,精确匹配
* @param msg 消息内容
* @return 发送是否成功
*/
boolean sendMsgByName(String name, String msg);
/**
* 给某个用户发送图片消息
*
* @param name 用户UserName
* @param imgPath 图片路径
* @return 发送是否成功
*/
boolean sendImg(String name, String imgPath);
/**
* 根据名称发送图片消息
*
* @param name 备注或昵称,精确匹配
* @param imgPath 图片路径
* @return 发送是否成功
*/
boolean sendImgName(String name, String imgPath);
/**
* 给用户发送文件
*
* @param name 用户UserName
* @param filePath 文件路径
* @return 发送是否成功
*/
boolean sendFile(String name, String filePath);
/**
* 根据名称发送文件消息
*
* @param name 备注或昵称,精确匹配
* @param filePath 文件路径
* @return 发送是否成功
*/
boolean sendFileName(String name, String filePath);
更多API见文档 https://biezhi.github.io/wechat-api/#/?id=api列表
接收位置
撤回消息查看
发送文件消息
多线程处理消息
注意,此框架支持的方法并不多,但是你可以自己添加,明白了其原理后,要修改增加并不难。可以参考PHP的机器人开发例子。