first commit

This commit is contained in:
2026-02-17 13:06:23 +08:00
commit 7cbd3d061d
349 changed files with 126558 additions and 0 deletions
+15
View File
@@ -0,0 +1,15 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message QYOpLogRequest{
optional int64 type = 1;
optional bytes V = 2;
}
message ModInfo{
optional uint32 cmd=1;
optional string value=2;
}
+37
View File
@@ -0,0 +1,37 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message GetSafetyInfoRequest{
required BaseRequest BaseRequest = 1;
}
message GetSafetyInfoResponse{
required BaseResponse BaseResponse = 1;
required DeviceInfo ContactUsernameList = 2;
}
message DeviceInfo {
repeated SafeDevice SafeDevices = 1;
}
message SafeDevice {
optional string Name = 1;
optional string Uuid = 2;
optional string DeviceType = 3;
required uint32 CreateTime = 4;
}
message DelSafeDeviceRequest {
required BaseRequest BaseRequest = 1;
optional string Uuid = 2;
}
message DelSafeDeviceResponse {
required BaseResponse BaseResponse = 1;
optional uint32 SafeDevice = 2;
}
+177
View File
@@ -0,0 +1,177 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message WxaExternalInfo {
optional string HostAppId = 1;
optional int32 Scene = 2;
optional int32 SourceEnv = 3;
}
message JSLoginRequest {
required BaseRequest BaseRequest = 1;
optional string AppId = 2;
optional string Scope = 3;
optional int32 loginType = 4;
optional string Url = 5;
optional string State = 6;
optional int32 VersionType = 7;
optional WxaExternalInfo WxaExternalInfo = 8;
}
message JSAPIBaseResponse {
required int32 ErrCode = 1;
required string ErrMsg = 2;
}
message ScopeInfo {
optional string Scope = 1;
optional string Desc = 2;
optional int32 AuthState = 3;
optional string ExtDesc = 4;
optional string AuthDesc = 5;
}
message JSLoginResponse {
required BaseResponse BaseResponse = 1;
optional JSAPIBaseResponse JSAPIBaseResponse = 2;
optional string Code = 3;
optional ScopeInfo ScopeInfo = 4;
optional string AppName = 5;
optional string AppIconUrl = 6;
optional string OpenId = 7;
optional string SessionKey = 8;
optional string SessionTicket = 9;
optional int32 Lifespan = 10;
optional string State = 11;
optional string Signature = 12;
}
message JSOperateWxDataRequest {
required BaseRequest BaseRequest = 1;
optional string AppId = 2;
optional bytes Data = 3;
optional string GrantScope = 4;
optional int32 Opt = 5;
optional int32 VersionType = 6;
optional WxaExternalInfo WxaExternalInfo = 7;
}
message JSOperateWxDataResponse {
required BaseResponse BaseResponse = 1;
required JSAPIBaseResponse JSAPIBaseResponse = 2;
required string Data = 3;
optional ScopeInfo ScopeInfo = 4;
optional string AppName = 5;
optional string AppIconUrl = 6;
optional string CancelWording = 9;
optional string AllowWording = 10;
optional string ApplyWording =11;
}
message SdkOauthAuthorizeReq {
required BaseRequest BaseRequest = 1;
optional string AppId = 2;
optional string Tag3 = 3;
optional string Tag4 = 4;
optional string Tag5 = 5;
optional string Tag8 = 8;
optional string Tag9 = 9;
optional string Tag10 = 10;
optional string Tag11 = 11;
optional uint32 Tag12 = 12;
}
message Tag3 {
optional string Tag1 = 1;
optional bytes Tag2 = 2;
optional uint32 Tag3 = 3;
}
message SdkOauthAuthorizeResp {
required BaseResponse BaseResponse = 1;
optional Tag3 Tag3 = 3;
optional string AppImgUrl = 5;
optional string Code = 6;
}
message SdkOauthAuthorizeConfirmReq {
required BaseRequest BaseRequest = 1;
optional uint32 Tag3 = 3;
optional string Tag4 = 4;
optional string Tag5 = 5;
optional string Tag6 = 6;
optional string Tag7 = 7;
optional uint32 Tag8 = 8;
optional string Tag9 = 9;
optional string Tag10 = 10;
optional string Tag11 = 11;
optional string Tag12 = 12;
optional uint32 Tag13 = 13;
}
message SdkOauthAuthorizeConfirmResp{
required BaseResponse BaseResponse = 1;
optional string Code = 3;
}
message SdkOauthAuthorizeConfirmNewReq {
required BaseRequest BaseRequest = 1;
optional uint32 Opt = 3;
repeated string Scope = 4;
optional string AppId = 5;
optional string State = 6;
optional string BundleId = 7;
optional uint32 AvatarId = 8;
optional string UniversalLink = 9;
optional string OpenSdkVersion = 10;
optional string SdkToken = 11;
optional string OpenSdkBundleId = 12;
optional uint32 SdkTokenChk = 13;
}
message SdkOauthAuthorizeConfirmNewResp {
required BaseResponse BaseResponse = 1;
optional string RedirectUrl = 2;
optional string WxToken = 3;
optional string UserConfirmRedirectUrl = 4;
optional string UserConfirmWording = 5;
}
message QRConnectAuthorizeReq {
required BaseRequest BaseRequest = 1;
optional string OAuthUrl = 2;
}
message QRConnectAuthorizeResp {
required BaseResponse BaseResponse = 1;
optional uint32 isReturnH5 = 2;
repeated string ScopeList = 3;
optional string AppId = 4;
optional string AppName = 5;
optional string AppIconUrl = 6;
repeated string avatarList = 7;
optional int32 IsBanModifyAvatar = 8;
optional uint32 AvatarLimit = 9;
optional uint32 DefaultAvatarId = 10;
optional string DefaultHeadImgUrl = 11;
optional string DefaultHeadImgFileid = 12;
}
message QRConnectAuthorizeConfirmReq {
required BaseRequest BaseRequest = 1;
optional string OAuthUrl = 2;
optional uint32 Opt = 3;
repeated string Scope = 4;
optional uint32 AvatarId = 5;
}
message QRConnectAuthorizeConfirmResp {
required BaseResponse BaseResponse = 1;
}
+2
View File
@@ -0,0 +1,2 @@
rm -r ../wechat
protoc --go_out=. wx.proto
@@ -0,0 +1,29 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message ModChatRoomAccessVerifyRequest {
optional string chatRoomName = 1;
optional uint32 status = 2;
}
message AddChatRoomAdminRequest{
optional BaseRequest baseRequest = 1;
optional string chatRoomName = 2;
repeated string userNameList=3;
}
message AddChatRoomAdminResponse{
optional BaseResponse baseResponse = 1;
}
message DelChatRoomAdminRequest
{
optional BaseRequest baseRequest = 1;
optional string chatRoomName = 2;
repeated string userNameList=3;
}
message DelChatRoomAdminResponse{
optional BaseResponse baseResponse = 1;
}
@@ -0,0 +1,305 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
enum SyncCmdID
{
CmdIdAddMsg = 5;
CmdIdCloseMicroBlog = 12;
CmdIdDelChatContact = 7;
CmdIdDelContact = 4;
CmdIdDelContactMsg = 8;
CmdIdDelMsg=9;
CmdIdDelUserDomainEmail = 19;
CmdIdFunctionSwitch = 23;
CmdIdInviteFriendOpen = 22;
CmdIdMax = 201;
CmdIdModChatRoomMember = 15;
CmdIdModChatRoomNotify = 20;
CmdIdModChatRoomTopic = 27;
CmdIdModContact = 2;
CmdIdModContactDomainEmail = 17;
CmdIdModMicroBlog = 13;
CmdIdModMsgStatus = 6;
CmdIdModNotifyStatus = 14;
CmdIdModQContact = 24;
CmdIdModTContact=0;
CmdIdModUserDomainEmail = 18;
CmdIdModUserInfo = 1;
CmdIdOpenQQMicroBlog = 11;
CmdIdPossibleFriend = 21;
CmdIdPsmStat = 26;
CmdIdQuitChatRoom = 16;
CmdIdReport = 10;
//CmdInvalid = 0;
MM_FAV_SYNCCMD_ADDITEM = 200;
//MM_GAME_SYNCCMD_ADDMSG;
MM_SNS_SYNCCMD_ACTION = 46;
MM_SNS_SYNCCMD_OBJECT = 45;
MM_SYNCCMD_BRAND_SETTING = 47;
MM_SYNCCMD_KVCMD = 55;
NN_SYNCCMD_THEMESTAT = 37;
MM_SYNCCMD_KVSTAT = 36;
MM_SYNCCMD_DELBOTTLECONTACT = 34;
MM_SYNCCMD_DELETE_SNS_OLDGROUP = 56;
MM_SYNCCMD_DELETEBOTTLE = 32;
MM_SYNCCMD_MOGBOTTLECONTACT = 33;
MM_SYNCCMD_MODCHATROOMMEMBERDISPLAYNAME = 48;
// MM_SYNCCMD_MODCHATROOMMEMBERFLAG;
MM_SYNCCMD_MODDESCRIPTION = 54;
MM_SYNCCMD_MODDISTURBSETTING = 31;
MM_SYNCCMD_MODSNSNOLIST = 52;
MM_SYNCCMD_MODSNSUSERINFO = 51;
MM_SYNCCMD_MODUSERIMG = 35;
MM_SYNCCMD_NEWDELMSG = 53;
MM_SYNCCMD_UPDATESTAT = 30;
MM_SYNCCMD_USERINFOEXT = 44;
MM_SYNCCMD_WEBWXFUNCTIONSWITCH = 50;
OpenimContact = 400;
OpenimChatRoom = 0x193;
}
message SearchQYContactRequest{
optional string userName=1;
optional string tg=2;
optional uint64 fromScene=3;
}
message SearchQYContactResponse{
optional BaseResponse baseResponse = 1;
optional SearchQYContact info=2;
optional string link=3;
}
message SearchQYContact{
optional string UserName=1;
optional string Nickname=2;
optional string Pyinitial=3;
optional string Pinyin=4;
optional string Sex=5;
optional string Highpxpic=6;
optional string Pic=7;
optional string App=8;
optional int64 g=9;
optional string Info=10;
optional string v1=11 ;
}
message GetQYContactRequest{
optional string wxid=1;
optional string room=2;
optional string t=3;
}
message GetQYContactResponse{
optional int64 Continue=1;
repeated ContactInfo contactList=2;
}
message ContactInfo{
optional string Username=1;
optional string Nickname=2;
optional int64 Type=3;
optional string Remark=4;
optional string Highpxpic=5;
optional string Pic=6;
optional int64 G=7;
optional string Pyinitial=8;
optional string Pinyin=9;
optional string RemarkPyinitial=10;
optional string RemarkPy=11;
optional string Info=12;
optional string T=13;
optional string App=14;
optional int64 Sex=15;
//[ProtoMember(16, Options = MemberSerializationOptions.Required)]
//public string Qwxid;
}
message QYVAddUserRequest{
optional string wxid=1;
optional string v1=2;
}
message QYVerifyUserRequest{
optional string wxid=1;
optional string content=2 ;
optional string v1=3;
}
message QYModChatRoomTopicRequest{
optional string g=1;
optional string p=2;
}
message QYSyncRequest{
optional BaseRequest baseRequest = 1;
optional int64 selector=2;
optional bytes Key=3;
}
message QYSyncRespone{
optional BaseResponse baseResponse = 1;
optional QYCmdList List=2;
optional int64 Continue=3;
optional bytes Key=4;
}
message QYCmdList{
optional int64 count=1;
repeated QYCmdItem list=2;
}
message QYCmdItem{
optional SyncCmdID cmdid=1;
optional DATA cmdg=2;
}
message Openimcontact{
optional string userName=1;
}
message CreateQYChatRoomRequest{
repeated Openimcontact memberList=1;
}
message CreateQYChatRoomResponese{
optional BaseResponse baseResponse = 1;
optional string Username=2;
repeated QYMemberResp memberList=3;
optional string T=4;
optional string G=5;
}
message QYMemberResp{
optional string member=1;
optional int64 memberStatus=2;
optional string nickName=3;
}
message QYChatroomContactInfoResp{
optional string Username=1;
optional int64 modSetTimes=2;
optional QYChatroomInfo Info=3;
optional int64 ModSetTimes=4;
optional QYMemberList MemberList=5;
optional int64 t=6;
optional int64 G=7;
optional int64 P=8;
optional int64 tg=9;
optional string App=10;
optional int64 p=11;
}
message QYChatroomInfo{
optional string ChatroomOwner=1;
optional string Pic=2;
optional string pic=3;
optional int64 g=4;
optional string ChatroomNickname=5;
optional string Pyinitial=6;
optional string Pinyin=7;
optional string Announcement=8;
optional string Announcer=9;
optional int64 AnnouncementTime=10;
optional int64 CountMax=11;
optional int64 JoinMustApply=12;
optional float t=13;
}
message QYMemberList{
repeated QYMember MemberList=1;
optional int64 g=2;
}
message QYMember{
optional string Username=1;
optional string T=2;
optional string NicknameInChatroom=3;
optional string g=4;
optional string P=5;
optional int64 flag=6;
optional string G=7;
optional string tg=8;
optional string t=9;
}
message QWTransferChatRoomOwnerRequest{
optional string Username=1;
optional Openimcontact owner=2;
}
message QYAddChatRoomRequest{
optional string chatRoomName=1;
repeated Openimcontact memberList=2;
optional string t=3;
}
message QYAddChatRoomMemberResponse{
optional BaseResponse baseResponse = 1;
repeated QYMemberResp memberList=2;
optional string T=3;
}
message InviteQYChatRoomRequest{
optional string chatRoomName=1;
repeated Openimcontact memberList=2;
}
message QYDelChatRoomMemberRequest{
optional string Username=1;
repeated Openimcontact memberList=2;
}
message QYDelChatRoomMemberResponse{
optional BaseResponse baseResponse = 1;
repeated QYMemberResp memberList=2;
}
message QYChatroomContactResponse{
optional BaseResponse baseResponse = 1;
optional QYChatroomContactInfo info=2;
}
message QYChatroomContactInfo{
optional string Username=1;
optional int64 modSetTimes=2;
optional QYChatroomInfo Info=3;
optional int64 ModSetTimes=4;
optional QYMemberList MemberList=5;
optional int64 t=6;
optional int64 G=7;
optional int64 P=8;
optional int64 tg=9;
optional string App=10;
optional int64 p=11;
}
message QYGetQRCodeResponse{
optional BaseResponse baseResponse = 1;
repeated bytes qrcode=2;
optional string footerWording=3;
optional string link=4;
}
message QYChatRoomAdminRequest{
optional string chatRoomName=1;
repeated string memberList=2;
}
message QYAdminAcceptJoinChatRoomSet{
optional string g=1;
optional int64 p=2;
}
message QYAdminAddRequest{
optional string room=1;
optional Openimcontact username=2;
repeated Openimcontact usernamelist=3;
optional string key=4;
}
message GetQYChatroomMemberDetailResponse{
optional BaseResponse baseResponse = 1;
optional uint64 clientVersion=2;
optional QYChatRoomMemberData newChatroomData=3;
}
message QYChatRoomMemberData{
repeated QYChatRoomMemberInfo chatRoomMember=1;
optional uint64 infoMask=2;
}
message QYChatRoomMemberInfo{
optional string userName=1;
optional string nickName=2;
optional string displayName=3;
optional string bigHeadImgUrl=4;
optional string smallHeadImgUrl=5;
optional uint64 chatroomMemberFlag=6;
optional string appId=7;
optional string qy=8;
optional string linkman=9;
}
message GetQYChatroomMemberDetailRequest{
optional string chatroomUserName=1;
optional uint64 clientVersion=2;
}
+59
View File
@@ -0,0 +1,59 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message ModHardDevice{
optional HardDevice hardDevice=1;
optional HardDeviceAttr hardDeviceAttr=2;
}
message HardDevice{
optional string deviceType=1;
optional string deviceId=2;
}
message HardDeviceAttr{
optional string brandName=1;
optional string authKey=2;
}
message GetBoundHardDevicesRequest{
required BaseRequest BaseRequest = 1;
optional uint32 version=2;
}
message GetBoundHardDevicesResponse{
required BaseResponse BaseResponse = 1;
optional uint32 count=2;
repeated ModHardDevice deviceList=5;
optional uint32 version=6;
optional uint32 countinueFlag=7;
}
message UploadDeviceStepRequest{
required BaseRequest BaseRequest = 1;
optional string deviceID=2;
optional string deviceType=3;
optional uint32 fromTime=4;
optional uint32 toTime=5;
optional uint32 stepCount=6;
optional string timeZone=7;
optional string bundleid=8;
optional string appname=9;
optional uint32 m7StepCount=10;
optional uint32 phoneModel=11;
optional SportDeviceInfo deviceInfo=12;
optional uint32 hkStepCount=13;
}
message UploadDeviceStepResponse{
required BaseResponse BaseResponse = 1;
optional SportDeviceInfo deviceInfo=2;
}
message SportDeviceInfo{
optional string bundleid=1;
optional string appname=2;
optional uint32 stepCount=3;
optional bool isAppleWatch=4;
optional bool isWhiteList=5;
optional bool isLocalIphone=6;
}
@@ -0,0 +1,26 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
// 外部设备登录确认OK请求 (CGI ID: 972)
// 对应 protobuf 类: fs4.mj0
message ExtDeviceLoginConfirmOkRequest {
optional BaseRequest BaseRequest = 1;
optional string D = 2; // 登录URL (https://login.weixin.qq.com/l/xxx)
optional string E = 3; // 设备ID列表,逗号分隔 (wxid_xxx,newsapp,wxid_xxx,weixin)
repeated string F = 4; // 扩展字段列表
optional bool G = 5; // 布尔标志1
optional int32 H = 6; // 整数标志
optional bool M = 7; // 布尔标志2
}
// 外部设备登录确认OK响应 (CGI ID: 972)
message ExtDeviceLoginConfirmOkResponse {
optional BaseResponse BaseResponse = 1;
optional uint32 Status = 2; // 状态码
optional string Message = 3; // 响应消息
optional bytes ResultData = 4; // 结果数据
}
@@ -0,0 +1,17 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
// CGI 971 - extdeviceloginconfirmget
message ExtDeviceLoginConfirmGetRequest {
optional string D = 1; // 登录URL
optional bytes F = 2; // 额外数据
}
message ExtDeviceLoginConfirmGetResponse {
optional BaseResponse BaseResponse = 1;
optional bytes ConfirmData = 2; // 确认数据(6500+字节)
}
+100
View File
@@ -0,0 +1,100 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message FPFresh {
optional BaseRequest baseRequest = 1;
optional bytes SessKey = 2;
optional ZTData Ztdata = 3;
}
message ZTData{
optional bytes Version = 1;
optional uint64 Encrypted =2;
optional bytes Data=3;
optional int64 TimeStamp=4;
optional uint64 OpType=5;
optional uint64 Uin=6;
}
message DeviceRunningInfos{
optional bytes Version = 1;
optional int64 Type=2;
optional bytes EncryptData=3;
optional int64 TimeStamp=4;
optional uint64 Unknown5=5;
optional uint64 Unknown6=6;
}
message TrustDeviceInfo{
optional string Key=1;
optional string Val=2;
}
message TrustReq{
optional TrustData Td=1;
}
message TrustData{
repeated TrustDeviceInfo Tdi=1;
}
message TrustRequest{
required BaseRequest BaseRequest = 1;
optional bytes RandomKey=2;
optional bytes spamBuff=3;
}
message TrustResp{
required BaseResponse BaseResponse = 1;
optional TrustResponseData TrustResponseData=2;
}
message TrustResponseData{
optional TrustSoftData SoftData=2;
optional string DeviceToken=3;
optional uint64 Timestamp=4;
}
message TrustSoftData{
optional string SoftConfig=1;
optional bytes SoftData=2;
}
message SendPatRequest{
required BaseRequest BaseRequest = 1;
optional string fromUsername=2;
optional string chatUsername=3;
optional string pattedUsername=4;
optional string clientMsgId=5;
optional int64 scene=6;
}
message SendPatResponse{
required BaseResponse BaseResponse = 1;
optional string patSuffix=4;
optional string selfMsg=3;
optional int64 msgId=5;
optional int64 patSuffixVersion=6;
}
message SendPatSetRequest{
optional int64 cmd=1;
optional SetPat setPat=2;
}
message SetPat{
optional int64 cmId=1;
optional PatMod patMod=2;
}
message PatMod{
optional int64 value=1;
optional string name=2;
}
message SnsObjectOpExt{
optional uint32 id=1;
}
+93
View File
@@ -0,0 +1,93 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message FavSyncRequest {
optional uint32 selector = 1;
optional SKBuiltinString_ keyBuf = 3;
}
message FavSyncResponse {
optional int32 ret = 1;
optional CmdList cmdList = 2;
optional SKBuiltinString_ keyBuf = 3;
optional uint32 continueFlag = 4;
}
message BatchDelFavItemRequest {
optional BaseRequest baseRequest = 1;
optional uint32 count = 2;
optional bytes favIdList = 3;
}
message BatchDelFavItemResponse {
optional BaseResponse baseResponse = 1;
optional uint32 count = 2;
repeated DelFavItemRsp list = 3;
}
message BatchGetFavItemRequest {
optional BaseRequest baseRequest = 1;
optional uint32 count = 2;
optional bytes favIdList = 3;
}
message BatchGetFavItemResponse {
optional BaseResponse baseResponse = 1;
optional uint32 count = 2;
repeated FavObject objectList = 3;
}
message AddFavItem {
optional uint32 favId = 1;
optional uint32 type = 2;
optional uint32 flag = 3;
optional uint32 updateTime = 4;
optional uint32 updateSeq = 5;
}
message GetFavInfoRequest {
optional BaseRequest baseRequest = 1;
}
message GetFavInfoResponse {
optional BaseResponse baseResponse = 1;
optional uint64 usedSize = 2;
optional uint64 totalSize = 3;
optional uint32 mxFavFileSize = 4;
optional uint32 mxAutoUploadSize = 5;
optional uint32 mxAutoDownloadSize = 6;
}
message AddFavItemRequest {
optional BaseRequest baseRequest = 1;
optional string clientId = 2;
optional uint32 type = 3;
optional uint32 sourceType = 4;
optional string sourceId = 5;
optional string object = 6;
}
message AddFavItemResponse {
optional BaseResponse baseResponse = 1;
optional uint32 favId = 2;
optional uint32 updateSeq = 3;
optional uint64 usedSize = 4;
}
message DelFavItemRsp {
optional int32 ret = 1;
optional uint32 favId = 2;
}
message FavObject {
optional uint32 favId = 1;
optional int32 status = 2;
optional string object = 3;
optional uint32 flag = 4;
optional uint32 updateTime = 5;
optional uint32 updateSeq = 6;
}
+138
View File
@@ -0,0 +1,138 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message FinderSyncRequest{
}
message FinderStatsReportResponse{
}
message FinderSearchRequest{
optional BaseRequest baseRequest = 1;
optional string UserKey=2;
optional uint32 Offset=3;
optional bytes T=4;
optional uint32 Scene=5;
optional string Uuid=6;
optional FinderTxRequest FinderTxRequest=7;
}
message FinderTxRequest{
optional int32 Userver=1;
optional int32 Scene=2;
optional bytes ExtSpamInfo =3;
optional int32 T =4;
optional FinderZd G =5;
optional int64 Tg =6;
}
message FinderZd{
optional string G1=1;
optional string G2=2;
optional string G3=3;
}
message FinderSearchResponse{
optional BaseResponse baseResponse = 1;
repeated FinderVtm Vtm=2;
optional int32 Offset =3;
optional int32 ContinueFlag =4;
optional FinderObject Object=5;
optional bytes T=6;
optional string Uuid =7;
}
message FinderObject{
optional bytes Info=1;
}
message FinderVtm{
optional FinderContact Contact=1;
optional string Html=2;
optional string Introduc=3;
optional int32 FansCount=4;
optional int32 FriendFollow=5;
optional string GIo=6;
}
message FinderContact{
optional string Username=1;
optional string Nickname=2;
optional string HeadUrl=3;
optional uint64 Seq=4;
optional string Signature=5;
optional int32 FollowFlag=6;
optional int32 FollowTime=7;
optional bytes AuthInfo=8;
optional string CoverImgUrl=9;
optional int32 SpamStatus=10;
optional int32 ExtFlag=11;
optional bytes ExtInfo=12;
optional int32 OriginalFlag=13;
optional FinderAqt OriginalInfo=14;
optional int32 LiveStatus=15;
optional bytes MsgInfo=16;
optional int32 OriginalEntranceFlag=17;
}
message FinderAqt {
optional int32 G1 =1;
optional int32 G2 =2;
optional int32 G3 =3;
optional int32 G4 = 4;
optional int32 G5 =5;
}
message FinderUserPrepareRequest{
optional BaseRequest baseRequest = 1;
optional int32 Scene=2;
optional FinderTxRequest FinderTxRequest=3;
}
message FinderUserPrepareResponse{
optional BaseResponse baseResponse = 1;
optional int32 ActionType=2;
optional FinderNicknameVerifyInfo VerifyInfo=3;
optional FinderContact SelfContact =4;
optional int32 UserFlag=5;
optional string NicknameModifyWording=6;
optional string GKc=7;
optional string GKd=8;
optional int32 GKe=9;
optional int32 T=10;
optional int32 GKf=11;
optional int32 G=12;
optional bytes GKg=13;
optional int32 GT=14;
optional int32 GKi=15;
}
message FinderNicknameVerifyInfo{
optional string VerifyPrefix=1;
optional string BannerWording=2;
optional string VerifyLink=3;
optional string Appname=4;
optional string VerifyNickname=5;
optional string HeadImgUrl=6;
optional int32 ErrScene=7;
optional string G=8;
optional string T=9;
}
message FinderFollowRequest{
optional string FinderUsername=2;
optional int32 OpType=3;
optional uint64 RefObjectId=4;
optional string PosterUsername=5;
optional FinderTxRequest FinderReq=7;
optional string Cook=8;
optional int32 EnterType=9;
}
message FinderFollowResponse{
optional BaseResponse baseResponse = 1;
optional FinderContact Contact=2;
}
+357
View File
@@ -0,0 +1,357 @@
syntax = "proto2";
import "wechat.proto";
import "syncitem.proto";
package wechat_proto;
option go_package = "../wechat";
message SnsUserPageRequest {
optional BaseRequest baseRequest = 1;
optional string firstPageMd5 = 2;
optional string username = 3;
optional uint64 maxId = 4;
optional uint32 source = 5;
optional uint64 minFilterId = 6;
optional uint32 lastRequestTime = 7;
optional uint32 filterType = 8;
}
message SnsUserPageResponse {
optional BaseResponse baseResponse = 1;
optional string firstPageMd5 = 2;
optional uint32 objectCount = 3;
repeated SnsObject objectList = 4;
optional uint32 objectTotalCount = 5;
optional SnsUserInfo snsUserInfo = 6;
optional uint32 newRequestTime = 7;
optional uint32 objectCountForSameMd5 = 8;
optional SnsServerConfig serverConfig = 9;
optional int64 limitedId = 10;
optional int64 continueId = 11;
optional string retTips = 12;
}
message SnsServerConfig {
optional uint32 postMentionLimit = 1;
optional uint32 copyAndPasteWordLimit = 2;
}
message SnsObject {
optional uint64 id = 1;
optional string username = 2;
optional string nickname = 3;
optional uint32 createTime = 4;
optional SKBuiltinString_ objectDesc = 5;
optional uint32 likeFlag = 6;
optional uint32 likeCount = 7;
optional uint32 likeUserListCount = 8;
// 点赞好友列表
repeated SnsCommentInfo likeUserList = 9;
optional uint32 commentCount = 10;
optional uint32 commentUserListCount = 11;
// 评论好友列表
repeated SnsCommentInfo commentUserList = 12;
optional uint32 withUserCount = 13;
optional uint32 withUserListCount = 14;
// 发送朋友圈时,提到的用户列表
repeated SnsCommentInfo withUserList = 15;
optional uint32 extFlag = 16;
optional uint32 noChange = 17;
optional uint32 groupCount = 18;
// 暂时不知道做什么用
repeated SnsGroup groupList = 19;
optional uint32 isNotRichText = 20;
optional string referUsername = 21;
optional uint64 referId = 22;
optional uint32 blackListCount = 23;
// 不可见的朋友
repeated SKBuiltinString blackList = 24;
optional uint32 deleteFlag = 25;
optional uint32 groupUserCount = 26;
// 可见的朋友
repeated SKBuiltinString groupUser = 27;
optional SKBuiltinString_ objectOperations = 28;
optional SnsRedEnvelops snsRedEnvelops = 29;
optional PreDownloadInfo preDownloadInfo = 30;
optional SnsWeAppInfo weAppInfo = 31;
}
message SnsRedEnvelops {
optional uint32 rewardCount = 1;
repeated SnsHBUserInfo rewardUserList = 2;
optional uint32 resourceId = 3;
optional uint32 reportId = 4;
optional uint32 reportKey = 5;
}
message PreDownloadInfo {
optional uint32 preDownloadPercent = 1;
optional uint32 preDownloadNetType = 2;
optional string noPreDownloadRange = 3;
}
message SnsWeAppInfo {
optional string mapPoiId = 1;
optional uint32 appId = 2;
optional string userName = 3;
optional string redirectUrl = 4;
optional uint32 showType = 5;
optional uint32 score = 6;
}
message SnsCommentInfo {
optional string username = 1;
optional string nickname = 2;
optional uint32 source = 3;
optional uint32 type = 4;
optional string content = 5;
optional uint32 createTime = 6;
optional uint32 commentId = 7;
optional uint32 replyCommentId = 8;
optional string replyUsername = 9;
optional uint32 isNotRichText = 10;
optional uint64 replyCommentId2 = 11;
optional uint64 commentId2 = 12;
optional uint32 deleteFlag = 13;
optional uint32 commentFlag = 14;
}
message SnsGroup {
optional uint64 groupId = 1;
}
message SnsHBUserInfo {
optional string username = 1;
optional uint32 createTime = 2;
optional SKBuiltinString_ hbbuffer = 3;
}
message SnsPostRequest {
optional BaseRequest baseRequest = 1;
optional SKBuiltinString_ objectDesc = 2;
optional uint32 withUserListCount = 3;
repeated SKBuiltinString withUserList = 4;
optional uint32 privacy = 5;
optional uint32 syncFlag = 6;
optional string clientId = 7;
optional uint32 postBgimgType = 8;
optional uint32 groupCount = 9;
repeated SnsGroup groupIds = 10;
optional uint32 objectSource = 11;
optional uint64 referId = 12;
optional uint32 blackListCount = 13;
repeated SKBuiltinString blackList = 14;
optional TwitterInfo twitterInfo = 15;
optional uint32 groupUserCount = 16;
repeated SKBuiltinString groupUser = 17;
optional SnsPostCtocUploadInfo ctocUploadInfo = 18;
optional SnsPostOperationFields snsPostOperationFields = 19;
optional SnsRedEnvelops snsRedEnvelops = 20;
optional SKBuiltinString_ poiInfo = 21;
optional string fromScene = 22;
optional CanvasInfo canvasInfo = 23;
optional uint32 mediaInfoCount = 24;
repeated MediaInfo mediaInfo = 25;
optional SnsWeAppInfo weAppInfo = 26;
optional SKBuiltinString_ clientCheckData = 27;
optional SKBuiltinString_ extSpamInfo = 28;
}
message TwitterInfo {
optional string oauthToken = 1;
optional string oauthTokenSecret = 2;
}
message SnsPostCtocUploadInfo {
optional uint32 flag = 1;
optional uint32 photoCount = 2;
}
message SnsPostOperationFields {
optional string shareUrlOriginal = 1;
optional string shareUrlOpen = 2;
optional string jsAppId = 3;
optional uint32 contactTagCount = 4;
optional uint32 tempUserCount = 5;
}
message CanvasInfo {
optional string dataBuffer = 1;
}
message MediaInfo {
optional uint32 source = 1;
optional uint32 mediaType = 2;
optional uint32 videoPlayLength = 3;
optional string sessionId = 4;
optional uint32 startTime = 5;
}
message SnsPostResponse {
optional BaseResponse baseResponse = 1;
optional SnsObject snsObject = 2;
optional string spamTips = 3;
}
message SnsObjectOpRequest {
optional BaseRequest baseRequest = 1;
optional uint32 opCount = 2;
repeated SnsObjectOp opList = 3;
}
message SnsObjectOpResponse {
optional BaseResponse baseResponse = 1;
optional uint32 opCount = 2;
repeated int32 opRetList = 3;
}
message SnsObjectOp {
optional uint64 id = 1;
optional uint32 opType = 2;
optional SKBuiltinString_ ext = 3;
}
message SnsObjectOpDeleteComment {
optional uint32 commentId = 1;
}
message SnsCommentRequest {
optional BaseRequest baseRequest = 1;
optional SnsActionGroup action = 2;
optional string clientId = 3;
}
message SnsCommentResponse {
optional BaseResponse baseResponse = 1;
optional SnsObject snsObject = 2;
}
message ModSnsBlackList {
optional string contactUsername = 1;
optional uint32 modType = 2;
}
message SnsTagMemberOptionRequest {
optional BaseRequest baseRequest = 1;
optional uint32 opCode = 2;
optional uint64 tagId = 3;
optional string tagName = 4;
optional uint32 count = 5;
repeated SKBuiltinString list = 6;
optional uint32 scene = 7;
}
message SnsTagMemberOptionResponse {
optional BaseResponse baseResponse = 1;
optional SnsTag snsTag = 2;
}
message SnsTag {
optional uint64 tagId = 1;
optional string tagName = 2;
optional uint32 count = 3;
repeated SKBuiltinString list = 4;
}
message SnsTagListRequest {
optional BaseRequest baseRequest = 1;
optional uint32 opCode = 2;
optional string tagListMd5 = 3;
}
message SnsTagListResponse {
optional BaseResponse baseResponse = 1;
optional uint32 opCode = 2;
optional string tagListMd5 = 3;
optional uint32 count = 4;
repeated SnsTag list = 5;
optional uint32 state = 6;
}
message SnsTimeLineRequest {
optional BaseRequest baseRequest = 1;
optional string firstPageMd5 = 2;
optional uint64 maxId = 3;
optional uint64 minFilterId = 4;
optional uint32 lastRequestTime = 5;
optional uint64 clientLatestId = 6;
optional SKBuiltinString_ session = 7;
optional uint32 networkType = 8;
optional SnsAdExpInfo adexpinfo = 10;
optional uint32 realFeedExposureIdsCount = 11;
repeated uint64 realFeedExposureIds = 12;
optional uint32 updateTimelineScene = 13;
optional uint32 pullType = 14;
optional uint64 minIdForGetPrePage = 15;
optional uint64 minIdForCheckUnread = 16;
}
message SnsAdExpInfo {
optional uint64 hateFeedid = 1;
optional uint32 hateTimestamp = 2;
}
message SnsTimeLineResponse {
optional BaseResponse baseResponse = 1;
optional string firstPageMd5 = 2;
optional uint32 objectCount = 3;
repeated SnsObject objectList = 4;
optional uint32 newRequestTime = 5;
optional uint32 objectCountForSameMd5 = 6;
optional uint32 controlFlag = 7;
optional SnsServerConfig serverConfig = 8;
optional uint32 advertiseCount = 9;
repeated AdvertiseObject advertiseList = 10;
optional SKBuiltinString_ session = 11;
optional uint32 recCount = 12;
repeated RecObject recList = 13;
optional uint32 delAdvertiseCount = 14;
repeated DelAdvertiseObject delAdvertiseList = 15;
optional uint32 countForCheckUnread = 16;
repeated uint64 idListForCheckUnread = 17;
}
message DelAdvertiseObject {
optional uint64 id = 1;
}
message AdvertiseObject {
optional SnsADObject snsAdobject = 1;
optional SKBuiltinString adinfo = 2;
optional uint32 adpos = 3;
optional RemindFriendsInfo remindFriendsInfo = 4;
}
message SnsADObject {
optional SnsObject snsObject = 1;
optional SKBuiltinString adxml = 2;
}
message RecObject {
optional SnsRecommendObject snsRecommendObject = 1;
optional SKBuiltinString recommendInfo = 2;
}
message SnsRecommendObject {
optional SnsObject snsObject = 1;
optional SKBuiltinString recommendXml = 2;
}
message SnsObjectDetailRequest {
optional BaseRequest baseRequest = 1;
optional uint64 id = 2;
optional uint32 groupDetail = 3;
}
message SnsObjectDetailResponse {
optional BaseResponse baseResponse = 1;
optional SnsObject object = 2;
}
message SnsSyncRequest {
optional BaseRequest baseRequest = 1;
optional uint32 selector = 2;
optional SKBuiltinString_ keyBuf = 3;
}
message SnsSyncResponse {
optional BaseResponse baseResponse = 1;
optional CmdList cmdList = 2;
optional uint32 continueFlag = 3;
optional SKBuiltinString_ keyBuf = 4;
}
+36
View File
@@ -0,0 +1,36 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message EcdhPacket{
required uint32 Type = 1; //固定为1
required Buffer_t Key = 2;//第5步生成的publickey
required bytes Token = 3;//第8步结果
optional string Url = 4; //空串
optional bytes ProtobufData = 5;//第10步结果
}
message HybridDecryptResponse {
required Buffer_t Key = 1;//第5步生成的publickey
required uint32 Type = 2;
required bytes ProtobufData = 3;//第8步结果
optional bytes token = 4; //空串
}
message HybridEcdhRequest{
optional int32 type = 1;
optional Buffer_t SecECDHKey = 2;
optional bytes randomkeydata = 3;
optional bytes randomkeyextenddata = 4;
optional bytes encyptdata = 5;
}
message HybridEcdhResponse{
optional Buffer_t SecECDHKey = 1;
optional int32 type = 2;
optional bytes decryptdata = 3;
optional bytes randomkeyextenddata = 4;
}
+67
View File
@@ -0,0 +1,67 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message GetLbsLifeListRequest {
optional BaseRequest baseRequest = 1;
optional uint32 opcode = 2;
optional uint32 scene = 3;
optional SKBuiltinString_ buff = 4;
optional LbsLocation loc = 5;
optional string keyword = 6;
optional uint32 entryTime = 7;
optional uint32 isAutoQuery = 8;
}
message LbsLocation {
optional float longitude = 1;
optional float latitude = 2;
optional int32 precision = 3;
optional string macAddr = 4;
optional string cellId = 5;
optional int32 gpssource = 6;
}
message GetLbsLifeListResponse {
optional BaseResponse baseResponse = 1;
optional SKBuiltinString_ buff = 2;
optional uint32 iconCount = 3;
repeated string iconList = 4;
optional uint32 lifeCount = 5;
repeated LbsLife lifeList = 6;
optional uint32 continueFlag = 7;
optional string logoUrl = 8;
optional string searchId = 9;
optional int32 autoQueryInterval = 10;
}
message LbsLife {
optional string bid = 1;
optional string title = 2;
optional float price = 3;
optional uint32 iconIdxCount = 4;
repeated uint32 iconIdxList = 5;
optional uint32 descCount = 6;
repeated SKBuiltinString descList = 7;
optional float rate = 8;
optional string link = 9;
optional uint32 type = 10;
optional SKBuiltinString_ ctx = 11;
optional string poiUrl = 12;
optional SKBuiltinString_ weAppInfo = 13;
optional uint32 showType = 14;
optional uint32 showFlag = 15;
}
message GetAddressRequest {
optional BaseRequest baseRequest = 1;
optional double longitude = 2;
optional double latitude = 3;
}
message GetAddressResponse {
optional BaseResponse baseResponse = 1;
optional string retJson = 2;
}
+60
View File
@@ -0,0 +1,60 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message BindOpMobileForRegRequest{
optional BaseRequest baseRequest = 1;
optional string Mobile=3;
optional int64 Opcode=4;
optional string Verifycode=5;
optional string SafeDeviceName=10;
optional string SafeDeviceType=11;
optional SKBuiltinString_ RandomEncryKey=12;
optional string Language=13;
optional uint32 InputMobileReTrYs=14;
optional uint32 AdjustRet=15;
optional string ClientSeqID=16;
optional string DialLang=18;
}
message BindOpMobileForRegResponse{
optional BaseResponse baseResponse = 1;
optional string AuthTicket = 10;
optional BuiltinIPList BuiltinIPList=8;
optional string Cc = 12;
optional string FormatedMobile = 0x10;
optional uint64 MmtlsControlBitFlag = 0x12;
optional uint64 MobileCheckType = 0x15;
optional uint64 NeedSetPwd = 4;
optional NetworkControl NetworkControl = 9;
optional HostList NewHostList = 7;
optional uint64 ObsoleteItem1 = 13;
optional string PureMobile = 15;
optional string Pwd = 5;
optional string regSessionId = 0x16;
optional uint64 SafeDevice = 11;
optional SafeDeviceListV SafeDeviceList = 14;
optional ShowStyleKey ShowStyle = 0x11;
optional string SmsNo = 3;
optional string SmsUpCode = 0x13;
optional string SmsUpMobile=20;
optional string ticket=2;
optional string Username=6;
}
message SafeDeviceListV{
optional uint64 Count=1;
repeated SafeDeviceV SafeDeviceList=2;
}
message SafeDeviceV{
optional string Name=1;
optional string Uuid=2;
optional string DeviceType=3;
optional uint64 CreateTime=4;
}
+39
View File
@@ -0,0 +1,39 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message MassSendRequest{
optional BaseRequest baseRequest = 1;
optional uint64 cameraType=13;
optional string clientId=4;
optional uint64 compressType=0x11;
optional SKBuiltinString_ dataBuffer=7;
optional uint64 dataStartPos=8;
optional uint64 dataTotalLen=9;
optional uint64 isSendAgain=0x10;
optional uint64 mediaTime=6;
optional uint64 msgType=5;
optional string thumbAeskey=0x17;
optional SKBuiltinString_ thumbData=12;
optional uint64 thumbHeight=0x16;
optional uint64 thumbStartPos=11;
optional uint64 thumbTotalLen=10;
optional string thumbUrl=20;
optional uint64 thumbWith=0x15;
optional string toList=2;
optional uint64 toListCount=15;
optional string toListMd5=3;
optional string videoAeskey=0x18;
optional uint64 videoSource=14;
optional string videoUrl=0x13;
optional uint64 voiceFormat=0x12;
}
message MassSendResponse{
optional BaseResponse baseResponse = 1;
optional uint64 dataStartPos=2;
optional uint64 maxSupport=4;
optional uint64 thumbStartPos=3;
}
@@ -0,0 +1,21 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message OauthAuthorizeReq{
required BaseRequest BaseRequest = 1;
optional string OauthUrl=2;
optional string BizUsername=3;
optional uint32 Scene=4;
}
message OauthAuthorizeResp{
required BaseResponse BaseResponse = 1;
optional string AppName=4;
optional string AppIconUrl=5;
optional string RedirectUrl=6;
}
Binary file not shown.
Binary file not shown.
+100
View File
@@ -0,0 +1,100 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message LbsRequest{
required BaseRequest BaseRequest = 1;
optional uint64 opCode=2;
optional float longitude=3;
optional float latitude=4;
optional int64 precision=5;
optional string macAddr=6;
optional string cellId=7;
optional int64 gPSSource=8;
}
message LbsResponse{
optional BaseResponse baseResponse = 1;
optional uint64 contactCount=2;
repeated LbsContactInfo contactList=3;
optional uint64 flushTime=5;
optional uint64 isShowRoom=6;
optional uint64 roomMemberCount=7;
optional uint64 state=4;
}
message LbsContactInfo{
optional string alias=12;
optional string ntispamTicket=0x1a;
optional string bigHeadImgUrl=0x16;
optional string city=4;
optional CustomizedInfos customizedInfo=0x19;
optional string distance=6;
optional int64 headImgVersion=0x13;
optional uint64 imgStatus=8;
optional string myBrandList=0x18;
optional string nickName=2;
optional string province=3;
optional int64 sex=7;
optional string signature=5;
optional string smallHeadImgUrl=0x17;
optional SnsUserInfo SnsUserInfo=20;
optional string userName=1;
optional string verifyContent=11;
optional string verifyInfo=10;
optional string weibo=13;
optional uint64 weiboFlag=15;
optional string weiboNickname=14;
}
message CustomizedInfos{
optional uint64 brandFlag=1;
optional string externalInfo=2;
optional string brandInfo=3;
optional string brandIconURL=4;
}
message GetUserRankLikeCountRequest{
required BaseRequest BaseRequest = 1;
optional bool latestRank=2;
optional string rankId=3;
optional string appUsername=4;
optional string username=5;
}
message GetUserRankLikeCountResponse{
optional BaseResponse baseResponse = 1;
repeated AffectedUser affectedUserList=2;
repeated FriendLike friendLikeList=3;
repeated string follows=4;
optional string championCoverUrl=5;
optional string championMotto=6;
optional string rankId=7;
optional string shareTitle=8;
optional string fic=9;
optional bool hasCoverUrl=10;
optional string fId=11;
repeated LikeUser likeUserList=12;
optional bool fIf=13;
optional string fIn=14;
optional bool fIo=15;
optional int64 fIp=16;
optional string fIq=17;
}
message LikeUser{
optional int64 index=1;
optional string username=2;
optional int64 khq=3;
}
message FriendLike{
optional int64 oKf=1;
optional string username=2;
}
message AffectedUser{
optional int64 gwi=3;
optional int64 gwj=4;
optional int64 gwk=5;
optional int64 score=2;
optional string userName=1;
}
+123
View File
@@ -0,0 +1,123 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message DeviceRunningInfoNew {
required bytes Version = 1;
required uint32 Type = 2;
required bytes EncryptData = 3;
required uint32 Timestamp = 4;
required uint32 Unknown5 = 5;
required uint32 Unknown6 = 6;
}
message WCExtInfoNew {
optional Buffer_t Wcstf = 1 ;
optional Buffer_t Wcste = 2 ;
optional Buffer_t CcData = 3 ;
optional Buffer_t UserAttrInfo = 4 ;
optional Buffer_t AcgiDeviceInfo = 5 ;
optional Buffer_t AcgiTuring = 6 ;
optional Buffer_t DeviceToken = 7 ;
optional Buffer_t IosturingHuman = 101 ;
optional Buffer_t IosturingOwner = 102 ;
}
message SpamDataBody {
required int32 UnKnown1 = 1;
required uint32 TimeStamp = 2;
required int32 KeyHash = 3;
required string Yes1 = 11;
required string Yes2 = 12;
required string IosVersion = 13;
required string DeviceType = 14;
required int32 UnKnown2 = 15;
required string IdentifierForVendor = 16;
required string AdvertisingIdentifier = 17;
required string Carrier = 18;
required int32 BatteryInfo = 19;
required string NetworkName = 20;
required int32 NetType = 21;
required string AppBundleId = 22;
required string DeviceName = 23;
required string UserName = 24;
required int64 Unknown3 = 25;
required int64 Unknown4 = 26;
required int32 Unknown5 = 27;
required int32 Unknown6 = 28;
required string Lang = 29;
required string Country = 30;
required int32 Unknown7 = 31;
required string DocumentDir = 32;
required int32 Unknown8 = 33;
required int32 Unknown9 = 34;
required string HeadMD5 = 35;
required string AppUUID = 36;
required string SyslogUUID = 37;
required string Unknown10 = 38;
required string Unknown11 = 39;
required string AppName = 40;
optional string SshPath = 41;
optional string TempTest = 42;
optional string DevMD5 = 43;
optional string DevUser = 44;
optional string DevPrefix = 45;
repeated FileInfo AppFileInfo = 46;
required string Unknown12 = 47;
required int32 IsModify = 50;
required string ModifyMD5 = 51;
required int64 RqtHash = 52;
required uint64 Unknown53 = 53;
required uint64 Unknown54 = 54;
required uint64 Unknown55 = 55;
required int64 Unknown56 = 56;
required uint64 Unknown57 = 57;
required string Unknown58 = 58;
optional string Unknown59 = 59;
optional string Unknown60 = 60;
optional string Unknown61 = 61;
optional uint64 Unknown62 = 62;
optional string Unknown63 = 63;
optional string Unknown64 = 64;
optional uint64 Unknown70 = 70;
optional uint64 Unknown72 = 72;
optional uint64 Unknown82 = 82;
optional uint64 Unknown83 = 83;
optional uint64 Unknown84 = 84;
}
message FileInfo {
optional string Filepath = 1;
optional string Fileuuid = 2;
}
message NewClientCheckData {
optional int64 C32cData = 1;
optional int64 TimeStamp = 2;
optional bytes DataBody = 3;
}
message WCSTF {
required uint64 StartTime = 1;
required uint64 CheckTime = 2;
required uint32 Count = 3;
repeated uint64 EndTime = 4;
}
message WCSTE {
required string CheckId = 1;
required uint32 StartTime = 2;
required uint32 CheckTime = 3;
required uint32 Count1 = 4;
required uint32 Count2 = 5;
required uint32 Count3 = 6;
required uint64 Const1 = 7;
required uint64 Const2 = 8;
required uint64 Const3 = 9;
required uint64 Const4 = 10;
required uint64 Const5 = 11;
required uint64 Const6 = 12;
}
+159
View File
@@ -0,0 +1,159 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message SpamAndroidBody{
optional uint32 Loc=1;
optional uint32 Root=2;
optional uint32 Debug=3;
optional string PackageSign=4;
optional string RadioVersion=5;
optional string BuildVersion=6;
optional string DeviceId=7;
optional string AndroidId=8;
optional string SerialId=9;
optional string Model=10;
optional uint32 CpuCount=11;
optional string CpuBrand=12;
optional string CpuExt=13;
optional string WlanAddress=14;
optional string Ssid=15;
optional string Bssid=16;
optional string SimOperator=17;
optional string WifiName=18;
optional string BuildFP=19;
optional string BuildBoard=20;
optional string BuildBootLoader=21;
optional string BuildBrand=22;
optional string BuildDevice=23;
optional string BuildHardware=24;
optional string BuildProduct=25;
optional string BuildManufacturer=26;
optional string PhoneNum=27;
optional string NetType=28;
optional uint64 Qemu=29;
optional uint64 Modified=30;
optional uint64 Task=31;
optional string PackageName=32;
optional string AppName=33;
optional string DataDir=34;
optional string ClassLoader=35;
optional uint64 HardwareMask=38;
optional uint64 Luckpackcount=41;
optional string BaseAPKMD5=42;
optional string ClientVersion=43;
optional string TbVersion=44;
optional string Ip=45;
optional string Locale=46;
optional uint64 CallState=47;
optional uint64 KeyGuardSecure=48;
optional uint64 WifiOn=50;
optional uint64 XposeCall=51;
optional uint64 AdbEnable=53;
optional uint64 Monkey=54;
optional string SplashName=55;
optional string OsBinderProxy=56;
optional string StubProxy=57;
optional uint64 VirtualNet=58;
optional uint64 Vpn=59;
optional string SubScriberId=60;
optional string GsmSimSate=61;
optional string GsmSimOperator=62;
optional string GsmSimOperatorNumber=63;
optional string SoterId=64;
optional string KernelReleaseNumber=65;
optional uint64 UsbState=66;
optional string Sign=67;
optional uint64 PackageFlag=68;
optional uint64 AccessFlag=69;
optional uint64 Unkonwn=70;
optional uint64 TbVersionCrc=71;
optional string SfMD5=72;
optional string SfArmMD5=73;
optional string SfArm64MD5=74;
optional string SbMD5=75;
optional string SoterId2=76;
optional string WidevineDeviceID=77;
optional string FSID=78;
optional string Oaid=79;
optional uint64 TimeCheck=80;
optional uint64 NanoTime=81;
optional uint64 Refreshtime=83;
optional string SoftConfig=84;
optional bytes SoftData=85;
optional uint64 DebugFlags=86;
optional string RouteIFace=87;
optional uint64 TvSec=88;
optional uint64 TvUsec=89;
optional uint64 TvCheck=90;
optional bytes PkgHash3Encrypted=91;
optional uint64 pkgHash3Sum=92;
optional bytes EntranceClassLoaderNameEncrypted=93;
optional uint64 EntranceClassLoaderNameSum=94;
optional bytes ApkLeadingMD5Encrypted=95;
optional uint64 ApkLeadingMD5Sum=96;
optional bytes AppInstrumentationClassNameEncrypted=97;
optional uint64 AppInstrumentationClassNameSum=98;
optional bytes AmsBinderClassNameEncrypted=99;
optional uint64 AmsBinderClassNameSum=100;
optional bytes AmsSingletonClassNameEncrypted=101;
optional uint64 AmsSingletonClassNameSum=102;
optional bytes ApkSignatureEncrypted=103;
optional uint64 ApkSignatureSum=104;
optional bytes FrameworkMd5Encrypted=105;
optional uint64 FrameworkMd5Sum=106;
optional bytes FrameworkArmMd5Encrypted=107;
optional uint64 FrameworkArmMd5Sum=108;
optional bytes FrameworkArm64Md5Encrypted=109;
optional uint64 FrameworkArm64Md5Sum=110;
optional bytes BinMd5Encrypted=111;
optional uint64 BinMd5Sum=112;
optional bytes FsidEncrypted=113;
optional uint64 FsidSum=114;
optional uint64 RootFlags=115;
optional uint64 uid=116;
optional uint64 DebuggerFlags=117;
optional bytes ApkPathEncrypted=118;
optional uint64 apkPathEncrypted=119;
optional bytes RealApkPathEncrypted=120;
optional uint64 realApkPathSum=121;
optional bytes illegalLibraryEncrypted=122;
optional uint64 illegalLibrarySum=123;
optional bytes stackTraceEncrypted=124;
optional uint64 stackTraceSum=125;
optional ExtraSystemInfo extraSystemInfo=126;
optional uint64 binderFlags=127;
}
message ExtraSystemInfo{
optional bytes serviceNamesMd5Encrypted=1;
optional uint64 serviceNamesMd5Sum=2;
optional bytes systemAppMd5Encrypted=3;
optional uint64 systemAppMd5Sum=4;
optional bytes systemPrivateAppMd5Encrypted=5;
optional uint64 systemPrivateAppMd5Sum=6;
optional bytes vendorAppMd5Encrypted=7;
optional uint64 vendorAppMd5Sum=8;
optional bytes productAppMd5Encrypted=9;
optional uint64 productAppMd5Sum=10;
optional bytes lsMd5Encrypted=11;
optional uint64 lsMd5Sum=12;
optional bytes frameworkResMd5Encrypted=13;
optional uint64 frameworkResMd5Sum=14;
optional bytes libCppMd5Encrypted=15;
optional uint64 libCppMd5Sum=16;
optional bytes linkerMd5Encrypted=17;
optional uint64 linkerMd5Sum=18;
optional bytes rootDirLastAccessTimeEncrypted=19;
optional uint64 rootDirLastAccessTimeSum=20;
optional bytes systemDirLastAccessTimeEncrypted=21;
optional uint64 systemDirLastAccessTimeSum=22;
optional bytes dataDirLastAccessTimeEncrypted=23;
optional uint64 dataDirLastAccessTimeSum=24;
optional bytes buildFPEncrypted=25;
optional uint64 buildFPSum=26;
optional bytes kernelEncrypted=27;
optional uint64 kernelSum=28;
}
+244
View File
@@ -0,0 +1,244 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message ModUserInfo {
optional uint32 bitFlag = 1;
optional SKBuiltinString userName = 2;
optional SKBuiltinString nickName = 3;
optional uint32 bindUin = 4;
optional SKBuiltinString bindEmail = 5;
optional SKBuiltinString bindMobile = 6;
optional uint32 status = 7;
optional uint32 imgLen = 8;
//图片 base64字符串
optional bytes imgBuf = 9;
optional uint32 sex = 10;
optional string province = 11;
optional string city = 12;
optional string signature = 13;
optional uint32 personalCard = 14;
optional DisturbSetting disturbSetting = 15;
optional uint32 pluginFlag = 16;
optional uint32 verifyFlag = 17;
optional string verifyInfo = 18;
optional uint32 point = 19;
optional uint32 experience = 20;
optional uint32 level = 21;
optional uint32 levelLowExp = 22;
optional uint32 levelHighExp = 23;
optional string weibo = 24;
optional uint32 pluginSwitch = 25;
optional GmailList gmailList = 26;
optional string alias = 27;
optional string weiboNickname = 28;
optional uint32 weiboFlag = 29;
optional uint32 faceBookFlag = 30;
optional int64 fbuserId = 31;
optional string fbuserName = 32;
optional uint32 albumStyle = 33;
optional uint32 albumFlag = 34;
optional string albumBgimgId = 35;
optional uint32 txnewsCategory = 36;
optional string fbtoken = 37;
optional string country = 38;
}
message DisturbSetting {
optional uint32 nightSetting = 1;
optional DisturbTimeSpan nightTime = 2;
optional uint32 allDaySetting = 3;
optional DisturbTimeSpan allDayTime = 4;
}
message DisturbTimeSpan {
optional uint32 beginTime = 1;
optional uint32 endTime = 2;
}
message GmailList {
optional uint32 count = 1;
}
message DelContact {
optional SKBuiltinString userName = 1;
optional uint32 deleteContactScene = 2;
}
message DelChatContact {
optional SKBuiltinString userName = 1;
}
message ModChatRoomMember {
optional SKBuiltinString userName = 1;
optional SKBuiltinString nickName = 2;
optional SKBuiltinString pyinitial = 3;
optional SKBuiltinString quanPin = 4;
optional uint32 sex = 5;
optional SKBuiltinString_ imgBuf = 6;
optional uint32 imgFlag = 7;
optional SKBuiltinString remark = 8;
optional SKBuiltinString remarkPyinitial = 9;
optional SKBuiltinString remarkQuanPin = 10;
optional uint32 contactType = 11;
optional string province = 12;
optional string city = 13;
optional string signature = 14;
optional uint32 personalCard = 15;
optional uint32 verifyFlag = 16;
optional string verifyInfo = 17;
optional string weibo = 18;
optional string verifyContent = 19;
optional string weiboNickname = 20;
optional uint32 weiboFlag = 21;
optional uint32 albumStyle = 22;
optional uint32 albumFlag = 23;
optional string albumBgimgId = 24;
optional string alias = 25;
optional SnsUserInfo snsUserInfo = 26;
optional string country = 27;
optional string bigHeadImgUrl = 28;
optional string smallHeadImgUrl = 29;
optional string myBrandList = 30;
optional CustomizedInfo customizedInfo = 31;
}
message QuitChatRoom {
optional SKBuiltinString chatRoomName = 1;
optional SKBuiltinString userName = 2;
}
message ModChatRoomNotify {
optional SKBuiltinString chatRoomName = 1;
optional uint32 status = 2;
}
message InviteFriendOpen {
optional string userName = 1;
optional uint32 friendType = 2;
}
message FunctionSwitch {
optional uint32 functionId = 1;
optional uint32 switchValue = 2;
}
message ModChatRoomTopic {
optional SKBuiltinString chatRoomName = 1;
optional SKBuiltinString chatRoomTopic = 2;
}
message ModBottleContact {
optional string userName = 1;
optional uint32 type = 2;
optional uint32 sex = 3;
optional string city = 4;
optional string province = 5;
optional string signature = 6;
optional uint32 imgFlag = 7;
optional uint32 hdimgFlag = 8;
optional string country = 9;
optional string bigHeadImgUrl = 10;
optional string smallHeadImgUrl = 11;
}
message ModUserImg {
optional uint32 imgType = 1;
optional uint32 imgLen = 2;
//图片 base64字符串
optional bytes imgBuf = 3;
optional string imgMd5 = 4;
optional string bigHeadImgUrl = 5;
optional string smallHeadImgUrl = 6;
}
message UserInfoExt {
optional SnsUserInfo snsUserInfo = 1;
optional string myBrandList = 2;
optional string msgPushSound = 3;
optional string voipPushSound = 4;
optional uint32 bigChatRoomSize = 5;
optional uint32 bigChatRoomQuota = 6;
optional uint32 bigChatRoomInvite = 7;
optional string safeMobile = 8;
optional string bigHeadImgUrl = 9;
optional string smallHeadImgUrl = 10;
optional uint32 mainAcctType = 11;
optional SKBuiltinString extXml = 12;
optional SafeDeviceList safeDeviceList = 13;
optional uint32 safeDevice = 14;
optional uint32 grayscaleFlag = 15;
optional string googleContactName = 16;
optional string idcardNum = 17;
optional string realName = 18;
optional string regCountry = 19;
optional string bbppid = 20;
optional string bbpin = 21;
optional string bbmnickName = 22;
optional LinkedinContactItem linkedinContactItem = 23;
optional string kfinfo = 24;
optional PatternLockInfo patternLockInfo = 25;
optional string securityDeviceId = 26;
optional uint32 payWalletType = 27;
optional string weiDianInfo = 28;
optional uint32 walletRegion = 29;
optional int64 extStatus = 30;
optional string f2FpushSound = 31;
optional uint32 userStatus = 32;
optional int64 paySetting = 33;
}
message SafeDeviceList {
optional uint32 count = 1;
}
message PatternLockInfo {
optional uint32 patternVersion = 1;
optional SKBuiltinString_ sign = 2;
optional uint32 lockStatus = 3;
}
message SnsActionGroup {
optional uint64 id = 1;
optional uint64 parentId = 2;
optional SnsAction currentAction = 3;
optional SnsAction referAction = 4;
optional string clientId = 5;
optional uint32 objectCreateTime = 6;
}
message SnsAction {
optional string fromUsername = 1;
optional string toUsername = 2;
optional string fromNickname = 3;
optional string toNickname = 4;
optional uint32 type = 5;
optional uint32 source = 6;
optional uint32 createTime = 7;
optional string content = 8;
optional uint32 replyCommentId = 9;
optional uint32 commentId = 10;
optional uint32 isNotRichText = 11;
optional int64 replyCommentId2 = 12;
optional int64 commentId2 = 13;
optional SKBuiltinString_ hbbuffer = 14;
optional uint32 commentFlag = 15;
optional RemindFriendsInfo remindFriendsInfo = 16;
}
message RemindFriendsInfo {
optional uint32 adgroupId = 1;
optional SKBuiltinString_ sourceInfo = 2;
optional SKBuiltinString_ selfInfo = 3;
optional SKBuiltinString_ paidInfo = 4;
optional SKBuiltinString_ extraInfo = 5;
optional uint64 adgroupId64 = 6;
}
message NewDelMsg {
optional string fromUserName = 1;
optional string toUserName = 2;
optional uint32 msgId = 3;
optional uint32 msgType = 4;
optional int64 newMsgId = 5;
}
message SyncControl {
optional uint32 useInitContact = 1;
}
message GetProfileRequest {
optional BaseRequest baseRequest = 1;
optional string userName = 2;
}
message GetProfileResponse {
optional BaseResponse baseResponse = 1;
optional ModUserInfo userInfo = 2;
optional UserInfoExt userInfoExt = 3;
}
+21
View File
@@ -0,0 +1,21 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message oplogUserNameRequest{
optional uint32 CmId=1;
optional userInfo userInfo=2;
}
message userInfo{
optional uint32 code=1;
optional infoNew infoNew=2;
}
message infoNew{
optional uint32 infoCode=1;
optional string nickName=2;
}
File diff suppressed because it is too large Load Diff
+25
View File
@@ -0,0 +1,25 @@
syntax = "proto2";
import "wechat.proto";
package wechat_proto;
option go_package = "../wechat";
message CheckCanSetAliasReq {
optional BaseRequest BaseRequest = 1;
}
message CheckCanSetAliasResp {
optional BaseResponse BaseResponse = 1;
repeated CheckCanSetAliasResult results = 2;
optional string ticket = 3;
optional uint32 verifyType = 4;
optional string verifyUrl = 5;
}
message CheckCanSetAliasResult {
optional string title = 1;
optional string desc = 2;
optional string result = 3;
optional bool isPass = 4;
}
+103
View File
@@ -0,0 +1,103 @@
syntax = "proto2";
import "wechat.proto";
import "friendgroup.proto";
package wechat_proto;
option go_package = "../wechat";
// 下载 CDN 视频 请求体
message DownloadVideoRequest {
optional BaseRequest baseRequest = 1;
optional uint32 msgId = 2;
optional uint32 totalLen = 3;
optional uint32 startPos = 4;
optional uint32 networkEnv = 5;
optional uint32 mxPackSize = 6;
optional uint64 newMsgId = 7;
}
// 下载 CDN 视频 响应体
message DownloadVideoResponse {
optional BaseResponse baseResponse = 1;
optional uint32 msgId = 2;
optional uint32 totalLen = 3;
optional uint32 startPos = 4;
optional SKBuiltinString_ data = 5;
optional uint64 newMsgId = 6;
}
// 获取指定 wxid 用户朋友圈 响应体(SnsUserPageResponse)
message SnsUserPageResponseNew {
optional BaseResponse baseResponse = 1;
optional string firstPageMd5 = 2;
optional uint32 objectCount = 3;
repeated SnsObjectNew objectList = 4;
optional uint32 objectTotalCount = 5;
optional SnsUserInfo snsUserInfo = 6;
optional uint32 newRequestTime = 7;
optional uint32 objectCountForSameMd5 = 8;
optional SnsServerConfig serverConfig = 9;
optional int64 limitedId = 10;
optional int64 continueId = 11;
optional string retTips = 12;
}
// 获取指定 wxid 用户朋友圈 响应体(SnsUserPageResponse) 的朋友圈内容详情(SnsObject)
message SnsObjectNew {
optional uint64 id = 1;
optional string username = 2;
optional string nickname = 3;
optional uint32 createTime = 4;
optional SKBuiltinString_ objectDesc = 5;
optional uint32 likeFlag = 6;
optional uint32 likeCount = 7;
optional uint32 likeUserListCount = 8;
// 点赞好友列表
repeated SnsCommentInfo likeUserList = 9;
optional uint32 commentCount = 10;
optional uint32 commentUserListCount = 11;
// 评论好友列表
repeated SnsCommentInfo commentUserList = 12;
optional uint32 withUserCount = 13;
optional uint32 withUserListCount = 14;
// 发送朋友圈时,提到的用户列表
repeated SnsCommentInfo withUserList = 15;
optional uint32 extFlag = 16;
optional uint32 noChange = 17;
optional uint32 groupCount = 18;
// 暂时不知道做什么用
repeated SnsGroup groupList = 19;
optional uint32 isNotRichText = 20;
optional string referUsername = 21;
optional uint64 referId = 22;
optional uint32 blackListCount = 23;
// 不可见的朋友
repeated SKBuiltinString blackList = 24;
optional uint32 deleteFlag = 25;
optional uint32 groupUserCount = 26;
// 可见的朋友
repeated SKBuiltinString groupUser = 27;
optional SKBuiltinString_ objectOperations = 28;
optional SnsRedEnvelops snsRedEnvelops = 29;
optional PreDownloadInfo preDownloadInfo = 30;
optional SnsWeAppInfo weAppInfo = 31;
// 需要修改为 clientsdk/baseinfo/snsdefine.go 的 TimelineObject
// optional TimelineObject objectInfo = 32;
// ObjectInfo *proto_ref.TimelineObject
optional SKBuiltinString_ objectInfo = 32;
}
// 撤回消息
message RevokeMsgRequestNew {
optional BaseRequest baseRequest = 1;
optional string clientMsgId = 2;
optional uint64 newClientMsgId = 3;
optional uint64 createTime = 4;
optional uint64 indexOfRequest = 5;
optional string FromUserName = 6;
optional string ToUserName = 7;
optional uint64 MsgId = 8;
optional uint64 NewMsgId = 9;
}