diff options
Diffstat (limited to 'protocols/WhatsAppWeb/src/proto.h')
-rw-r--r-- | protocols/WhatsAppWeb/src/proto.h | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/protocols/WhatsAppWeb/src/proto.h b/protocols/WhatsAppWeb/src/proto.h index 137c42e60e..2ff8731eb9 100644 --- a/protocols/WhatsAppWeb/src/proto.h +++ b/protocols/WhatsAppWeb/src/proto.h @@ -15,6 +15,16 @@ Copyright © 2019-22 George Hazan class WhatsAppProto; typedef void (WhatsAppProto:: *WA_PKT_HANDLER)(const WANode &node); +enum WAMSG +{ + Chat, + GroupChat, + DirectStatus, + OtherStatus, + PeerBroadcast, + OtherBroadcast +}; + struct WARequest { WARequest(const CMStringA &_1, WA_PKT_HANDLER _2, void *_3 = nullptr) : @@ -28,6 +38,17 @@ struct WARequest void *pUserInfo; }; +struct WADevice +{ + WADevice(const char *_1, int _2) : + jid(_1), + key_index(_2) + {} + + WAJid jid; + int key_index; +}; + struct WAPersistentHandler { WAPersistentHandler(const char *_1, const char *_2, const char *_3, const char *_4, WA_PKT_HANDLER _5) : @@ -158,6 +179,8 @@ class WhatsAppProto : public PROTO<WhatsAppProto> mir_cs m_csOwnMessages; OBJLIST<WAOwnMessage> m_arOwnMsgs; + OBJLIST<WADevice> m_arDevices; + WAUser* FindUser(const char *szId); WAUser* AddUser(const char *szId, bool bTemporary); @@ -214,12 +237,14 @@ class WhatsAppProto : public PROTO<WhatsAppProto> void OnProcessHandshake(const void *pData, int cbLen); void InitPersistentHandlers(); + void OnAccountSync(const WANode &node); void OnIqBlockList(const WANode &node); void OnIqCountPrekeys(const WANode &node); void OnIqDoNothing(const WANode &node); void OnIqPairDevice(const WANode &node); void OnIqPairSuccess(const WANode &node); void OnIqResult(const WANode &node); + void OnReceiveMessage(const WANode &node); void OnStreamError(const WANode &node); void OnSuccess(const WANode &node); |