资源简介
wechat-api-master.zip
代码片段和文件信息
package io.github.biezhi.wechat;
import io.github.biezhi.wechat.api.WeChatApi;
import io.github.biezhi.wechat.api.WeChatApiImpl;
import io.github.biezhi.wechat.api.annotation.Bind;
import io.github.biezhi.wechat.api.client.BotClient;
import io.github.biezhi.wechat.api.constant.Config;
import io.github.biezhi.wechat.api.constant.Constant;
import io.github.biezhi.wechat.api.enums.MsgType;
import io.github.biezhi.wechat.api.model.*;
import io.github.biezhi.wechat.exception.WeChatException;
import io.github.biezhi.wechat.utils.DateUtils;
import io.github.biezhi.wechat.utils.OkHttpUtils;
import io.github.biezhi.wechat.utils.WeChatUtils;
import lombok.Getter;
import lombok.Setter;
import lombok.extern.slf4j.Slf4j;
import okhttp3.Interceptor;
import okhttp3.OkHttpClient;
import java.lang.reflect.Method;
import java.util.*;
import java.util.concurrent.BlockingQueue;
import java.util.concurrent.linkedBlockingQueue;
/**
* 微信机器人
*
* @author biezhi
* @date 2018/1/18
*/
@Slf4j
public class WeChatBot {
/**
* 操作微信接口的API
*/
private WeChatApi api;
/**
* 调用HTTP请求的客户端
*/
private BotClient botClient;
/**
* 微信API配置
*/
private Config config;
@Getter
@Setter
private boolean running;
/**
* 登录会话
*/
@Setter
private LoginSession session;
/**
* 最后一次正常检查时间戳
*/
@Getter
private long lastCheckTs;
/**
* 接收消息重试次数
*/
@Getter
private final int receiveRetryCount = 5;
/**
* 待处理的消息队列
*/
@Getter
private volatile BlockingQueue messages = new linkedBlockingQueue<>();
/**
* 注解绑定的函数映射
*/
private final Map> mapping = new HashMap<>(8);
public WeChatBot(Builder builder) {
this.config = builder.config;
this.botClient = builder.botClient;
this.session = new LoginSession();
this.init();
}
public WeChatBot(Config config) {
this(new Builder().config(config));
}
public Config config() {
return this.config;
}
public LoginSession session() {
return session;
}
public BotClient client() {
return botClient;
}
public WeChatApi api() {
return this.api;
}
public void addMessages(List messages) {
try {
if (null == messages || messages.size() == 0) {
return;
}
for (WeChatMessage message : messages) {
this.messages.put(message);
}
} catch (InterruptedException e) {
log.error(“向队列添加 Message 出错“ e);
}
}
public boolean hasMessage() {
return this.messages.size() > 0;
}
public WeChatMessage nextMessage() {
try {
return this.messages.take();
} catch (InterruptedException e) {
log.error(“从队列获取 Message 出错“ e);
return null;
}
}
private void ini
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-03-30 03:14 wechat-api-master\
文件 2067 2018-03-30 03:14 wechat-api-master\.gitignore
文件 141 2018-03-30 03:14 wechat-api-master\.travis.yml
文件 1076 2018-03-30 03:14 wechat-api-master\LICENSE
文件 3588 2018-03-30 03:14 wechat-api-master\README.md
目录 0 2018-03-30 03:14 wechat-api-master\docs\
文件 0 2018-03-30 03:14 wechat-api-master\docs\.nojekyll
文件 5552 2018-03-30 03:14 wechat-api-master\docs\README.md
文件 252 2018-03-30 03:14 wechat-api-master\docs\_coverpage.md
目录 0 2018-03-30 03:14 wechat-api-master\docs\_media\
文件 1810 2018-03-30 03:14 wechat-api-master\docs\_media\logo.svg
文件 73478 2018-03-30 03:14 wechat-api-master\docs\favicon.ico
文件 782 2018-03-30 03:14 wechat-api-master\docs\index.html
文件 56726 2018-03-30 03:14 wechat-api-master\docs\index.min.js
文件 8489 2018-03-30 03:14 wechat-api-master\pom.xm
目录 0 2018-03-30 03:14 wechat-api-master\src\
目录 0 2018-03-30 03:14 wechat-api-master\src\main\
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\io\
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\
文件 10116 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\WeChatBot.java
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\
文件 2705 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\ChatLoop.java
文件 3035 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\WeChatApi.java
文件 42482 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\WeChatApiImpl.java
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\annotation\
文件 838 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\annotation\Bind.java
目录 0 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\client\
文件 10426 2018-03-30 03:14 wechat-api-master\src\main\java\io\github\biezhi\wechat\api\client\BotClient.java
............此处省略61个文件信息
- 上一篇:16PF性格测试程序含源码
- 下一篇:EBS 结转销货成本操作步骤.docx
相关资源
- vs2010-2015语言包.rar
- 蚂蚁1.2.3期.txt
- 代码生成.txt
- Z5-jF-.net财务管理系统完整源码.rar
- 自适应滤波器原理(答案与代码).
- Location_WIFI.rar
- 瑞利衰落信道的仿真.doc
- ds18b20.zip
- myeclipse2015stable3.0破解.rar
- 渗透视频教学网盘地址.rar
- eetop.cn_Crack_Quartus_Prime_Standard_Pro_16.0
- rar(49)
- 微信敏感词库大全.txt.zip
- 01.txt
- 基于Labview的变音器.doc
- 20选5.rar
- sn.txt
- 模电课后思考题答案网络版不全.doc
- 演化ANN.zip
- UC免费WiFI.exe
- 单片机.zip
- wgrib2.exe
- IEDScout4.20.txt
- avast_is_20200425.rar
- 阿里云考试认证题库ACA阿里云考试.
- 2018尚硅谷电商项目前后端分离视频教
- Maple2017最新中文版完破.zip
- Labview实现的11款小游戏.zip
- TXT.zip
-
singleob
ject.zip
评论
共有 条评论