248 lines
5.3 KiB
C
248 lines
5.3 KiB
C
// epb_MmBp.h
|
|
// WeChat Embedded Proto Buffer
|
|
//
|
|
// Generated by harlliu@tencent.com on 14-11-26.
|
|
// Copyright 2014 Tencent. All rights reserved.
|
|
//
|
|
|
|
// Version : 1.0.4
|
|
|
|
#ifndef __EPB_MMBP_H__
|
|
#define __EPB_MMBP_H__
|
|
|
|
#include "prf_defs.h"
|
|
#if (WX_AIRSYNC_CFG)
|
|
|
|
|
|
#include "epb.h"
|
|
|
|
typedef enum
|
|
{
|
|
ECI_none = 0,
|
|
ECI_req_auth = 10001,
|
|
ECI_req_sendData = 10002,
|
|
ECI_req_init = 10003,
|
|
ECI_resp_auth = 20001,
|
|
ECI_resp_sendData = 20002,
|
|
ECI_resp_init = 20003,
|
|
ECI_push_recvData = 30001,
|
|
ECI_push_switchView = 30002,
|
|
ECI_push_switchBackgroud = 30003,
|
|
ECI_err_decode = 29999
|
|
} EmCmdId;
|
|
|
|
typedef enum
|
|
{
|
|
EEC_system = -1,
|
|
EEC_needAuth = -2,
|
|
EEC_sessionTimeout = -3,
|
|
EEC_decode = -4,
|
|
EEC_deviceIsBlock = -5,
|
|
EEC_serviceUnAvalibleInBackground = -6,
|
|
EEC_deviceProtoVersionNeedUpdate = -7,
|
|
EEC_phoneProtoVersionNeedUpdate = -8,
|
|
EEC_maxReqInQueue = -9,
|
|
EEC_userExitWxAccount = -10
|
|
} EmErrorCode;
|
|
|
|
typedef enum
|
|
{
|
|
EAM_md5 = 1,
|
|
EAM_macNoEncrypt = 2
|
|
} EmAuthMethod;
|
|
|
|
typedef enum
|
|
{
|
|
EIRFF_userNickName = 0x1,
|
|
EIRFF_platformType = 0x2,
|
|
EIRFF_model = 0x4,
|
|
EIRFF_os = 0x8,
|
|
EIRFF_time = 0x10,
|
|
EIRFF_timeZone = 0x20,
|
|
EIRFF_timeString = 0x40
|
|
} EmInitRespFieldFilter;
|
|
|
|
typedef enum
|
|
{
|
|
EIS_deviceChat = 1,
|
|
EIS_autoSync = 2
|
|
} EmInitScence;
|
|
|
|
typedef enum
|
|
{
|
|
EPT_ios = 1,
|
|
EPT_andriod = 2,
|
|
EPT_wp = 3,
|
|
EPT_s60v3 = 4,
|
|
EPT_s60v5 = 5,
|
|
EPT_s40 = 6,
|
|
EPT_bb = 7
|
|
} EmPlatformType;
|
|
|
|
typedef enum
|
|
{
|
|
EDDT_manufatureSvr = 0,
|
|
EDDT_wxWristBand = 1,
|
|
EDDT_wxDeviceHtmlChatView = 10001
|
|
} EmDeviceDataType;
|
|
|
|
typedef enum
|
|
{
|
|
ESVO_enter = 1,
|
|
ESVO_exit = 2
|
|
} EmSwitchViewOp;
|
|
|
|
typedef enum
|
|
{
|
|
EVI_deviceChatView = 1,
|
|
EVI_deviceChatHtmlView = 2
|
|
} EmViewId;
|
|
|
|
typedef enum
|
|
{
|
|
ESBO_enterBackground = 1,
|
|
ESBO_enterForground = 2,
|
|
ESBO_sleep = 3
|
|
} EmSwitchBackgroundOp;
|
|
|
|
typedef struct
|
|
{
|
|
void *none;
|
|
} BaseRequest;
|
|
|
|
typedef struct
|
|
{
|
|
int32_t err_code;
|
|
bool has_err_msg;
|
|
CString err_msg;
|
|
} BaseResponse;
|
|
|
|
typedef struct
|
|
{
|
|
void *none;
|
|
} BasePush;
|
|
|
|
typedef struct
|
|
{
|
|
BaseRequest *base_request;
|
|
bool has_md5_device_type_and_device_id;
|
|
Bytes md5_device_type_and_device_id;
|
|
int32_t proto_version;
|
|
int32_t auth_proto;
|
|
EmAuthMethod auth_method;
|
|
bool has_aes_sign;
|
|
Bytes aes_sign;
|
|
bool has_mac_address;
|
|
Bytes mac_address;
|
|
bool has_time_zone;
|
|
String time_zone;
|
|
bool has_language;
|
|
String language;
|
|
bool has_device_name;
|
|
String device_name;
|
|
} AuthRequest;
|
|
|
|
typedef struct
|
|
{
|
|
BaseResponse *base_response;
|
|
CBytes aes_session_key;
|
|
} AuthResponse;
|
|
|
|
typedef struct
|
|
{
|
|
BaseRequest *base_request;
|
|
bool has_resp_field_filter;
|
|
Bytes resp_field_filter;
|
|
bool has_challenge;
|
|
Bytes challenge;
|
|
} InitRequest;
|
|
|
|
typedef struct
|
|
{
|
|
BaseResponse *base_response;
|
|
uint32_t user_id_high;
|
|
uint32_t user_id_low;
|
|
bool has_challeange_answer;
|
|
uint32_t challeange_answer;
|
|
bool has_init_scence;
|
|
EmInitScence init_scence;
|
|
bool has_auto_sync_max_duration_second;
|
|
uint32_t auto_sync_max_duration_second;
|
|
bool has_user_nick_name;
|
|
CString user_nick_name;
|
|
bool has_platform_type;
|
|
EmPlatformType platform_type;
|
|
bool has_model;
|
|
CString model;
|
|
bool has_os;
|
|
CString os;
|
|
bool has_time;
|
|
int32_t time;
|
|
bool has_time_zone;
|
|
int32_t time_zone;
|
|
bool has_time_string;
|
|
CString time_string;
|
|
} InitResponse;
|
|
|
|
typedef struct
|
|
{
|
|
BaseRequest *base_request;
|
|
Bytes data;
|
|
bool has_type;
|
|
EmDeviceDataType type;
|
|
} SendDataRequest;
|
|
|
|
typedef struct
|
|
{
|
|
BaseResponse *base_response;
|
|
bool has_data;
|
|
CBytes data;
|
|
} SendDataResponse;
|
|
|
|
typedef struct
|
|
{
|
|
BasePush *base_push;
|
|
CBytes data;
|
|
bool has_type;
|
|
EmDeviceDataType type;
|
|
} RecvDataPush;
|
|
|
|
typedef struct
|
|
{
|
|
BasePush *base_push;
|
|
EmSwitchViewOp switch_view_op;
|
|
EmViewId view_id;
|
|
} SwitchViewPush;
|
|
|
|
typedef struct
|
|
{
|
|
BasePush *base_push;
|
|
EmSwitchBackgroundOp switch_background_op;
|
|
} SwitchBackgroudPush;
|
|
|
|
BaseResponse *epb_unpack_base_response(const uint8_t *buf, int buf_len);
|
|
void epb_unpack_base_response_free(BaseResponse *response);
|
|
int epb_auth_request_pack_size(AuthRequest *request);
|
|
int epb_pack_auth_request(AuthRequest *request, uint8_t *buf, int buf_len);
|
|
AuthResponse *epb_unpack_auth_response(const uint8_t *buf, int buf_len);
|
|
void epb_unpack_auth_response_free(AuthResponse *response);
|
|
int epb_init_request_pack_size(InitRequest *request);
|
|
int epb_pack_init_request(InitRequest *request, uint8_t *buf, int buf_len);
|
|
InitResponse *epb_unpack_init_response(const uint8_t *buf, int buf_len);
|
|
void epb_unpack_init_response_free(InitResponse *response);
|
|
int epb_send_data_request_pack_size(SendDataRequest *request);
|
|
int epb_pack_send_data_request(SendDataRequest *request, uint8_t *buf, int buf_len);
|
|
SendDataResponse *epb_unpack_send_data_response(const uint8_t *buf, int buf_len);
|
|
void epb_unpack_send_data_response_free(SendDataResponse *response);
|
|
RecvDataPush *epb_unpack_recv_data_push(const uint8_t *buf, int buf_len);
|
|
void epb_unpack_recv_data_push_free(RecvDataPush *push);
|
|
SwitchViewPush *epb_unpack_switch_view_push(const uint8_t *buf, int buf_len);
|
|
void epb_unpack_switch_view_push_free(SwitchViewPush *push);
|
|
SwitchBackgroudPush *epb_unpack_switch_backgroud_push(const uint8_t *buf, int buf_len);
|
|
void epb_unpack_switch_backgroud_push_free(SwitchBackgroudPush *push);
|
|
|
|
|
|
#endif ///WX_AIRSYNC_CFG
|
|
|
|
#endif ///__EPB_MMBP_H__
|
|
|