資源簡(jiǎn)介
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;
/**
?*?微信機(jī)器人
?*
?*?@author?biezhi
?*?@date?2018/1/18
?*/
@Slf4j
public?class?WeChatBot?{
????/**
?????*?操作微信接口的API
?????*/
????private?WeChatApi?api;
????/**
?????*?調(diào)用HTTP請(qǐng)求的客戶端
?????*/
????private?BotClient?botClient;
????/**
?????*?微信API配置
?????*/
????private?Config?config;
????@Getter
????@Setter
????private?boolean?running;
????/**
?????*?登錄會(huì)話
?????*/
????@Setter
????private?LoginSession?session;
????/**
?????*?最后一次正常檢查時(shí)間戳
?????*/
????@Getter
????private?long?lastCheckTs;
????/**
?????*?接收消息重試次數(shù)
?????*/
????@Getter
????private?final?int?receiveRetryCount?=?5;
????/**
?????*?待處理的消息隊(duì)列
?????*/
????@Getter
????private?volatile?BlockingQueue?messages?=?new?linkedBlockingQueue<>();
????/**
?????*?注解綁定的函數(shù)映射
?????*/
????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(“向隊(duì)列添加?Message?出錯(cuò)“?e);
????????}
????}
????public?boolean?hasMessage()?{
????????return?this.messages.size()?>?0;
????}
????public?WeChatMessage?nextMessage()?{
????????try?{
????????????return?this.messages.take();
????????}?catch?(InterruptedException?e)?{
????????????log.error(“從隊(duì)列獲取?Message?出錯(cuò)“?e);
????????????return?null;
????????}
????}
????private?void?ini
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????目錄???????????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個(gè)文件信息
評(píng)論
共有 條評(píng)論