业界动态
微信开发sdk协议手机客户端「微信开发sdk协议」
2025-01-30 16:14

微信开发sdk协议,出自冬天不穿秋裤,天冷也要风度的程序猿之手,必属精品

如上图,采用 datalength+databytes 的自定义长度的协议,其中

datalength:紧跟其后的databytes的数据长度(不包含自身长度,占4字节

databytes:protobuf 3.0协议数据序列化后的数据内容,长度不限

1、业务消息

服务端客户端间的消息大致分为以下四类

1)通知类消息

通常由客户端发往服务器端,或者由服务器端发往客服客户端,接收方一般需要作出接收确认回复或不回复(默认成功异常时回复)。

2)客户端同步请求类消息

通常由手机客户端或客服客户端发出,服务端需要回复对应的响应消息。

3)服务器端指令类消息

通常是由服务器或者客服客户端发出的操作手机客户端的指令类消息,手机客户端收到后一般需要回复接收成功确认消息,并在后续执行完指令后回复发送结果通知消息。

客户端在与服务器建立连接后,需要先发送DeviceAuthReq请求获取accesstoken后才能正常进行后续通信,建立连接时的通信时序图如下

2、心跳机制

已于服务器建立连接的客户端需要每隔1分钟发送一个心跳包,时序图如下

所有业务消息都转化为protobuf消息进行序列化后传输,不同命令对应的消息使用protobuf的Any类型嵌套入根消息,接收方在收到根消息后根据命令码反序列化为相应类型消息。

消息结构定义基本约定

1)使用proto3语法

2)package 命名空间统一采用 Jubo.JuLiao.IM.Wx.Proto

3)消息命名采用 Pascal命名法,例如 FirstName,LastName

4)时间字段统一用Unix-Timestamp形式

5)message类型名全部为对应MsgType+Message后缀,如MsgType=DeviceAuthReq的消息的消息结构名定义为 message DeviceAuthReqMessage{}

根消息(TransportMessage

根消息代表最终直接序列化为网络字节流的消息,其中应包含基本的发送方信息(用于授权认证)和其包含的具体的业务命令消息及命令码标识。

所有的其他类型的消息都应该赋值到根消息的Content字段,并将MsgType字段设为对应值,之后将TransportMessage数据序列化做网络传输。接收方在收到消息后根据MsgType将Content内容反序列化成对应的强类型消息。

sdk功能模块请参考:http://www.yunlauncher.com/Blog/articles/119.html

1、客户端发送的心跳包

HeartBeatReq = 1001;

2、消息接收确认回复(接收或拒绝接收

MsgReceivedAck = 1002;

3、错误单独提升为一种消息类型

Error = 1003;

1、设备(手机客户端、客服客户端)获取通信token请求

DeviceAuthReq = 1010;

2、设备(手机客户端、客服客户端)获取通信token响应

DeviceAuthRsp = 1011;

3、设备授权后退出(仅用于服务端内部)

DeviceExitNotice = 1012;

4、账号强制下线通知

AccountForceOfflineNotice = 1013;

1、手机客户端微信上线通知

WeChatonlineNotice = 1020;

2、手机客户端微信下线通知

WeChatOfflineNotice = 1021;

3、微信个人号新增好友通知

FriendAddNotice = 1022;

4、微信个人号移除好友通知

FriendDelNotice = 1023;

5、微信好友发来聊天消息

FriendTalkNotice = 1024;

6、任务执行结果通知

TaskResultNotice = 1025;

7、手机上回复好友的聊天消息

WeChatTalkToFriendNotice = 1026;

8、有好友请求添加好友的通知

FriendAddReqeustNotice = 1027;

9、手机端向服务端通知聊天执行结果

TalkToFriendTaskResultNotice = 1028;

10、图片或视频消息的详细内容结果

RequestTalkDetailTaskResultNotice = 1029;

11、上传手机客户端上微信的二维码

PullWeChatQrCodeTaskResultNotice = 1030;

12、手机上发送了朋友圈通知

CircleNewPublishNotice = 1031;

13、手机上删除朋友圈通知

CircleDelNotice = 1032;

14、手机检测到有人点赞/取消点赞通知

CircleLikeNotice = 1033;

15、手机检测到有人评论/删除朋友圈通知

CircleCommentNotice = 1034;

16、消息标记为已读

PostMessageReadNotice = 1035;

17、联系人信息上传

ContactsInfoNotice = 1036;

18、群聊新增通知

ChatRoomAddNotice = 1037;

19、联系人标签新增,修改通知

ContactLabelAddNotice = 1038;

20、收钱任务执行结果通知

TakeMoneyTaskResultNotice = 1039;

21、朋友圈图片上传

CircleDetailNotice = 1040;

22、群聊删除通知

ChatRoomDelNotice = 1041;

23、群聊信息变更通知

ChatRoomChangedNotice = 1042;

24、群二维码

PullChatRoomQrCodeTaskResultNotice = 1043;

1、给好友发消息任务

TalkToFriendTask = 1070;

2、发送朋友圈任务

PostSNSNewsTask = 1071;

3、主动添加好友任务

AddFriendsTask = 1072;

4、发送朋友圈任务后数据回传

PostSNSNewsTaskResultNotice = 1073;

5、删除朋友圈

DeleteSNSNewsTask = 1074;

6、客户端或者服务端接受好友请求通知

AcceptFriendAddRequestTask = 1075;

7、群发消息任务

WeChatGroupSendTask = 1076;

8、执行养号动作命令

WeChatMaintenanceTask = 1077;

9、请求图片或视频消息的详细内容

RequestTalkDetailTask = 1078;

10、服务端主动要求手机上传当前登录的微信二维码

PullWeChatQrCodeTask = 1079;

11、触发手机推送好友列表任务

TriggerFriendPushTask = 1080;

12、触发手机推送朋友圈列表任务

TriggerCirclePushTask = 1081;

13、朋友圈评论删除任务

CircleCommentDeleteTask = 1082;

14、朋友圈评论删除任务反馈

CircleCommentDeleteTaskResultNotice = 1083;

15、朋友圈评论回复任务

CircleCommentReplyTask = 1084;

16、朋友圈评论回复反馈

CircleCommentReplyTaskResultNotice = 1085;

17、通知手机将某个聊天窗口置为已读

TriggerMessageReadTask = 1086;

18、消息撤回

RevokeMessageTask = 1087;

19、转发消息

ForwardMessageTask = 1088;

20、通知手机推送聊天记录

TriggerHistoryMsgPushTask = 1089;

21、获取群聊二维码

PullChatRoomQrCodeTask = 1090;

1、服务端通知pc客户版本升级

UpgradeAppNotice = 1093;

2、通知手机客户端软件升级

UpgradeDeviceAppNotice = 1094;

3、清粉任务

PostFriendDetectTask = 1095;

4、终止清粉任务

PostStopFriendDetectTask = 1096;

5、删除设备通知

PostDeleteDeviceNotice = 1097;

6、朋友圈点赞任务

PostMomentsPraiseTask = 1098;

7、停止朋友圈点赞任务

PostStopMomentsPraiseTask = 1099;

8、养号任务停止

PostStopWeChatMaintenanceTask = 1100;

9、修改备注任务

ModifyFriendMemoTask = 1101;

10、领取红包或转账

TakeLuckyMoneyTask = 1200;

11、获取指定好友朋友圈

PullFriendCircleTask = 1201;

12、获取朋友圈图片

PullCircleDetailTask = 1202;

13、单条朋友圈点赞任务

CircleLikeTask = 1203;

14、触发手机推送群聊列表

TriggerChatroomPushTask = 1210;

15、请求具体群聊的详细信息

RequestChatRoomInfoTask = 1211;

16、获取联系人详细信息(不一定是好友,如群聊成员

RequestContactsInfoTask = 1212;

17、群聊管理

ChatRoomActionTask = 1213;

18、群内加好友

AddFriendInChatRoomTask = 1214;

19、通讯录加好友

AddFriendFromPhonebookTask = 1215;

20、删除好友

DeleteFriendTask = 1216;

21、发红包

SendLuckyMoneyTask = 1217;

22、获取聊天消息的原始内容(主要是xml内容

RequestTalkContentTask = 1218;

23、返回聊天消息的原始内容

RequestTalkContentTaskResultNotice = 1219;

24、转发消息内容

ForwardMessageByContentTask = 1220;

1、手机端推送好友列表

FriendPushNotice = 2026;

2、手机端推送当前安装版本

PostDeviceInfonotice = 2027;

3、手机端回传检测清粉好友数

PostFriendDetectCountNotice = 2028;

4、手机回传朋友圈数据

CirclePushNotice = 2029;

5、手机回传朋友圈点赞数量

PostMomentsPraiseCountNotice = 2030;

9、手机端推送群聊列表

ChatroomPushNotice = 2031;

7、手机端推送标签列表

ContactLabelInfoNotice = 2032;

8、推送历史消息

HistoryMsgPushNotice = 2033;

9、群成员(陌生人)信息

ChatRoomMembersNotice = 2034;

sdk适用于微信营销软件研发、微信营销手机研发、微信手机群控云控系统研发、微信SCRM客服系统研发、微信营销工具研发、淘宝客机器人、导购返利机器人研发等,目前【聚客通】【有客来】等scrm都是基于这个sdk二次开发的。

    以上就是本篇文章【微信开发sdk协议手机客户端「微信开发sdk协议」】的全部内容了,欢迎阅览 ! 文章地址:http://fabua.ksxb.net/news/8125.html 
     文章      相关文章      动态      同类文章      热门文章      栏目首页      网站地图      返回首页 海之东岸资讯移动站 http://fabua.ksxb.net/mobile/ , 查看更多   
最新文章
小心!你的手机出现这种现象,可能是"爆炸"的前兆手机充电爆炸「小心!你的手机出现这种现象,可能是"爆炸"的前兆」
如今手机占据了我们生活中大部分时间不管是在吃饭,上厕所甚至是睡觉前都喜欢刷手机可是手机工作从早到晚一刻也不闲着一旦出了意
第一部Android手机 全球第一部安卓手机android手机「第一部Android手机 全球第一部安卓手机」
2007年1月,乔布斯发布了第一代iPhone,从此人类开始进入移动互联网时代。所谓时势造英雄,新的时代会造就新的行业霸主。在移动
旧时代的怪异智能旗舰——西门子SX1手机西门子手机「旧时代的怪异智能旗舰——西门子SX1手机」
五一假期已经开始,所以今天我们废话不多说,直接就来看下一台发布于2004年的Symbian Series 60平台的机器——西门子SX1大家第一
岭秀城社区开展“新时代家庭家教家风”理论宣讲活动
  为积极培育和践行社会主义核心价值观,引导居民树立正确的家庭观念,近日,经开区沈家屯镇岭秀城社区新时代文明实践站特邀请
十大最佳手机游戏盘点2023 好玩的热门人气手游top10好玩的手机游戏「十大最佳手机游戏盘点2023 好玩的热门人气手游top10」
如今游戏种类数量千千万,很多小伙伴好奇今年有哪些比较优秀的游戏,小编给大家带来了十大最佳手机游戏盘点。这些游戏都是比较下
微软WP生存困境:手机厂商公开放弃 品牌或将消失微软手机「微软WP生存困境:手机厂商公开放弃 品牌或将消失」
WP与安卓、iOS市场份额的差距在进一步拉大微软倾力打造的移动设备操作系统Windows Phone(以下简称为WP)正陷入尴尬境地,尤其是
中纪委如何刀刃向内“清理门户”?党员干部防围猎从清理手机通讯录开始如何清理手机「中纪委如何刀刃向内“清理门户”?党员干部防围猎从清理手机通讯录开始」
日前,经中共中央批准,中共中央纪委对第十八届中央候补委员,中央纪委驻财政部纪检组原组长、财政部原党组成员莫建成严重违纪问
腾讯手机管家和360手机卫士哪个好?360手机管家「腾讯手机管家和360手机卫士哪个好?」
曾经的腾讯手机管家还不错的,而现在的腾讯手机管家个人并不怎么喜欢,虽然号称免费手机安全软件,但是清理垃圾和杀毒,启动软件都全
金立手机从辉煌一步步走向衰败,它经历了一个什么样的过程?金立手机「金立手机从辉煌一步步走向衰败,它经历了一个什么样的过程?」
金立手机从辉煌一步步走向衰败,它经历了一个什么样的过程?记得一开始知道金立手机这个名字的时候,是在电视广告看到的,由刘德