@softtynet/zca-js 2.2.9 → 2.2.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +18 -182
- package/dist/Errors/ZaloApiError.js +1 -0
- package/dist/apis/auth/decryptGids.d.ts +6 -0
- package/dist/apis/auth/decryptGids.js +30 -0
- package/dist/apis/auth/encryptGids.d.ts +4 -0
- package/dist/apis/auth/encryptGids.js +24 -0
- package/dist/apis/auth/getContext.d.ts +1 -0
- package/dist/apis/auth/getContext.js +4 -0
- package/dist/apis/auth/getCookie.d.ts +1 -0
- package/dist/apis/auth/getCookie.js +9 -0
- package/dist/apis/auth/getListDevice.d.ts +10 -0
- package/dist/apis/auth/getListDevice.js +22 -0
- package/dist/apis/auth/getNoisedIds.d.ts +9 -0
- package/dist/apis/auth/getNoisedIds.js +67 -0
- package/dist/apis/auth/getOwnId.d.ts +1 -0
- package/dist/apis/auth/getOwnId.js +4 -0
- package/dist/apis/auth/getQR.d.ts +4 -0
- package/dist/apis/auth/getQR.js +29 -0
- package/dist/apis/auth/keepAlive.d.ts +5 -0
- package/dist/apis/auth/keepAlive.js +24 -0
- package/dist/apis/auth/lostFocus.d.ts +4 -0
- package/dist/apis/auth/lostFocus.js +23 -0
- package/dist/apis/auth/scanURL.d.ts +4 -0
- package/dist/apis/auth/scanURL.js +28 -0
- package/dist/apis/auth/updateActiveStatus.d.ts +4 -0
- package/dist/apis/auth/updateActiveStatus.js +27 -0
- package/dist/apis/auth/updateLang.d.ts +6 -0
- package/dist/apis/auth/updateLang.js +30 -0
- package/dist/apis/board/addPollOptions.d.ts +14 -0
- package/dist/apis/board/addPollOptions.js +26 -0
- package/dist/apis/board/createNote.d.ts +7 -0
- package/dist/apis/board/createNote.js +47 -0
- package/dist/apis/board/createPoll.d.ts +36 -0
- package/dist/apis/board/createPoll.js +39 -0
- package/dist/apis/board/createReminder.d.ts +12 -0
- package/dist/apis/board/createReminder.js +62 -0
- package/dist/apis/board/editNote.d.ts +17 -0
- package/dist/apis/board/editNote.js +46 -0
- package/dist/apis/board/editReminder.d.ts +13 -0
- package/dist/apis/board/editReminder.js +60 -0
- package/dist/apis/board/getListBoard.d.ts +21 -0
- package/dist/apis/board/getListBoard.js +44 -0
- package/dist/apis/board/getListPinTopics.d.ts +5 -0
- package/dist/apis/board/getListPinTopics.js +28 -0
- package/dist/apis/board/getListReminder.d.ts +28 -0
- package/dist/apis/board/getListReminder.js +49 -0
- package/dist/apis/board/getPollDetail.d.ts +3 -0
- package/dist/apis/board/getPollDetail.js +30 -0
- package/dist/apis/board/getReminder.d.ts +3 -0
- package/dist/apis/board/getReminder.js +25 -0
- package/dist/apis/board/getReminderResponses.d.ts +5 -0
- package/dist/apis/board/getReminderResponses.js +24 -0
- package/dist/apis/board/lockPoll.d.ts +2 -0
- package/dist/apis/board/lockPoll.js +28 -0
- package/dist/apis/board/removeReminder.d.ts +3 -0
- package/dist/apis/board/removeReminder.js +40 -0
- package/dist/apis/board/sharePoll.d.ts +2 -0
- package/dist/apis/board/sharePoll.js +28 -0
- package/dist/apis/board/votePoll.d.ts +5 -0
- package/dist/apis/board/votePoll.js +29 -0
- package/dist/apis/business/addQuickMessage.d.ts +11 -0
- package/dist/apis/business/addQuickMessage.js +60 -0
- package/dist/apis/business/createAutoReply.d.ts +14 -0
- package/dist/apis/business/createAutoReply.js +37 -0
- package/dist/apis/business/createBankAccount.d.ts +8 -0
- package/dist/apis/business/createBankAccount.js +32 -0
- package/dist/apis/business/createCatalog.d.ts +7 -0
- package/dist/apis/business/createCatalog.js +29 -0
- package/dist/apis/business/createProductCatalog.d.ts +23 -0
- package/dist/apis/business/createProductCatalog.js +50 -0
- package/dist/apis/business/deleteAutoReply.d.ts +5 -0
- package/dist/apis/business/deleteAutoReply.js +29 -0
- package/dist/apis/business/deleteBankAccount.d.ts +11 -0
- package/dist/apis/business/deleteBankAccount.js +32 -0
- package/dist/apis/business/deleteCatalog.d.ts +2 -0
- package/dist/apis/business/deleteCatalog.js +28 -0
- package/dist/apis/business/deleteProductCatalog.d.ts +10 -0
- package/dist/apis/business/deleteProductCatalog.js +31 -0
- package/dist/apis/business/getAutoReplyList.d.ts +6 -0
- package/dist/apis/business/getAutoReplyList.js +24 -0
- package/dist/apis/business/getBizAccount.d.ts +24 -0
- package/dist/apis/business/getBizAccount.js +27 -0
- package/dist/apis/business/getCatalogList.d.ts +18 -0
- package/dist/apis/business/getCatalogList.js +31 -0
- package/dist/apis/business/getLabels.d.ts +7 -0
- package/dist/apis/business/getLabels.js +28 -0
- package/dist/apis/business/getListBank.d.ts +5 -0
- package/dist/apis/business/getListBank.js +20 -0
- package/dist/apis/business/getListBankAccount.d.ts +7 -0
- package/dist/apis/business/getListBankAccount.js +27 -0
- package/dist/apis/business/getProductCatalogList.d.ts +20 -0
- package/dist/apis/business/getProductCatalogList.js +32 -0
- package/dist/apis/business/getQuickMessageList.d.ts +7 -0
- package/dist/apis/business/getQuickMessageList.js +24 -0
- package/dist/apis/business/registerCatalog.d.ts +2 -0
- package/dist/apis/business/registerCatalog.js +27 -0
- package/dist/apis/business/removeQuickMessage.d.ts +5 -0
- package/dist/apis/business/removeQuickMessage.js +27 -0
- package/dist/apis/business/updateAutoReply.d.ts +15 -0
- package/dist/apis/business/updateAutoReply.js +38 -0
- package/dist/apis/business/updateBankAccount.d.ts +9 -0
- package/dist/apis/business/updateBankAccount.js +31 -0
- package/dist/apis/business/updateCatalog.d.ts +11 -0
- package/dist/apis/business/updateCatalog.js +30 -0
- package/dist/apis/business/updateLabels.d.ts +15 -0
- package/dist/apis/business/updateLabels.js +34 -0
- package/dist/apis/business/updateProductCatalog.d.ts +25 -0
- package/dist/apis/business/updateProductCatalog.js +51 -0
- package/dist/apis/business/updateQuickMessage.d.ts +11 -0
- package/dist/apis/business/updateQuickMessage.js +61 -0
- package/dist/apis/business/uploadProductPhoto.d.ts +14 -0
- package/dist/apis/business/uploadProductPhoto.js +50 -0
- package/dist/apis/call/cancelVoiceCall.d.ts +7 -0
- package/dist/apis/call/cancelVoiceCall.js +40 -0
- package/dist/apis/call/endVoiceCall.d.ts +5 -0
- package/dist/apis/call/endVoiceCall.js +38 -0
- package/dist/apis/call/sendVoiceCall.d.ts +44 -0
- package/dist/apis/call/sendVoiceCall.js +113 -0
- package/dist/apis/chat/addReaction.d.ts +18 -0
- package/dist/apis/chat/addReaction.js +297 -0
- package/dist/apis/chat/addUnreadMark.d.ts +8 -0
- package/dist/apis/chat/addUnreadMark.js +52 -0
- package/dist/apis/chat/deleteChat.d.ts +19 -0
- package/dist/apis/chat/deleteChat.js +50 -0
- package/dist/apis/chat/deleteMessage.d.ts +14 -0
- package/dist/apis/chat/deleteMessage.js +52 -0
- package/dist/apis/chat/forwardMessage.d.ts +24 -0
- package/dist/apis/chat/forwardMessage.js +92 -0
- package/dist/apis/chat/getArchivedChatList.d.ts +5 -0
- package/dist/apis/chat/getArchivedChatList.js +23 -0
- package/dist/apis/chat/getAutoDeleteChat.d.ts +9 -0
- package/dist/apis/chat/getAutoDeleteChat.js +21 -0
- package/dist/apis/chat/getHiddenConversations.d.ts +11 -0
- package/dist/apis/chat/getHiddenConversations.js +23 -0
- package/dist/apis/chat/getLastSeen.d.ts +11 -0
- package/dist/apis/chat/getLastSeen.js +38 -0
- package/dist/apis/chat/getLastSeenReaction.d.ts +9 -0
- package/dist/apis/chat/getLastSeenReaction.js +27 -0
- package/dist/apis/chat/getMute.d.ts +13 -0
- package/dist/apis/chat/getMute.js +22 -0
- package/dist/apis/chat/getPinConversations.d.ts +5 -0
- package/dist/apis/chat/getPinConversations.js +22 -0
- package/dist/apis/chat/getRecentSearchList.d.ts +6 -0
- package/dist/apis/chat/getRecentSearchList.js +25 -0
- package/dist/apis/chat/getUnreadMark.d.ts +14 -0
- package/dist/apis/chat/getUnreadMark.js +30 -0
- package/dist/apis/chat/parseLink.d.ts +21 -0
- package/dist/apis/chat/parseLink.js +27 -0
- package/dist/apis/chat/preloadConversations.d.ts +28 -0
- package/dist/apis/chat/preloadConversations.js +78 -0
- package/dist/apis/chat/removeUnreadMark.d.ts +8 -0
- package/dist/apis/chat/removeUnreadMark.js +50 -0
- package/dist/apis/chat/resetHiddenConversPin.d.ts +2 -0
- package/dist/apis/chat/resetHiddenConversPin.js +20 -0
- package/dist/apis/chat/sendBankCard.d.ts +9 -0
- package/dist/apis/chat/sendBankCard.js +36 -0
- package/dist/apis/chat/sendCard.d.ts +10 -0
- package/dist/apis/chat/sendCard.js +58 -0
- package/dist/apis/chat/sendDeliveredEvent.d.ts +16 -0
- package/dist/apis/chat/sendDeliveredEvent.js +62 -0
- package/dist/apis/chat/sendLink.d.ts +10 -0
- package/dist/apis/chat/sendLink.js +60 -0
- package/dist/apis/chat/sendMessage.d.ts +99 -0
- package/dist/apis/chat/sendMessage.js +460 -0
- package/dist/apis/chat/sendReport.d.ts +17 -0
- package/dist/apis/chat/sendReport.js +53 -0
- package/dist/apis/chat/sendSeenEvent.d.ts +16 -0
- package/dist/apis/chat/sendSeenEvent.js +66 -0
- package/dist/apis/chat/sendSticker.d.ts +10 -0
- package/dist/apis/chat/sendSticker.js +57 -0
- package/dist/apis/chat/sendTypingEvent.d.ts +5 -0
- package/dist/apis/chat/sendTypingEvent.js +37 -0
- package/dist/apis/chat/sendVideo.d.ts +35 -0
- package/dist/apis/chat/sendVideo.js +117 -0
- package/dist/apis/chat/sendVoice.d.ts +12 -0
- package/dist/apis/chat/sendVoice.js +72 -0
- package/dist/apis/chat/setHiddenConversations.d.ts +3 -0
- package/dist/apis/chat/setHiddenConversations.js +39 -0
- package/dist/apis/chat/setMute.d.ts +20 -0
- package/dist/apis/chat/setMute.js +67 -0
- package/dist/apis/chat/setPinnedConversations.d.ts +3 -0
- package/dist/apis/chat/setPinnedConversations.js +34 -0
- package/dist/apis/chat/undo.d.ts +9 -0
- package/dist/apis/chat/undo.js +42 -0
- package/dist/apis/chat/undoMultiMessage.d.ts +9 -0
- package/dist/apis/chat/undoMultiMessage.js +46 -0
- package/dist/apis/chat/updateArchivedChatList.d.ts +10 -0
- package/dist/apis/chat/updateArchivedChatList.js +34 -0
- package/dist/apis/chat/updateAutoDeleteChat.d.ts +9 -0
- package/dist/apis/chat/updateAutoDeleteChat.js +40 -0
- package/dist/apis/chat/updateHiddenConversPin.d.ts +2 -0
- package/dist/apis/chat/updateHiddenConversPin.js +30 -0
- package/dist/apis/chat/updateRecentSearch.d.ts +11 -0
- package/dist/apis/chat/updateRecentSearch.js +40 -0
- package/dist/apis/friend/acceptFriendRequest.d.ts +2 -0
- package/dist/apis/friend/acceptFriendRequest.js +28 -0
- package/dist/apis/friend/blockUser.d.ts +2 -0
- package/dist/apis/friend/blockUser.js +28 -0
- package/dist/apis/friend/blockViewFeed.d.ts +2 -0
- package/dist/apis/friend/blockViewFeed.js +30 -0
- package/dist/apis/friend/changeFriendAlias.d.ts +2 -0
- package/dist/apis/friend/changeFriendAlias.js +27 -0
- package/dist/apis/friend/clearUnreadFriendRequests.d.ts +2 -0
- package/dist/apis/friend/clearUnreadFriendRequests.js +29 -0
- package/dist/apis/friend/findUser.d.ts +3 -0
- package/dist/apis/friend/findUser.js +42 -0
- package/dist/apis/friend/findUserByUsername.d.ts +3 -0
- package/dist/apis/friend/findUserByUsername.js +27 -0
- package/dist/apis/friend/getAliasList.d.ts +8 -0
- package/dist/apis/friend/getAliasList.js +27 -0
- package/dist/apis/friend/getAliasListV2.d.ts +10 -0
- package/dist/apis/friend/getAliasListV2.js +28 -0
- package/dist/apis/friend/getAllFriends.d.ts +3 -0
- package/dist/apis/friend/getAllFriends.js +34 -0
- package/dist/apis/friend/getBlockFriends.d.ts +6 -0
- package/dist/apis/friend/getBlockFriends.js +28 -0
- package/dist/apis/friend/getCloseFriends.d.ts +3 -0
- package/dist/apis/friend/getCloseFriends.js +20 -0
- package/dist/apis/friend/getExtraFriendInfo.d.ts +3 -0
- package/dist/apis/friend/getExtraFriendInfo.js +31 -0
- package/dist/apis/friend/getFriendBoardList.d.ts +5 -0
- package/dist/apis/friend/getFriendBoardList.js +26 -0
- package/dist/apis/friend/getFriendOnlines.d.ts +10 -0
- package/dist/apis/friend/getFriendOnlines.js +35 -0
- package/dist/apis/friend/getFriendRecommendations.d.ts +42 -0
- package/dist/apis/friend/getFriendRecommendations.js +27 -0
- package/dist/apis/friend/getFriendRequestStatus.d.ts +8 -0
- package/dist/apis/friend/getFriendRequestStatus.js +25 -0
- package/dist/apis/friend/getFriendsEmojiStatus.d.ts +17 -0
- package/dist/apis/friend/getFriendsEmojiStatus.js +28 -0
- package/dist/apis/friend/getLastReadContactTab.d.ts +4 -0
- package/dist/apis/friend/getLastReadContactTab.js +15 -0
- package/dist/apis/friend/getMultiUsersByPhones.d.ts +5 -0
- package/dist/apis/friend/getMultiUsersByPhones.js +39 -0
- package/dist/apis/friend/getPhonebookV2.d.ts +6 -0
- package/dist/apis/friend/getPhonebookV2.js +21 -0
- package/dist/apis/friend/getSentFriendRequest.d.ts +18 -0
- package/dist/apis/friend/getSentFriendRequest.js +24 -0
- package/dist/apis/friend/lastOnline.d.ts +7 -0
- package/dist/apis/friend/lastOnline.js +26 -0
- package/dist/apis/friend/readContactTab.d.ts +2 -0
- package/dist/apis/friend/readContactTab.js +26 -0
- package/dist/apis/friend/rejectFriendRequest.d.ts +2 -0
- package/dist/apis/friend/rejectFriendRequest.js +27 -0
- package/dist/apis/friend/removeFriend.d.ts +2 -0
- package/dist/apis/friend/removeFriend.js +28 -0
- package/dist/apis/friend/removeFriendAlias.d.ts +2 -0
- package/dist/apis/friend/removeFriendAlias.js +24 -0
- package/dist/apis/friend/sendFriendRequest.d.ts +2 -0
- package/dist/apis/friend/sendFriendRequest.js +39 -0
- package/dist/apis/friend/unblockUser.d.ts +2 -0
- package/dist/apis/friend/unblockUser.js +28 -0
- package/dist/apis/friend/undoFriendRequest.d.ts +2 -0
- package/dist/apis/friend/undoFriendRequest.js +27 -0
- package/dist/apis/group/addGroupBlockedMember.d.ts +2 -0
- package/dist/apis/group/addGroupBlockedMember.js +28 -0
- package/dist/apis/group/addGroupDeputy.d.ts +2 -0
- package/dist/apis/group/addGroupDeputy.js +30 -0
- package/dist/apis/group/addUserToGroup.d.ts +5 -0
- package/dist/apis/group/addUserToGroup.js +34 -0
- package/dist/apis/group/changeGroupAvatar.d.ts +3 -0
- package/dist/apis/group/changeGroupAvatar.js +44 -0
- package/dist/apis/group/changeGroupName.d.ts +4 -0
- package/dist/apis/group/changeGroupName.js +32 -0
- package/dist/apis/group/changeGroupOwner.d.ts +4 -0
- package/dist/apis/group/changeGroupOwner.js +30 -0
- package/dist/apis/group/createGroup.d.ts +28 -0
- package/dist/apis/group/createGroup.js +43 -0
- package/dist/apis/group/deleteGroupInviteBox.d.ts +9 -0
- package/dist/apis/group/deleteGroupInviteBox.js +27 -0
- package/dist/apis/group/disableGroupLink.d.ts +2 -0
- package/dist/apis/group/disableGroupLink.js +24 -0
- package/dist/apis/group/disperseGroup.d.ts +2 -0
- package/dist/apis/group/disperseGroup.js +28 -0
- package/dist/apis/group/enableGroupLink.d.ts +6 -0
- package/dist/apis/group/enableGroupLink.js +25 -0
- package/dist/apis/group/getAllGroups.d.ts +7 -0
- package/dist/apis/group/getAllGroups.js +10 -0
- package/dist/apis/group/getExtraGroupInfo.d.ts +7 -0
- package/dist/apis/group/getExtraGroupInfo.js +32 -0
- package/dist/apis/group/getGroupBlockedMember.d.ts +23 -0
- package/dist/apis/group/getGroupBlockedMember.js +28 -0
- package/dist/apis/group/getGroupChatHistory.d.ts +18 -0
- package/dist/apis/group/getGroupChatHistory.js +64 -0
- package/dist/apis/group/getGroupCloudMessageJump.d.ts +3 -0
- package/dist/apis/group/getGroupCloudMessageJump.js +46 -0
- package/dist/apis/group/getGroupInfo.d.ts +16 -0
- package/dist/apis/group/getGroupInfo.js +32 -0
- package/dist/apis/group/getGroupInviteBoxInfo.d.ts +32 -0
- package/dist/apis/group/getGroupInviteBoxInfo.js +37 -0
- package/dist/apis/group/getGroupInviteBoxList.d.ts +38 -0
- package/dist/apis/group/getGroupInviteBoxList.js +30 -0
- package/dist/apis/group/getGroupLinkDetail.d.ts +9 -0
- package/dist/apis/group/getGroupLinkDetail.js +25 -0
- package/dist/apis/group/getGroupLinkInfo.d.ts +34 -0
- package/dist/apis/group/getGroupLinkInfo.js +27 -0
- package/dist/apis/group/getGroupMembersInfo.d.ts +17 -0
- package/dist/apis/group/getGroupMembersInfo.js +24 -0
- package/dist/apis/group/getPendingGroupMembers.d.ts +11 -0
- package/dist/apis/group/getPendingGroupMembers.js +27 -0
- package/dist/apis/group/getQuotaCommunity.d.ts +8 -0
- package/dist/apis/group/getQuotaCommunity.js +27 -0
- package/dist/apis/group/getRelatedFriendGroup.d.ts +6 -0
- package/dist/apis/group/getRelatedFriendGroup.js +30 -0
- package/dist/apis/group/inviteUserToGroups.d.ts +10 -0
- package/dist/apis/group/inviteUserToGroups.js +30 -0
- package/dist/apis/group/joinGroupInviteBox.d.ts +2 -0
- package/dist/apis/group/joinGroupInviteBox.js +25 -0
- package/dist/apis/group/joinGroupLink.d.ts +2 -0
- package/dist/apis/group/joinGroupLink.js +27 -0
- package/dist/apis/group/leaveGroup.d.ts +4 -0
- package/dist/apis/group/leaveGroup.js +33 -0
- package/dist/apis/group/removeGroupBlockedMember.d.ts +2 -0
- package/dist/apis/group/removeGroupBlockedMember.js +28 -0
- package/dist/apis/group/removeGroupDeputy.d.ts +2 -0
- package/dist/apis/group/removeGroupDeputy.js +30 -0
- package/dist/apis/group/removeUserFromGroup.d.ts +4 -0
- package/dist/apis/group/removeUserFromGroup.js +34 -0
- package/dist/apis/group/reviewPendingMemberRequest.d.ts +14 -0
- package/dist/apis/group/reviewPendingMemberRequest.js +38 -0
- package/dist/apis/group/updateGroupSettings.d.ts +40 -0
- package/dist/apis/group/updateGroupSettings.js +43 -0
- package/dist/apis/group/upgradeGroupToCommunity.d.ts +2 -0
- package/dist/apis/group/upgradeGroupToCommunity.js +27 -0
- package/dist/apis/listen.d.ts +1 -132
- package/dist/apis/listen.js +1 -586
- package/dist/apis/login.js +9 -6
- package/dist/apis/loginQR.js +110 -68
- package/dist/apis/media/getConversationMedia.d.ts +26 -0
- package/dist/apis/media/getConversationMedia.js +38 -0
- package/dist/apis/media/getMediaStorePreview.d.ts +3 -0
- package/dist/apis/media/getMediaStorePreview.js +31 -0
- package/dist/apis/media/removeConversationMedia.d.ts +8 -0
- package/dist/apis/media/removeConversationMedia.js +30 -0
- package/dist/apis/media/uploadAttachment.d.ts +50 -0
- package/dist/apis/media/uploadAttachment.js +209 -0
- package/dist/apis/media/voiceToText.d.ts +4 -0
- package/dist/apis/media/voiceToText.js +29 -0
- package/dist/apis/profile/changeAccountAvatar.d.ts +3 -0
- package/dist/apis/profile/changeAccountAvatar.js +52 -0
- package/dist/apis/profile/deleteAvatar.d.ts +9 -0
- package/dist/apis/profile/deleteAvatar.js +27 -0
- package/dist/apis/profile/fetchAccountInfo.d.ts +5 -0
- package/dist/apis/profile/fetchAccountInfo.js +10 -0
- package/dist/apis/profile/getAvatarList.d.ts +12 -0
- package/dist/apis/profile/getAvatarList.js +28 -0
- package/dist/apis/profile/getAvatarUrlProfile.d.ts +7 -0
- package/dist/apis/profile/getAvatarUrlProfile.js +30 -0
- package/dist/apis/profile/getEmojiStatusConfig.d.ts +17 -0
- package/dist/apis/profile/getEmojiStatusConfig.js +22 -0
- package/dist/apis/profile/getFullAvatar.d.ts +5 -0
- package/dist/apis/profile/getFullAvatar.js +25 -0
- package/dist/apis/profile/getMiniProfile.d.ts +13 -0
- package/dist/apis/profile/getMiniProfile.js +34 -0
- package/dist/apis/profile/getProfileRank.d.ts +5 -0
- package/dist/apis/profile/getProfileRank.js +25 -0
- package/dist/apis/profile/getProfileVerificationStatus.d.ts +5 -0
- package/dist/apis/profile/getProfileVerificationStatus.js +20 -0
- package/dist/apis/profile/getSettings.d.ts +3 -0
- package/dist/apis/profile/getSettings.js +20 -0
- package/dist/apis/profile/getUserInfo.d.ts +8 -0
- package/dist/apis/profile/getUserInfo.js +44 -0
- package/dist/apis/profile/reuseAvatar.d.ts +2 -0
- package/dist/apis/profile/reuseAvatar.js +26 -0
- package/dist/apis/profile/updateProfile.d.ts +20 -0
- package/dist/apis/profile/updateProfile.js +42 -0
- package/dist/apis/profile/updateProfileBio.d.ts +2 -0
- package/dist/apis/profile/updateProfileBio.js +27 -0
- package/dist/apis/profile/updateSettings.d.ts +16 -0
- package/dist/apis/profile/updateSettings.js +90 -0
- package/dist/apis/sticker/getPersonalizedStickerList.d.ts +5 -0
- package/dist/apis/sticker/getPersonalizedStickerList.js +24 -0
- package/dist/apis/sticker/getStickerCategoriesV2.d.ts +17 -0
- package/dist/apis/sticker/getStickerCategoriesV2.js +21 -0
- package/dist/apis/sticker/getStickerCategoryData.d.ts +3 -0
- package/dist/apis/sticker/getStickerCategoryData.js +25 -0
- package/dist/apis/sticker/getStickerCategoryDetail.d.ts +3 -0
- package/dist/apis/sticker/getStickerCategoryDetail.js +24 -0
- package/dist/apis/sticker/getStickerHello.d.ts +16 -0
- package/dist/apis/sticker/getStickerHello.js +34 -0
- package/dist/apis/sticker/getStickerSuggestKeywords.d.ts +12 -0
- package/dist/apis/sticker/getStickerSuggestKeywords.js +24 -0
- package/dist/apis/sticker/getStickerSuggestion.d.ts +12 -0
- package/dist/apis/sticker/getStickerSuggestion.js +29 -0
- package/dist/apis/sticker/getStickers.d.ts +1 -0
- package/dist/apis/sticker/getStickers.js +40 -0
- package/dist/apis/sticker/getStickersDetail.d.ts +3 -0
- package/dist/apis/sticker/getStickersDetail.js +40 -0
- package/dist/apis/sticker/searchSticker.d.ts +3 -0
- package/dist/apis/sticker/searchSticker.js +28 -0
- package/dist/apis/sync/cancelPullMobile.d.ts +11 -0
- package/dist/apis/sync/cancelPullMobile.js +33 -0
- package/dist/apis/sync/downloadTransferSync.d.ts +6 -0
- package/dist/apis/sync/downloadTransferSync.js +30 -0
- package/dist/apis/sync/getSyncData.d.ts +13 -0
- package/dist/apis/sync/getSyncData.js +103 -0
- package/dist/apis/sync/pullMobile.d.ts +15 -0
- package/dist/apis/sync/pullMobile.js +38 -0
- package/dist/apis/sync/requestSyncFromPhone.d.ts +20 -0
- package/dist/apis/sync/requestSyncFromPhone.js +40 -0
- package/dist/apis/zcloud/getCloudInfo.d.ts +3 -0
- package/dist/apis/zcloud/getCloudInfo.js +18 -0
- package/dist/apis/zcloud/getCloudSettings.d.ts +10 -0
- package/dist/apis/zcloud/getCloudSettings.js +17 -0
- package/dist/apis/zcloud/getCloudViewerKey.d.ts +5 -0
- package/dist/apis/zcloud/getCloudViewerKey.js +45 -0
- package/dist/apis/zcloud/getFamilyProfile.d.ts +3 -0
- package/dist/apis/zcloud/getFamilyProfile.js +18 -0
- package/dist/apis/zcloud/getFamilyUsage.d.ts +7 -0
- package/dist/apis/zcloud/getFamilyUsage.js +17 -0
- package/dist/apis/zcloud/getFamilyViewerKey.d.ts +5 -0
- package/dist/apis/zcloud/getFamilyViewerKey.js +45 -0
- package/dist/apis/zcloud/getUsageMyCloud.d.ts +7 -0
- package/dist/apis/zcloud/getUsageMyCloud.js +17 -0
- package/dist/apis/zcloud/getUsageZCloud.d.ts +11 -0
- package/dist/apis/zcloud/getUsageZCloud.js +17 -0
- package/dist/apis/zcloud/verifyCloudMedia.d.ts +14 -0
- package/dist/apis/zcloud/verifyCloudMedia.js +25 -0
- package/dist/apis.d.ts +657 -412
- package/dist/apis.js +1139 -412
- package/dist/cjs/Errors/ZaloApiError.cjs +1 -0
- package/dist/cjs/apis/auth/decryptGids.cjs +35 -0
- package/dist/cjs/apis/auth/encryptGids.cjs +29 -0
- package/dist/cjs/apis/auth/getContext.cjs +9 -0
- package/dist/cjs/apis/auth/getCookie.cjs +14 -0
- package/dist/cjs/apis/auth/getListDevice.cjs +27 -0
- package/dist/cjs/apis/auth/getNoisedIds.cjs +74 -0
- package/dist/cjs/apis/auth/getOwnId.cjs +9 -0
- package/dist/cjs/apis/auth/getQR.cjs +34 -0
- package/dist/cjs/apis/auth/keepAlive.cjs +29 -0
- package/dist/cjs/apis/auth/lostFocus.cjs +28 -0
- package/dist/cjs/apis/auth/scanURL.cjs +33 -0
- package/dist/cjs/apis/auth/updateActiveStatus.cjs +32 -0
- package/dist/cjs/apis/auth/updateLang.cjs +35 -0
- package/dist/cjs/apis/board/addPollOptions.cjs +31 -0
- package/dist/cjs/apis/board/createNote.cjs +52 -0
- package/dist/cjs/apis/board/createPoll.cjs +44 -0
- package/dist/cjs/apis/board/createReminder.cjs +78 -0
- package/dist/cjs/apis/board/editNote.cjs +51 -0
- package/dist/cjs/apis/board/editReminder.cjs +76 -0
- package/dist/cjs/apis/board/getListBoard.cjs +60 -0
- package/dist/cjs/apis/board/getListPinTopics.cjs +33 -0
- package/dist/cjs/apis/board/getListReminder.cjs +65 -0
- package/dist/cjs/apis/board/getPollDetail.cjs +35 -0
- package/dist/cjs/apis/board/getReminder.cjs +30 -0
- package/dist/cjs/apis/board/getReminderResponses.cjs +29 -0
- package/dist/cjs/apis/board/lockPoll.cjs +33 -0
- package/dist/cjs/apis/board/removeReminder.cjs +56 -0
- package/dist/cjs/apis/board/sharePoll.cjs +33 -0
- package/dist/cjs/apis/board/votePoll.cjs +34 -0
- package/dist/cjs/apis/business/addQuickMessage.cjs +65 -0
- package/dist/cjs/apis/business/createAutoReply.cjs +42 -0
- package/dist/cjs/apis/business/createBankAccount.cjs +37 -0
- package/dist/cjs/apis/business/createCatalog.cjs +34 -0
- package/dist/cjs/apis/business/createProductCatalog.cjs +55 -0
- package/dist/cjs/apis/business/deleteAutoReply.cjs +34 -0
- package/dist/cjs/apis/business/deleteBankAccount.cjs +37 -0
- package/dist/cjs/apis/business/deleteCatalog.cjs +33 -0
- package/dist/cjs/apis/business/deleteProductCatalog.cjs +36 -0
- package/dist/cjs/apis/business/getAutoReplyList.cjs +29 -0
- package/dist/cjs/apis/business/getBizAccount.cjs +32 -0
- package/dist/cjs/apis/business/getCatalogList.cjs +36 -0
- package/dist/cjs/apis/business/getLabels.cjs +33 -0
- package/dist/cjs/apis/business/getListBank.cjs +25 -0
- package/dist/cjs/apis/business/getListBankAccount.cjs +32 -0
- package/dist/cjs/apis/business/getProductCatalogList.cjs +37 -0
- package/dist/cjs/apis/business/getQuickMessageList.cjs +29 -0
- package/dist/cjs/apis/business/registerCatalog.cjs +32 -0
- package/dist/cjs/apis/business/removeQuickMessage.cjs +32 -0
- package/dist/cjs/apis/business/updateAutoReply.cjs +43 -0
- package/dist/cjs/apis/business/updateBankAccount.cjs +36 -0
- package/dist/cjs/apis/business/updateCatalog.cjs +35 -0
- package/dist/cjs/apis/business/updateLabels.cjs +39 -0
- package/dist/cjs/apis/business/updateProductCatalog.cjs +56 -0
- package/dist/cjs/apis/business/updateQuickMessage.cjs +66 -0
- package/dist/cjs/apis/business/uploadProductPhoto.cjs +55 -0
- package/dist/cjs/apis/call/cancelVoiceCall.cjs +45 -0
- package/dist/cjs/apis/call/endVoiceCall.cjs +43 -0
- package/dist/cjs/apis/call/sendVoiceCall.cjs +118 -0
- package/dist/cjs/apis/chat/addReaction.cjs +313 -0
- package/dist/cjs/apis/chat/addUnreadMark.cjs +68 -0
- package/dist/cjs/apis/chat/deleteChat.cjs +66 -0
- package/dist/cjs/apis/chat/deleteMessage.cjs +68 -0
- package/dist/cjs/apis/chat/forwardMessage.cjs +108 -0
- package/dist/cjs/apis/chat/getArchivedChatList.cjs +28 -0
- package/dist/cjs/apis/chat/getAutoDeleteChat.cjs +26 -0
- package/dist/cjs/apis/chat/getHiddenConversations.cjs +28 -0
- package/dist/cjs/apis/chat/getLastSeen.cjs +43 -0
- package/dist/cjs/apis/chat/getLastSeenReaction.cjs +32 -0
- package/dist/cjs/apis/chat/getMute.cjs +27 -0
- package/dist/cjs/apis/chat/getPinConversations.cjs +27 -0
- package/dist/cjs/apis/chat/getRecentSearchList.cjs +30 -0
- package/dist/cjs/apis/chat/getUnreadMark.cjs +35 -0
- package/dist/cjs/apis/chat/parseLink.cjs +32 -0
- package/dist/cjs/apis/chat/preloadConversations.cjs +96 -0
- package/dist/cjs/apis/chat/removeUnreadMark.cjs +66 -0
- package/dist/cjs/apis/chat/resetHiddenConversPin.cjs +25 -0
- package/dist/cjs/apis/chat/sendBankCard.cjs +52 -0
- package/dist/cjs/apis/chat/sendCard.cjs +74 -0
- package/dist/cjs/apis/chat/sendDeliveredEvent.cjs +78 -0
- package/dist/cjs/apis/chat/sendLink.cjs +76 -0
- package/dist/cjs/apis/chat/sendMessage.cjs +476 -0
- package/dist/cjs/apis/chat/sendReport.cjs +69 -0
- package/dist/cjs/apis/chat/sendSeenEvent.cjs +82 -0
- package/dist/cjs/apis/chat/sendSticker.cjs +73 -0
- package/dist/cjs/apis/chat/sendTypingEvent.cjs +53 -0
- package/dist/cjs/apis/chat/sendVideo.cjs +133 -0
- package/dist/cjs/apis/chat/sendVoice.cjs +88 -0
- package/dist/cjs/apis/chat/setHiddenConversations.cjs +55 -0
- package/dist/cjs/apis/chat/setMute.cjs +83 -0
- package/dist/cjs/apis/chat/setPinnedConversations.cjs +50 -0
- package/dist/cjs/apis/chat/undo.cjs +58 -0
- package/dist/cjs/apis/chat/undoMultiMessage.cjs +62 -0
- package/dist/cjs/apis/chat/updateArchivedChatList.cjs +39 -0
- package/dist/cjs/apis/chat/updateAutoDeleteChat.cjs +56 -0
- package/dist/cjs/apis/chat/updateHiddenConversPin.cjs +36 -0
- package/dist/cjs/apis/chat/updateRecentSearch.cjs +45 -0
- package/dist/cjs/apis/custom.cjs +1 -0
- package/dist/cjs/apis/friend/acceptFriendRequest.cjs +33 -0
- package/dist/cjs/apis/friend/blockUser.cjs +33 -0
- package/dist/cjs/apis/friend/blockViewFeed.cjs +35 -0
- package/dist/cjs/apis/friend/changeFriendAlias.cjs +32 -0
- package/dist/cjs/apis/friend/clearUnreadFriendRequests.cjs +34 -0
- package/dist/cjs/apis/friend/findUser.cjs +58 -0
- package/dist/cjs/apis/friend/findUserByUsername.cjs +43 -0
- package/dist/cjs/apis/friend/getAliasList.cjs +32 -0
- package/dist/cjs/apis/friend/getAliasListV2.cjs +33 -0
- package/dist/cjs/apis/friend/getAllFriends.cjs +50 -0
- package/dist/cjs/apis/friend/getBlockFriends.cjs +33 -0
- package/dist/cjs/apis/friend/getCloseFriends.cjs +25 -0
- package/dist/cjs/apis/friend/getExtraFriendInfo.cjs +36 -0
- package/dist/cjs/apis/friend/getFriendBoardList.cjs +31 -0
- package/dist/cjs/apis/friend/getFriendOnlines.cjs +40 -0
- package/dist/cjs/apis/friend/getFriendRecommendations.cjs +32 -0
- package/dist/cjs/apis/friend/getFriendRequestStatus.cjs +30 -0
- package/dist/cjs/apis/friend/getFriendsEmojiStatus.cjs +34 -0
- package/dist/cjs/apis/friend/getLastReadContactTab.cjs +20 -0
- package/dist/cjs/apis/friend/getMultiUsersByPhones.cjs +55 -0
- package/dist/cjs/apis/friend/getPhonebookV2.cjs +26 -0
- package/dist/cjs/apis/friend/getSentFriendRequest.cjs +29 -0
- package/dist/cjs/apis/friend/lastOnline.cjs +31 -0
- package/dist/cjs/apis/friend/readContactTab.cjs +31 -0
- package/dist/cjs/apis/friend/rejectFriendRequest.cjs +32 -0
- package/dist/cjs/apis/friend/removeFriend.cjs +33 -0
- package/dist/cjs/apis/friend/removeFriendAlias.cjs +29 -0
- package/dist/cjs/apis/friend/sendFriendRequest.cjs +44 -0
- package/dist/cjs/apis/friend/unblockUser.cjs +33 -0
- package/dist/cjs/apis/friend/undoFriendRequest.cjs +32 -0
- package/dist/cjs/apis/group/addGroupBlockedMember.cjs +33 -0
- package/dist/cjs/apis/group/addGroupDeputy.cjs +35 -0
- package/dist/cjs/apis/group/addUserToGroup.cjs +39 -0
- package/dist/cjs/apis/group/changeGroupAvatar.cjs +49 -0
- package/dist/cjs/apis/group/changeGroupName.cjs +37 -0
- package/dist/cjs/apis/group/changeGroupOwner.cjs +35 -0
- package/dist/cjs/apis/group/createGroup.cjs +48 -0
- package/dist/cjs/apis/group/deleteGroupInviteBox.cjs +32 -0
- package/dist/cjs/apis/group/disableGroupLink.cjs +29 -0
- package/dist/cjs/apis/group/disperseGroup.cjs +33 -0
- package/dist/cjs/apis/group/enableGroupLink.cjs +30 -0
- package/dist/cjs/apis/group/getAllGroups.cjs +15 -0
- package/dist/cjs/apis/group/getExtraGroupInfo.cjs +37 -0
- package/dist/cjs/apis/group/getGroupBlockedMember.cjs +33 -0
- package/dist/cjs/apis/group/getGroupChatHistory.cjs +81 -0
- package/dist/cjs/apis/group/getGroupCloudMessageJump.cjs +63 -0
- package/dist/cjs/apis/group/getGroupInfo.cjs +37 -0
- package/dist/cjs/apis/group/getGroupInviteBoxInfo.cjs +42 -0
- package/dist/cjs/apis/group/getGroupInviteBoxList.cjs +35 -0
- package/dist/cjs/apis/group/getGroupLinkDetail.cjs +30 -0
- package/dist/cjs/apis/group/getGroupLinkInfo.cjs +32 -0
- package/dist/cjs/apis/group/getGroupMembersInfo.cjs +29 -0
- package/dist/cjs/apis/group/getPendingGroupMembers.cjs +32 -0
- package/dist/cjs/apis/group/getQuotaCommunity.cjs +32 -0
- package/dist/cjs/apis/group/getRelatedFriendGroup.cjs +35 -0
- package/dist/cjs/apis/group/inviteUserToGroups.cjs +35 -0
- package/dist/cjs/apis/group/joinGroupInviteBox.cjs +30 -0
- package/dist/cjs/apis/group/joinGroupLink.cjs +32 -0
- package/dist/cjs/apis/group/leaveGroup.cjs +38 -0
- package/dist/cjs/apis/group/removeGroupBlockedMember.cjs +33 -0
- package/dist/cjs/apis/group/removeGroupDeputy.cjs +35 -0
- package/dist/cjs/apis/group/removeUserFromGroup.cjs +39 -0
- package/dist/cjs/apis/group/reviewPendingMemberRequest.cjs +43 -0
- package/dist/cjs/apis/group/updateGroupSettings.cjs +48 -0
- package/dist/cjs/apis/group/upgradeGroupToCommunity.cjs +32 -0
- package/dist/cjs/apis/login.cjs +15 -8
- package/dist/cjs/apis/loginQR.cjs +110 -68
- package/dist/cjs/apis/media/getConversationMedia.cjs +43 -0
- package/dist/cjs/apis/media/getMediaStorePreview.cjs +36 -0
- package/dist/cjs/apis/media/removeConversationMedia.cjs +35 -0
- package/dist/cjs/apis/media/uploadAttachment.cjs +225 -0
- package/dist/cjs/apis/media/voiceToText.cjs +35 -0
- package/dist/cjs/apis/profile/changeAccountAvatar.cjs +57 -0
- package/dist/cjs/apis/profile/deleteAvatar.cjs +32 -0
- package/dist/cjs/apis/profile/fetchAccountInfo.cjs +15 -0
- package/dist/cjs/apis/profile/getAvatarList.cjs +33 -0
- package/dist/cjs/apis/profile/getAvatarUrlProfile.cjs +46 -0
- package/dist/cjs/apis/profile/getEmojiStatusConfig.cjs +28 -0
- package/dist/cjs/apis/profile/getFullAvatar.cjs +30 -0
- package/dist/cjs/apis/profile/getMiniProfile.cjs +39 -0
- package/dist/cjs/apis/profile/getProfileRank.cjs +30 -0
- package/dist/cjs/apis/profile/getProfileVerificationStatus.cjs +25 -0
- package/dist/cjs/apis/profile/getSettings.cjs +27 -0
- package/dist/cjs/apis/profile/getUserInfo.cjs +60 -0
- package/dist/cjs/apis/profile/reuseAvatar.cjs +31 -0
- package/dist/cjs/apis/profile/updateProfile.cjs +47 -0
- package/dist/cjs/apis/profile/updateProfileBio.cjs +32 -0
- package/dist/cjs/apis/profile/updateSettings.cjs +97 -0
- package/dist/cjs/apis/sticker/getPersonalizedStickerList.cjs +29 -0
- package/dist/cjs/apis/sticker/getStickerCategoriesV2.cjs +26 -0
- package/dist/cjs/apis/sticker/getStickerCategoryData.cjs +30 -0
- package/dist/cjs/apis/sticker/getStickerCategoryDetail.cjs +29 -0
- package/dist/cjs/apis/sticker/getStickerHello.cjs +39 -0
- package/dist/cjs/apis/sticker/getStickerSuggestKeywords.cjs +29 -0
- package/dist/cjs/apis/sticker/getStickerSuggestion.cjs +34 -0
- package/dist/cjs/apis/sticker/getStickers.cjs +45 -0
- package/dist/cjs/apis/sticker/getStickersDetail.cjs +45 -0
- package/dist/cjs/apis/sticker/searchSticker.cjs +33 -0
- package/dist/cjs/apis/sync/cancelPullMobile.cjs +38 -0
- package/dist/cjs/apis/sync/downloadTransferSync.cjs +37 -0
- package/dist/cjs/apis/sync/getSyncData.cjs +109 -0
- package/dist/cjs/apis/sync/pullMobile.cjs +43 -0
- package/dist/cjs/apis/sync/requestSyncFromPhone.cjs +46 -0
- package/dist/cjs/apis/zcloud/getCloudInfo.cjs +27 -0
- package/dist/cjs/apis/zcloud/getCloudSettings.cjs +26 -0
- package/dist/cjs/apis/zcloud/getCloudViewerKey.cjs +53 -0
- package/dist/cjs/apis/zcloud/getFamilyProfile.cjs +27 -0
- package/dist/cjs/apis/zcloud/getFamilyUsage.cjs +26 -0
- package/dist/cjs/apis/zcloud/getFamilyViewerKey.cjs +53 -0
- package/dist/cjs/apis/zcloud/getUsageMyCloud.cjs +26 -0
- package/dist/cjs/apis/zcloud/getUsageZCloud.cjs +26 -0
- package/dist/cjs/apis/zcloud/verifyCloudMedia.cjs +34 -0
- package/dist/cjs/apis.cjs +1142 -414
- package/dist/cjs/constants/defaults.cjs +77 -0
- package/dist/cjs/constants/domains.cjs +38 -0
- package/dist/cjs/constants/endpoints.cjs +71 -0
- package/dist/cjs/constants/protocol.cjs +34 -0
- package/dist/cjs/context.cjs +9 -6
- package/dist/cjs/core/service-router.cjs +22 -0
- package/dist/cjs/core/zcloud-client.cjs +93 -0
- package/dist/cjs/crypto/aes.cjs +181 -0
- package/dist/cjs/crypto/ws-cipher.cjs +59 -0
- package/dist/cjs/crypto/zcloud-cipher.cjs +32 -0
- package/dist/cjs/crypto/zdb-cipher.cjs +177 -0
- package/dist/cjs/index.cjs +55 -19
- package/dist/cjs/models/ClearUnread.cjs +7 -0
- package/dist/cjs/models/DeliveredMessage.cjs +8 -2
- package/dist/cjs/models/GroupEvent.cjs +1 -2
- package/dist/cjs/models/Message.cjs +14 -2
- package/dist/cjs/models/Reaction.cjs +4 -0
- package/dist/cjs/models/SeenMessage.cjs +8 -2
- package/dist/cjs/models/Typing.cjs +8 -2
- package/dist/cjs/models/Undo.cjs +4 -0
- package/dist/cjs/realtime/handlers/control.handler.cjs +84 -0
- package/dist/cjs/realtime/handlers/message.handler.cjs +106 -0
- package/dist/cjs/realtime/handlers/reaction.handler.cjs +55 -0
- package/dist/cjs/realtime/handlers/status.handler.cjs +90 -0
- package/dist/cjs/realtime/listener.cjs +381 -0
- package/dist/cjs/realtime/types.cjs +9 -0
- package/dist/cjs/update.cjs +14 -11
- package/dist/cjs/utils.cjs +60 -477
- package/dist/cjs/zalo.cjs +13 -8
- package/dist/constants/defaults.d.ts +96 -0
- package/dist/constants/defaults.js +73 -0
- package/dist/constants/domains.d.ts +34 -0
- package/dist/constants/domains.js +34 -0
- package/dist/constants/endpoints.d.ts +67 -0
- package/dist/constants/endpoints.js +67 -0
- package/dist/constants/index.d.ts +4 -0
- package/dist/constants/index.js +4 -0
- package/dist/constants/protocol.d.ts +30 -0
- package/dist/constants/protocol.js +30 -0
- package/dist/context.d.ts +8 -1
- package/dist/context.js +7 -6
- package/dist/core/index.d.ts +2 -0
- package/dist/core/index.js +2 -0
- package/dist/core/service-router.d.ts +10 -0
- package/dist/core/service-router.js +17 -0
- package/dist/core/zcloud-client.d.ts +31 -0
- package/dist/core/zcloud-client.js +83 -0
- package/dist/crypto/aes.d.ts +34 -0
- package/dist/crypto/aes.js +171 -0
- package/dist/crypto/index.d.ts +4 -0
- package/dist/crypto/index.js +4 -0
- package/dist/crypto/ws-cipher.d.ts +3 -0
- package/dist/crypto/ws-cipher.js +52 -0
- package/dist/crypto/zcloud-cipher.d.ts +10 -0
- package/dist/crypto/zcloud-cipher.js +26 -0
- package/dist/crypto/zdb-cipher.d.ts +42 -0
- package/dist/crypto/zdb-cipher.js +167 -0
- package/dist/index.d.ts +215 -211
- package/dist/index.js +12 -9
- package/dist/models/ClearUnread.js +7 -0
- package/dist/models/DeliveredMessage.js +8 -2
- package/dist/models/GroupEvent.js +1 -2
- package/dist/models/Message.js +14 -2
- package/dist/models/Reaction.js +4 -0
- package/dist/models/SeenMessage.js +8 -2
- package/dist/models/Typing.js +8 -2
- package/dist/models/Undo.js +4 -0
- package/dist/realtime/handlers/control.handler.d.ts +3 -0
- package/dist/realtime/handlers/control.handler.js +78 -0
- package/dist/realtime/handlers/message.handler.d.ts +4 -0
- package/dist/realtime/handlers/message.handler.js +87 -0
- package/dist/realtime/handlers/reaction.handler.d.ts +3 -0
- package/dist/realtime/handlers/reaction.handler.js +32 -0
- package/dist/realtime/handlers/status.handler.d.ts +3 -0
- package/dist/realtime/handlers/status.handler.js +66 -0
- package/dist/realtime/index.d.ts +2 -0
- package/dist/realtime/index.js +2 -0
- package/dist/realtime/listener.d.ts +69 -0
- package/dist/realtime/listener.js +363 -0
- package/dist/realtime/types.d.ts +64 -0
- package/dist/realtime/types.js +7 -0
- package/dist/update.js +13 -11
- package/dist/utils.d.ts +5 -135
- package/dist/utils.js +49 -489
- package/dist/zalo.js +12 -9
- package/package.json +11 -7
- package/.prettierrc +0 -5
- package/dist/apis/acceptFriendRequest.d.ts +0 -2
- package/dist/apis/acceptFriendRequest.js +0 -28
- package/dist/apis/addGroupBlockedMember.d.ts +0 -2
- package/dist/apis/addGroupBlockedMember.js +0 -28
- package/dist/apis/addGroupDeputy.d.ts +0 -2
- package/dist/apis/addGroupDeputy.js +0 -30
- package/dist/apis/addPollOptions.d.ts +0 -14
- package/dist/apis/addPollOptions.js +0 -26
- package/dist/apis/addQuickMessage.d.ts +0 -11
- package/dist/apis/addQuickMessage.js +0 -60
- package/dist/apis/addReaction.d.ts +0 -18
- package/dist/apis/addReaction.js +0 -297
- package/dist/apis/addUnreadMark.d.ts +0 -8
- package/dist/apis/addUnreadMark.js +0 -52
- package/dist/apis/addUserToGroup.d.ts +0 -5
- package/dist/apis/addUserToGroup.js +0 -34
- package/dist/apis/blockUser.d.ts +0 -2
- package/dist/apis/blockUser.js +0 -28
- package/dist/apis/blockViewFeed.d.ts +0 -2
- package/dist/apis/blockViewFeed.js +0 -30
- package/dist/apis/cancelPullMobile.d.ts +0 -11
- package/dist/apis/cancelPullMobile.js +0 -33
- package/dist/apis/cancelVoiceCall.d.ts +0 -7
- package/dist/apis/cancelVoiceCall.js +0 -42
- package/dist/apis/changeAccountAvatar.d.ts +0 -3
- package/dist/apis/changeAccountAvatar.js +0 -52
- package/dist/apis/changeFriendAlias.d.ts +0 -2
- package/dist/apis/changeFriendAlias.js +0 -27
- package/dist/apis/changeGroupAvatar.d.ts +0 -3
- package/dist/apis/changeGroupAvatar.js +0 -44
- package/dist/apis/changeGroupName.d.ts +0 -4
- package/dist/apis/changeGroupName.js +0 -32
- package/dist/apis/changeGroupOwner.d.ts +0 -4
- package/dist/apis/changeGroupOwner.js +0 -30
- package/dist/apis/clearUnreadFriendRequests.d.ts +0 -2
- package/dist/apis/clearUnreadFriendRequests.js +0 -29
- package/dist/apis/createAutoReply.d.ts +0 -14
- package/dist/apis/createAutoReply.js +0 -37
- package/dist/apis/createBankAccount.d.ts +0 -8
- package/dist/apis/createBankAccount.js +0 -32
- package/dist/apis/createCatalog.d.ts +0 -7
- package/dist/apis/createCatalog.js +0 -29
- package/dist/apis/createGroup.d.ts +0 -28
- package/dist/apis/createGroup.js +0 -43
- package/dist/apis/createNote.d.ts +0 -7
- package/dist/apis/createNote.js +0 -47
- package/dist/apis/createPoll.d.ts +0 -36
- package/dist/apis/createPoll.js +0 -40
- package/dist/apis/createProductCatalog.d.ts +0 -23
- package/dist/apis/createProductCatalog.js +0 -50
- package/dist/apis/createReminder.d.ts +0 -12
- package/dist/apis/createReminder.js +0 -63
- package/dist/apis/decryptGids.d.ts +0 -6
- package/dist/apis/decryptGids.js +0 -30
- package/dist/apis/deleteAutoReply.d.ts +0 -5
- package/dist/apis/deleteAutoReply.js +0 -29
- package/dist/apis/deleteAvatar.d.ts +0 -9
- package/dist/apis/deleteAvatar.js +0 -27
- package/dist/apis/deleteBankAccount.d.ts +0 -11
- package/dist/apis/deleteBankAccount.js +0 -32
- package/dist/apis/deleteCatalog.d.ts +0 -2
- package/dist/apis/deleteCatalog.js +0 -28
- package/dist/apis/deleteChat.d.ts +0 -19
- package/dist/apis/deleteChat.js +0 -50
- package/dist/apis/deleteGroupInviteBox.d.ts +0 -9
- package/dist/apis/deleteGroupInviteBox.js +0 -27
- package/dist/apis/deleteMessage.d.ts +0 -14
- package/dist/apis/deleteMessage.js +0 -52
- package/dist/apis/deleteProductCatalog.d.ts +0 -10
- package/dist/apis/deleteProductCatalog.js +0 -31
- package/dist/apis/disableGroupLink.d.ts +0 -2
- package/dist/apis/disableGroupLink.js +0 -24
- package/dist/apis/disperseGroup.d.ts +0 -2
- package/dist/apis/disperseGroup.js +0 -28
- package/dist/apis/downloadTransferSync.d.ts +0 -6
- package/dist/apis/downloadTransferSync.js +0 -30
- package/dist/apis/editNote.d.ts +0 -17
- package/dist/apis/editNote.js +0 -46
- package/dist/apis/editReminder.d.ts +0 -13
- package/dist/apis/editReminder.js +0 -61
- package/dist/apis/enableGroupLink.d.ts +0 -6
- package/dist/apis/enableGroupLink.js +0 -25
- package/dist/apis/encryptGids.d.ts +0 -4
- package/dist/apis/encryptGids.js +0 -24
- package/dist/apis/endVoiceCall.d.ts +0 -5
- package/dist/apis/endVoiceCall.js +0 -40
- package/dist/apis/fetchAccountInfo.d.ts +0 -5
- package/dist/apis/fetchAccountInfo.js +0 -10
- package/dist/apis/findUser.d.ts +0 -3
- package/dist/apis/findUser.js +0 -42
- package/dist/apis/findUserByUsername.d.ts +0 -3
- package/dist/apis/findUserByUsername.js +0 -27
- package/dist/apis/forwardMessage.d.ts +0 -24
- package/dist/apis/forwardMessage.js +0 -99
- package/dist/apis/getAliasList.d.ts +0 -8
- package/dist/apis/getAliasList.js +0 -27
- package/dist/apis/getAliasListV2.d.ts +0 -10
- package/dist/apis/getAliasListV2.js +0 -28
- package/dist/apis/getAllFriends.d.ts +0 -3
- package/dist/apis/getAllFriends.js +0 -34
- package/dist/apis/getAllGroups.d.ts +0 -7
- package/dist/apis/getAllGroups.js +0 -10
- package/dist/apis/getArchivedChatList.d.ts +0 -5
- package/dist/apis/getArchivedChatList.js +0 -23
- package/dist/apis/getAutoDeleteChat.d.ts +0 -9
- package/dist/apis/getAutoDeleteChat.js +0 -21
- package/dist/apis/getAutoReplyList.d.ts +0 -6
- package/dist/apis/getAutoReplyList.js +0 -24
- package/dist/apis/getAvatarList.d.ts +0 -12
- package/dist/apis/getAvatarList.js +0 -28
- package/dist/apis/getAvatarUrlProfile.d.ts +0 -7
- package/dist/apis/getAvatarUrlProfile.js +0 -30
- package/dist/apis/getBizAccount.d.ts +0 -24
- package/dist/apis/getBizAccount.js +0 -27
- package/dist/apis/getBlockFriends.d.ts +0 -6
- package/dist/apis/getBlockFriends.js +0 -28
- package/dist/apis/getCatalogList.d.ts +0 -18
- package/dist/apis/getCatalogList.js +0 -32
- package/dist/apis/getCloseFriends.d.ts +0 -3
- package/dist/apis/getCloseFriends.js +0 -20
- package/dist/apis/getCloudInfo.d.ts +0 -3
- package/dist/apis/getCloudInfo.js +0 -34
- package/dist/apis/getCloudSettings.d.ts +0 -10
- package/dist/apis/getCloudSettings.js +0 -34
- package/dist/apis/getCloudViewerKey.d.ts +0 -5
- package/dist/apis/getCloudViewerKey.js +0 -25
- package/dist/apis/getContext.d.ts +0 -1
- package/dist/apis/getContext.js +0 -4
- package/dist/apis/getConversationMedia.d.ts +0 -26
- package/dist/apis/getConversationMedia.js +0 -39
- package/dist/apis/getCookie.d.ts +0 -1
- package/dist/apis/getCookie.js +0 -9
- package/dist/apis/getEmojiStatusConfig.d.ts +0 -17
- package/dist/apis/getEmojiStatusConfig.js +0 -23
- package/dist/apis/getExtraFriendInfo.d.ts +0 -3
- package/dist/apis/getExtraFriendInfo.js +0 -31
- package/dist/apis/getExtraGroupInfo.d.ts +0 -7
- package/dist/apis/getExtraGroupInfo.js +0 -32
- package/dist/apis/getFamilyProfile.d.ts +0 -3
- package/dist/apis/getFamilyProfile.js +0 -34
- package/dist/apis/getFamilyUsage.d.ts +0 -7
- package/dist/apis/getFamilyUsage.js +0 -34
- package/dist/apis/getFamilyViewerKey.d.ts +0 -5
- package/dist/apis/getFamilyViewerKey.js +0 -25
- package/dist/apis/getFriendBoardList.d.ts +0 -5
- package/dist/apis/getFriendBoardList.js +0 -26
- package/dist/apis/getFriendOnlines.d.ts +0 -10
- package/dist/apis/getFriendOnlines.js +0 -35
- package/dist/apis/getFriendRecommendations.d.ts +0 -42
- package/dist/apis/getFriendRecommendations.js +0 -27
- package/dist/apis/getFriendRequestStatus.d.ts +0 -8
- package/dist/apis/getFriendRequestStatus.js +0 -25
- package/dist/apis/getFriendsEmojiStatus.d.ts +0 -17
- package/dist/apis/getFriendsEmojiStatus.js +0 -30
- package/dist/apis/getFullAvatar.d.ts +0 -5
- package/dist/apis/getFullAvatar.js +0 -25
- package/dist/apis/getGroupBlockedMember.d.ts +0 -23
- package/dist/apis/getGroupBlockedMember.js +0 -29
- package/dist/apis/getGroupChatHistory.d.ts +0 -18
- package/dist/apis/getGroupChatHistory.js +0 -64
- package/dist/apis/getGroupCloudMessageJump.d.ts +0 -3
- package/dist/apis/getGroupCloudMessageJump.js +0 -46
- package/dist/apis/getGroupInfo.d.ts +0 -16
- package/dist/apis/getGroupInfo.js +0 -32
- package/dist/apis/getGroupInviteBoxInfo.d.ts +0 -32
- package/dist/apis/getGroupInviteBoxInfo.js +0 -38
- package/dist/apis/getGroupInviteBoxList.d.ts +0 -38
- package/dist/apis/getGroupInviteBoxList.js +0 -31
- package/dist/apis/getGroupLinkDetail.d.ts +0 -9
- package/dist/apis/getGroupLinkDetail.js +0 -25
- package/dist/apis/getGroupLinkInfo.d.ts +0 -34
- package/dist/apis/getGroupLinkInfo.js +0 -28
- package/dist/apis/getGroupMembersInfo.d.ts +0 -17
- package/dist/apis/getGroupMembersInfo.js +0 -24
- package/dist/apis/getHiddenConversations.d.ts +0 -11
- package/dist/apis/getHiddenConversations.js +0 -23
- package/dist/apis/getLabels.d.ts +0 -7
- package/dist/apis/getLabels.js +0 -28
- package/dist/apis/getLastReadContactTab.d.ts +0 -4
- package/dist/apis/getLastReadContactTab.js +0 -15
- package/dist/apis/getLastSeen.d.ts +0 -11
- package/dist/apis/getLastSeen.js +0 -40
- package/dist/apis/getLastSeenReaction.d.ts +0 -9
- package/dist/apis/getLastSeenReaction.js +0 -28
- package/dist/apis/getListBank.d.ts +0 -5
- package/dist/apis/getListBank.js +0 -20
- package/dist/apis/getListBankAccount.d.ts +0 -7
- package/dist/apis/getListBankAccount.js +0 -27
- package/dist/apis/getListBoard.d.ts +0 -21
- package/dist/apis/getListBoard.js +0 -45
- package/dist/apis/getListDevice.d.ts +0 -10
- package/dist/apis/getListDevice.js +0 -22
- package/dist/apis/getListPinTopics.d.ts +0 -5
- package/dist/apis/getListPinTopics.js +0 -28
- package/dist/apis/getListReminder.d.ts +0 -28
- package/dist/apis/getListReminder.js +0 -47
- package/dist/apis/getMediaStorePreview.d.ts +0 -3
- package/dist/apis/getMediaStorePreview.js +0 -31
- package/dist/apis/getMiniProfile.d.ts +0 -13
- package/dist/apis/getMiniProfile.js +0 -34
- package/dist/apis/getMultiUsersByPhones.d.ts +0 -5
- package/dist/apis/getMultiUsersByPhones.js +0 -39
- package/dist/apis/getMute.d.ts +0 -13
- package/dist/apis/getMute.js +0 -22
- package/dist/apis/getNoisedIds.d.ts +0 -9
- package/dist/apis/getNoisedIds.js +0 -67
- package/dist/apis/getOwnId.d.ts +0 -1
- package/dist/apis/getOwnId.js +0 -4
- package/dist/apis/getPendingGroupMembers.d.ts +0 -11
- package/dist/apis/getPendingGroupMembers.js +0 -27
- package/dist/apis/getPersonalizedStickerList.d.ts +0 -5
- package/dist/apis/getPersonalizedStickerList.js +0 -24
- package/dist/apis/getPhonebookV2.d.ts +0 -6
- package/dist/apis/getPhonebookV2.js +0 -21
- package/dist/apis/getPinConversations.d.ts +0 -5
- package/dist/apis/getPinConversations.js +0 -22
- package/dist/apis/getPollDetail.d.ts +0 -3
- package/dist/apis/getPollDetail.js +0 -30
- package/dist/apis/getProductCatalogList.d.ts +0 -20
- package/dist/apis/getProductCatalogList.js +0 -33
- package/dist/apis/getProfileRank.d.ts +0 -5
- package/dist/apis/getProfileRank.js +0 -25
- package/dist/apis/getProfileVerificationStatus.d.ts +0 -5
- package/dist/apis/getProfileVerificationStatus.js +0 -20
- package/dist/apis/getQR.d.ts +0 -4
- package/dist/apis/getQR.js +0 -29
- package/dist/apis/getQuickMessageList.d.ts +0 -7
- package/dist/apis/getQuickMessageList.js +0 -24
- package/dist/apis/getQuotaCommunity.d.ts +0 -8
- package/dist/apis/getQuotaCommunity.js +0 -27
- package/dist/apis/getRecentSearchList.d.ts +0 -6
- package/dist/apis/getRecentSearchList.js +0 -25
- package/dist/apis/getRelatedFriendGroup.d.ts +0 -6
- package/dist/apis/getRelatedFriendGroup.js +0 -30
- package/dist/apis/getReminder.d.ts +0 -3
- package/dist/apis/getReminder.js +0 -25
- package/dist/apis/getReminderResponses.d.ts +0 -5
- package/dist/apis/getReminderResponses.js +0 -24
- package/dist/apis/getSentFriendRequest.d.ts +0 -18
- package/dist/apis/getSentFriendRequest.js +0 -24
- package/dist/apis/getSettings.d.ts +0 -3
- package/dist/apis/getSettings.js +0 -20
- package/dist/apis/getStickerCategoriesV2.d.ts +0 -17
- package/dist/apis/getStickerCategoriesV2.js +0 -21
- package/dist/apis/getStickerCategoryData.d.ts +0 -3
- package/dist/apis/getStickerCategoryData.js +0 -25
- package/dist/apis/getStickerCategoryDetail.d.ts +0 -3
- package/dist/apis/getStickerCategoryDetail.js +0 -24
- package/dist/apis/getStickerHello.d.ts +0 -16
- package/dist/apis/getStickerHello.js +0 -34
- package/dist/apis/getStickerSuggestKeywords.d.ts +0 -12
- package/dist/apis/getStickerSuggestKeywords.js +0 -24
- package/dist/apis/getStickerSuggestion.d.ts +0 -12
- package/dist/apis/getStickerSuggestion.js +0 -30
- package/dist/apis/getStickers.d.ts +0 -1
- package/dist/apis/getStickers.js +0 -40
- package/dist/apis/getStickersDetail.d.ts +0 -3
- package/dist/apis/getStickersDetail.js +0 -40
- package/dist/apis/getSyncData.d.ts +0 -13
- package/dist/apis/getSyncData.js +0 -103
- package/dist/apis/getUnreadMark.d.ts +0 -14
- package/dist/apis/getUnreadMark.js +0 -30
- package/dist/apis/getUsageMyCloud.d.ts +0 -7
- package/dist/apis/getUsageMyCloud.js +0 -34
- package/dist/apis/getUsageZCloud.d.ts +0 -11
- package/dist/apis/getUsageZCloud.js +0 -34
- package/dist/apis/getUserInfo.d.ts +0 -8
- package/dist/apis/getUserInfo.js +0 -44
- package/dist/apis/inviteUserToGroups.d.ts +0 -10
- package/dist/apis/inviteUserToGroups.js +0 -30
- package/dist/apis/joinGroupInviteBox.d.ts +0 -2
- package/dist/apis/joinGroupInviteBox.js +0 -25
- package/dist/apis/joinGroupLink.d.ts +0 -2
- package/dist/apis/joinGroupLink.js +0 -27
- package/dist/apis/keepAlive.d.ts +0 -5
- package/dist/apis/keepAlive.js +0 -24
- package/dist/apis/lastOnline.d.ts +0 -7
- package/dist/apis/lastOnline.js +0 -26
- package/dist/apis/leaveGroup.d.ts +0 -4
- package/dist/apis/leaveGroup.js +0 -33
- package/dist/apis/lockPoll.d.ts +0 -2
- package/dist/apis/lockPoll.js +0 -28
- package/dist/apis/lostFocus.d.ts +0 -4
- package/dist/apis/lostFocus.js +0 -23
- package/dist/apis/parseLink.d.ts +0 -21
- package/dist/apis/parseLink.js +0 -27
- package/dist/apis/preloadConversations.d.ts +0 -28
- package/dist/apis/preloadConversations.js +0 -76
- package/dist/apis/pullMobile.d.ts +0 -15
- package/dist/apis/pullMobile.js +0 -38
- package/dist/apis/readContactTab.d.ts +0 -2
- package/dist/apis/readContactTab.js +0 -26
- package/dist/apis/registerCatalog.d.ts +0 -2
- package/dist/apis/registerCatalog.js +0 -27
- package/dist/apis/rejectFriendRequest.d.ts +0 -2
- package/dist/apis/rejectFriendRequest.js +0 -27
- package/dist/apis/removeConversationMedia.d.ts +0 -8
- package/dist/apis/removeConversationMedia.js +0 -30
- package/dist/apis/removeFriend.d.ts +0 -2
- package/dist/apis/removeFriend.js +0 -28
- package/dist/apis/removeFriendAlias.d.ts +0 -2
- package/dist/apis/removeFriendAlias.js +0 -24
- package/dist/apis/removeGroupBlockedMember.d.ts +0 -2
- package/dist/apis/removeGroupBlockedMember.js +0 -28
- package/dist/apis/removeGroupDeputy.d.ts +0 -2
- package/dist/apis/removeGroupDeputy.js +0 -30
- package/dist/apis/removeQuickMessage.d.ts +0 -5
- package/dist/apis/removeQuickMessage.js +0 -27
- package/dist/apis/removeReminder.d.ts +0 -3
- package/dist/apis/removeReminder.js +0 -40
- package/dist/apis/removeUnreadMark.d.ts +0 -8
- package/dist/apis/removeUnreadMark.js +0 -50
- package/dist/apis/removeUserFromGroup.d.ts +0 -4
- package/dist/apis/removeUserFromGroup.js +0 -34
- package/dist/apis/requestSyncFromPhone.d.ts +0 -20
- package/dist/apis/requestSyncFromPhone.js +0 -41
- package/dist/apis/resetHiddenConversPin.d.ts +0 -2
- package/dist/apis/resetHiddenConversPin.js +0 -20
- package/dist/apis/reuseAvatar.d.ts +0 -2
- package/dist/apis/reuseAvatar.js +0 -26
- package/dist/apis/reviewPendingMemberRequest.d.ts +0 -14
- package/dist/apis/reviewPendingMemberRequest.js +0 -38
- package/dist/apis/scanURL.d.ts +0 -4
- package/dist/apis/scanURL.js +0 -28
- package/dist/apis/searchSticker.d.ts +0 -3
- package/dist/apis/searchSticker.js +0 -28
- package/dist/apis/sendBankCard.d.ts +0 -9
- package/dist/apis/sendBankCard.js +0 -37
- package/dist/apis/sendCard.d.ts +0 -10
- package/dist/apis/sendCard.js +0 -59
- package/dist/apis/sendDeliveredEvent.d.ts +0 -16
- package/dist/apis/sendDeliveredEvent.js +0 -55
- package/dist/apis/sendFriendRequest.d.ts +0 -2
- package/dist/apis/sendFriendRequest.js +0 -39
- package/dist/apis/sendLink.d.ts +0 -10
- package/dist/apis/sendLink.js +0 -61
- package/dist/apis/sendMessage.d.ts +0 -99
- package/dist/apis/sendMessage.js +0 -452
- package/dist/apis/sendReport.d.ts +0 -17
- package/dist/apis/sendReport.js +0 -53
- package/dist/apis/sendSeenEvent.d.ts +0 -16
- package/dist/apis/sendSeenEvent.js +0 -63
- package/dist/apis/sendSticker.d.ts +0 -10
- package/dist/apis/sendSticker.js +0 -57
- package/dist/apis/sendTypingEvent.d.ts +0 -5
- package/dist/apis/sendTypingEvent.js +0 -33
- package/dist/apis/sendVideo.d.ts +0 -35
- package/dist/apis/sendVideo.js +0 -118
- package/dist/apis/sendVoice.d.ts +0 -12
- package/dist/apis/sendVoice.js +0 -73
- package/dist/apis/sendVoiceCall.d.ts +0 -44
- package/dist/apis/sendVoiceCall.js +0 -115
- package/dist/apis/setHiddenConversations.d.ts +0 -3
- package/dist/apis/setHiddenConversations.js +0 -39
- package/dist/apis/setMute.d.ts +0 -20
- package/dist/apis/setMute.js +0 -67
- package/dist/apis/setPinnedConversations.d.ts +0 -3
- package/dist/apis/setPinnedConversations.js +0 -34
- package/dist/apis/sharePoll.d.ts +0 -2
- package/dist/apis/sharePoll.js +0 -28
- package/dist/apis/unblockUser.d.ts +0 -2
- package/dist/apis/unblockUser.js +0 -28
- package/dist/apis/undo.d.ts +0 -9
- package/dist/apis/undo.js +0 -42
- package/dist/apis/undoFriendRequest.d.ts +0 -2
- package/dist/apis/undoFriendRequest.js +0 -27
- package/dist/apis/undoMultiMessage.d.ts +0 -9
- package/dist/apis/undoMultiMessage.js +0 -46
- package/dist/apis/updateActiveStatus.d.ts +0 -4
- package/dist/apis/updateActiveStatus.js +0 -27
- package/dist/apis/updateArchivedChatList.d.ts +0 -10
- package/dist/apis/updateArchivedChatList.js +0 -34
- package/dist/apis/updateAutoDeleteChat.d.ts +0 -9
- package/dist/apis/updateAutoDeleteChat.js +0 -40
- package/dist/apis/updateAutoReply.d.ts +0 -15
- package/dist/apis/updateAutoReply.js +0 -38
- package/dist/apis/updateBankAccount.d.ts +0 -9
- package/dist/apis/updateBankAccount.js +0 -31
- package/dist/apis/updateCatalog.d.ts +0 -11
- package/dist/apis/updateCatalog.js +0 -30
- package/dist/apis/updateGroupSettings.d.ts +0 -40
- package/dist/apis/updateGroupSettings.js +0 -43
- package/dist/apis/updateHiddenConversPin.d.ts +0 -2
- package/dist/apis/updateHiddenConversPin.js +0 -30
- package/dist/apis/updateLabels.d.ts +0 -15
- package/dist/apis/updateLabels.js +0 -34
- package/dist/apis/updateLang.d.ts +0 -6
- package/dist/apis/updateLang.js +0 -30
- package/dist/apis/updateProductCatalog.d.ts +0 -25
- package/dist/apis/updateProductCatalog.js +0 -51
- package/dist/apis/updateProfile.d.ts +0 -20
- package/dist/apis/updateProfile.js +0 -43
- package/dist/apis/updateProfileBio.d.ts +0 -2
- package/dist/apis/updateProfileBio.js +0 -27
- package/dist/apis/updateQuickMessage.d.ts +0 -11
- package/dist/apis/updateQuickMessage.js +0 -61
- package/dist/apis/updateRecentSearch.d.ts +0 -11
- package/dist/apis/updateRecentSearch.js +0 -41
- package/dist/apis/updateSettings.d.ts +0 -16
- package/dist/apis/updateSettings.js +0 -90
- package/dist/apis/upgradeGroupToCommunity.d.ts +0 -2
- package/dist/apis/upgradeGroupToCommunity.js +0 -27
- package/dist/apis/uploadAttachment.d.ts +0 -50
- package/dist/apis/uploadAttachment.js +0 -202
- package/dist/apis/uploadProductPhoto.d.ts +0 -14
- package/dist/apis/uploadProductPhoto.js +0 -50
- package/dist/apis/verifyCloudMedia.d.ts +0 -14
- package/dist/apis/verifyCloudMedia.js +0 -43
- package/dist/apis/voiceToText.d.ts +0 -4
- package/dist/apis/voiceToText.js +0 -30
- package/dist/apis/votePoll.d.ts +0 -5
- package/dist/apis/votePoll.js +0 -29
- package/dist/cjs/apis/acceptFriendRequest.cjs +0 -33
- package/dist/cjs/apis/addGroupBlockedMember.cjs +0 -33
- package/dist/cjs/apis/addGroupDeputy.cjs +0 -35
- package/dist/cjs/apis/addPollOptions.cjs +0 -31
- package/dist/cjs/apis/addQuickMessage.cjs +0 -65
- package/dist/cjs/apis/addReaction.cjs +0 -313
- package/dist/cjs/apis/addUnreadMark.cjs +0 -68
- package/dist/cjs/apis/addUserToGroup.cjs +0 -39
- package/dist/cjs/apis/blockUser.cjs +0 -33
- package/dist/cjs/apis/blockViewFeed.cjs +0 -35
- package/dist/cjs/apis/cancelPullMobile.cjs +0 -38
- package/dist/cjs/apis/cancelVoiceCall.cjs +0 -47
- package/dist/cjs/apis/changeAccountAvatar.cjs +0 -57
- package/dist/cjs/apis/changeFriendAlias.cjs +0 -32
- package/dist/cjs/apis/changeGroupAvatar.cjs +0 -49
- package/dist/cjs/apis/changeGroupName.cjs +0 -37
- package/dist/cjs/apis/changeGroupOwner.cjs +0 -35
- package/dist/cjs/apis/clearUnreadFriendRequests.cjs +0 -34
- package/dist/cjs/apis/createAutoReply.cjs +0 -42
- package/dist/cjs/apis/createBankAccount.cjs +0 -37
- package/dist/cjs/apis/createCatalog.cjs +0 -34
- package/dist/cjs/apis/createGroup.cjs +0 -48
- package/dist/cjs/apis/createNote.cjs +0 -52
- package/dist/cjs/apis/createPoll.cjs +0 -45
- package/dist/cjs/apis/createProductCatalog.cjs +0 -55
- package/dist/cjs/apis/createReminder.cjs +0 -79
- package/dist/cjs/apis/decryptGids.cjs +0 -35
- package/dist/cjs/apis/deleteAutoReply.cjs +0 -34
- package/dist/cjs/apis/deleteAvatar.cjs +0 -32
- package/dist/cjs/apis/deleteBankAccount.cjs +0 -37
- package/dist/cjs/apis/deleteCatalog.cjs +0 -33
- package/dist/cjs/apis/deleteChat.cjs +0 -66
- package/dist/cjs/apis/deleteGroupInviteBox.cjs +0 -32
- package/dist/cjs/apis/deleteMessage.cjs +0 -68
- package/dist/cjs/apis/deleteProductCatalog.cjs +0 -36
- package/dist/cjs/apis/disableGroupLink.cjs +0 -29
- package/dist/cjs/apis/disperseGroup.cjs +0 -33
- package/dist/cjs/apis/downloadTransferSync.cjs +0 -35
- package/dist/cjs/apis/editNote.cjs +0 -51
- package/dist/cjs/apis/editReminder.cjs +0 -77
- package/dist/cjs/apis/enableGroupLink.cjs +0 -30
- package/dist/cjs/apis/encryptGids.cjs +0 -29
- package/dist/cjs/apis/endVoiceCall.cjs +0 -45
- package/dist/cjs/apis/fetchAccountInfo.cjs +0 -15
- package/dist/cjs/apis/findUser.cjs +0 -58
- package/dist/cjs/apis/findUserByUsername.cjs +0 -43
- package/dist/cjs/apis/forwardMessage.cjs +0 -115
- package/dist/cjs/apis/getAliasList.cjs +0 -32
- package/dist/cjs/apis/getAliasListV2.cjs +0 -33
- package/dist/cjs/apis/getAllFriends.cjs +0 -50
- package/dist/cjs/apis/getAllGroups.cjs +0 -15
- package/dist/cjs/apis/getArchivedChatList.cjs +0 -28
- package/dist/cjs/apis/getAutoDeleteChat.cjs +0 -26
- package/dist/cjs/apis/getAutoReplyList.cjs +0 -29
- package/dist/cjs/apis/getAvatarList.cjs +0 -33
- package/dist/cjs/apis/getAvatarUrlProfile.cjs +0 -46
- package/dist/cjs/apis/getBizAccount.cjs +0 -32
- package/dist/cjs/apis/getBlockFriends.cjs +0 -33
- package/dist/cjs/apis/getCatalogList.cjs +0 -37
- package/dist/cjs/apis/getCloseFriends.cjs +0 -25
- package/dist/cjs/apis/getCloudInfo.cjs +0 -39
- package/dist/cjs/apis/getCloudSettings.cjs +0 -39
- package/dist/cjs/apis/getCloudViewerKey.cjs +0 -30
- package/dist/cjs/apis/getContext.cjs +0 -9
- package/dist/cjs/apis/getConversationMedia.cjs +0 -44
- package/dist/cjs/apis/getCookie.cjs +0 -14
- package/dist/cjs/apis/getEmojiStatusConfig.cjs +0 -28
- package/dist/cjs/apis/getExtraFriendInfo.cjs +0 -36
- package/dist/cjs/apis/getExtraGroupInfo.cjs +0 -37
- package/dist/cjs/apis/getFamilyProfile.cjs +0 -39
- package/dist/cjs/apis/getFamilyUsage.cjs +0 -39
- package/dist/cjs/apis/getFamilyViewerKey.cjs +0 -30
- package/dist/cjs/apis/getFriendBoardList.cjs +0 -31
- package/dist/cjs/apis/getFriendOnlines.cjs +0 -40
- package/dist/cjs/apis/getFriendRecommendations.cjs +0 -32
- package/dist/cjs/apis/getFriendRequestStatus.cjs +0 -30
- package/dist/cjs/apis/getFriendsEmojiStatus.cjs +0 -35
- package/dist/cjs/apis/getFullAvatar.cjs +0 -30
- package/dist/cjs/apis/getGroupBlockedMember.cjs +0 -34
- package/dist/cjs/apis/getGroupChatHistory.cjs +0 -81
- package/dist/cjs/apis/getGroupCloudMessageJump.cjs +0 -63
- package/dist/cjs/apis/getGroupInfo.cjs +0 -37
- package/dist/cjs/apis/getGroupInviteBoxInfo.cjs +0 -43
- package/dist/cjs/apis/getGroupInviteBoxList.cjs +0 -36
- package/dist/cjs/apis/getGroupLinkDetail.cjs +0 -30
- package/dist/cjs/apis/getGroupLinkInfo.cjs +0 -33
- package/dist/cjs/apis/getGroupMembersInfo.cjs +0 -29
- package/dist/cjs/apis/getHiddenConversations.cjs +0 -28
- package/dist/cjs/apis/getLabels.cjs +0 -33
- package/dist/cjs/apis/getLastReadContactTab.cjs +0 -20
- package/dist/cjs/apis/getLastSeen.cjs +0 -45
- package/dist/cjs/apis/getLastSeenReaction.cjs +0 -33
- package/dist/cjs/apis/getListBank.cjs +0 -25
- package/dist/cjs/apis/getListBankAccount.cjs +0 -32
- package/dist/cjs/apis/getListBoard.cjs +0 -61
- package/dist/cjs/apis/getListDevice.cjs +0 -27
- package/dist/cjs/apis/getListPinTopics.cjs +0 -33
- package/dist/cjs/apis/getListReminder.cjs +0 -63
- package/dist/cjs/apis/getMediaStorePreview.cjs +0 -36
- package/dist/cjs/apis/getMiniProfile.cjs +0 -39
- package/dist/cjs/apis/getMultiUsersByPhones.cjs +0 -55
- package/dist/cjs/apis/getMute.cjs +0 -27
- package/dist/cjs/apis/getNoisedIds.cjs +0 -72
- package/dist/cjs/apis/getOwnId.cjs +0 -9
- package/dist/cjs/apis/getPendingGroupMembers.cjs +0 -32
- package/dist/cjs/apis/getPersonalizedStickerList.cjs +0 -29
- package/dist/cjs/apis/getPhonebookV2.cjs +0 -26
- package/dist/cjs/apis/getPinConversations.cjs +0 -27
- package/dist/cjs/apis/getPollDetail.cjs +0 -35
- package/dist/cjs/apis/getProductCatalogList.cjs +0 -38
- package/dist/cjs/apis/getProfileRank.cjs +0 -30
- package/dist/cjs/apis/getProfileVerificationStatus.cjs +0 -25
- package/dist/cjs/apis/getQR.cjs +0 -34
- package/dist/cjs/apis/getQuickMessageList.cjs +0 -29
- package/dist/cjs/apis/getQuotaCommunity.cjs +0 -32
- package/dist/cjs/apis/getRecentSearchList.cjs +0 -30
- package/dist/cjs/apis/getRelatedFriendGroup.cjs +0 -35
- package/dist/cjs/apis/getReminder.cjs +0 -30
- package/dist/cjs/apis/getReminderResponses.cjs +0 -29
- package/dist/cjs/apis/getSentFriendRequest.cjs +0 -29
- package/dist/cjs/apis/getSettings.cjs +0 -25
- package/dist/cjs/apis/getStickerCategoriesV2.cjs +0 -26
- package/dist/cjs/apis/getStickerCategoryData.cjs +0 -30
- package/dist/cjs/apis/getStickerCategoryDetail.cjs +0 -29
- package/dist/cjs/apis/getStickerHello.cjs +0 -39
- package/dist/cjs/apis/getStickerSuggestKeywords.cjs +0 -29
- package/dist/cjs/apis/getStickerSuggestion.cjs +0 -35
- package/dist/cjs/apis/getStickers.cjs +0 -45
- package/dist/cjs/apis/getStickersDetail.cjs +0 -45
- package/dist/cjs/apis/getSyncData.cjs +0 -108
- package/dist/cjs/apis/getUnreadMark.cjs +0 -35
- package/dist/cjs/apis/getUsageMyCloud.cjs +0 -39
- package/dist/cjs/apis/getUsageZCloud.cjs +0 -39
- package/dist/cjs/apis/getUserInfo.cjs +0 -60
- package/dist/cjs/apis/inviteUserToGroups.cjs +0 -35
- package/dist/cjs/apis/joinGroupInviteBox.cjs +0 -30
- package/dist/cjs/apis/joinGroupLink.cjs +0 -32
- package/dist/cjs/apis/keepAlive.cjs +0 -29
- package/dist/cjs/apis/lastOnline.cjs +0 -31
- package/dist/cjs/apis/leaveGroup.cjs +0 -38
- package/dist/cjs/apis/listen.cjs +0 -601
- package/dist/cjs/apis/lockPoll.cjs +0 -33
- package/dist/cjs/apis/lostFocus.cjs +0 -28
- package/dist/cjs/apis/parseLink.cjs +0 -32
- package/dist/cjs/apis/preloadConversations.cjs +0 -94
- package/dist/cjs/apis/pullMobile.cjs +0 -43
- package/dist/cjs/apis/readContactTab.cjs +0 -31
- package/dist/cjs/apis/registerCatalog.cjs +0 -32
- package/dist/cjs/apis/rejectFriendRequest.cjs +0 -32
- package/dist/cjs/apis/removeConversationMedia.cjs +0 -35
- package/dist/cjs/apis/removeFriend.cjs +0 -33
- package/dist/cjs/apis/removeFriendAlias.cjs +0 -29
- package/dist/cjs/apis/removeGroupBlockedMember.cjs +0 -33
- package/dist/cjs/apis/removeGroupDeputy.cjs +0 -35
- package/dist/cjs/apis/removeQuickMessage.cjs +0 -32
- package/dist/cjs/apis/removeReminder.cjs +0 -56
- package/dist/cjs/apis/removeUnreadMark.cjs +0 -66
- package/dist/cjs/apis/removeUserFromGroup.cjs +0 -39
- package/dist/cjs/apis/requestSyncFromPhone.cjs +0 -46
- package/dist/cjs/apis/resetHiddenConversPin.cjs +0 -25
- package/dist/cjs/apis/reuseAvatar.cjs +0 -31
- package/dist/cjs/apis/reviewPendingMemberRequest.cjs +0 -43
- package/dist/cjs/apis/scanURL.cjs +0 -33
- package/dist/cjs/apis/searchSticker.cjs +0 -33
- package/dist/cjs/apis/sendBankCard.cjs +0 -53
- package/dist/cjs/apis/sendCard.cjs +0 -75
- package/dist/cjs/apis/sendDeliveredEvent.cjs +0 -71
- package/dist/cjs/apis/sendFriendRequest.cjs +0 -44
- package/dist/cjs/apis/sendLink.cjs +0 -77
- package/dist/cjs/apis/sendMessage.cjs +0 -468
- package/dist/cjs/apis/sendReport.cjs +0 -69
- package/dist/cjs/apis/sendSeenEvent.cjs +0 -79
- package/dist/cjs/apis/sendSticker.cjs +0 -73
- package/dist/cjs/apis/sendTypingEvent.cjs +0 -49
- package/dist/cjs/apis/sendVideo.cjs +0 -134
- package/dist/cjs/apis/sendVoice.cjs +0 -89
- package/dist/cjs/apis/sendVoiceCall.cjs +0 -120
- package/dist/cjs/apis/setHiddenConversations.cjs +0 -55
- package/dist/cjs/apis/setMute.cjs +0 -83
- package/dist/cjs/apis/setPinnedConversations.cjs +0 -50
- package/dist/cjs/apis/sharePoll.cjs +0 -33
- package/dist/cjs/apis/unblockUser.cjs +0 -33
- package/dist/cjs/apis/undo.cjs +0 -58
- package/dist/cjs/apis/undoFriendRequest.cjs +0 -32
- package/dist/cjs/apis/undoMultiMessage.cjs +0 -62
- package/dist/cjs/apis/updateActiveStatus.cjs +0 -32
- package/dist/cjs/apis/updateArchivedChatList.cjs +0 -39
- package/dist/cjs/apis/updateAutoDeleteChat.cjs +0 -56
- package/dist/cjs/apis/updateAutoReply.cjs +0 -43
- package/dist/cjs/apis/updateBankAccount.cjs +0 -36
- package/dist/cjs/apis/updateCatalog.cjs +0 -35
- package/dist/cjs/apis/updateGroupSettings.cjs +0 -48
- package/dist/cjs/apis/updateHiddenConversPin.cjs +0 -35
- package/dist/cjs/apis/updateLabels.cjs +0 -39
- package/dist/cjs/apis/updateLang.cjs +0 -35
- package/dist/cjs/apis/updateProductCatalog.cjs +0 -56
- package/dist/cjs/apis/updateProfile.cjs +0 -48
- package/dist/cjs/apis/updateProfileBio.cjs +0 -32
- package/dist/cjs/apis/updateQuickMessage.cjs +0 -66
- package/dist/cjs/apis/updateRecentSearch.cjs +0 -46
- package/dist/cjs/apis/updateSettings.cjs +0 -95
- package/dist/cjs/apis/upgradeGroupToCommunity.cjs +0 -32
- package/dist/cjs/apis/uploadAttachment.cjs +0 -218
- package/dist/cjs/apis/uploadProductPhoto.cjs +0 -55
- package/dist/cjs/apis/verifyCloudMedia.cjs +0 -48
- package/dist/cjs/apis/voiceToText.cjs +0 -35
- package/dist/cjs/apis/votePoll.cjs +0 -34
- package/docs/INTEGRATION_GUIDE_SYNC_AND_CALL.md +0 -481
- package/docs/REA_REVERSE_ENGINEERING_PLAN.md +0 -140
- package/eslint.config.js +0 -21
- package/rollup.config.js +0 -28
package/dist/cjs/utils.cjs
CHANGED
|
@@ -4,15 +4,19 @@ var cryptojs = require('crypto-js');
|
|
|
4
4
|
var crypto = require('node:crypto');
|
|
5
5
|
var fs = require('node:fs');
|
|
6
6
|
var path = require('node:path');
|
|
7
|
-
var pako = require('pako');
|
|
8
7
|
var SparkMD5 = require('spark-md5');
|
|
9
8
|
var toughCookie = require('tough-cookie');
|
|
10
|
-
var JSONBig = require('json-bigint');
|
|
11
9
|
var context = require('./context.cjs');
|
|
12
10
|
var ZaloApiError = require('./Errors/ZaloApiError.cjs');
|
|
13
11
|
var ZaloApiMissingImageMetadataGetter = require('./Errors/ZaloApiMissingImageMetadataGetter.cjs');
|
|
14
12
|
var FriendEvent = require('./models/FriendEvent.cjs');
|
|
15
13
|
var GroupEvent = require('./models/GroupEvent.cjs');
|
|
14
|
+
var protocol = require('./constants/protocol.cjs');
|
|
15
|
+
var domains = require('./constants/domains.cjs');
|
|
16
|
+
var defaults = require('./constants/defaults.cjs');
|
|
17
|
+
var aes = require('./crypto/aes.cjs');
|
|
18
|
+
require('pako');
|
|
19
|
+
require('json-bigint');
|
|
16
20
|
|
|
17
21
|
const isBun = typeof Bun !== "undefined";
|
|
18
22
|
function hasOwn(obj, key) {
|
|
@@ -24,7 +28,6 @@ function hasOwn(obj, key) {
|
|
|
24
28
|
* @param type
|
|
25
29
|
* @param params
|
|
26
30
|
* @returns MD5 hash
|
|
27
|
-
*
|
|
28
31
|
*/
|
|
29
32
|
function getSignKey(type, params) {
|
|
30
33
|
const n = [];
|
|
@@ -34,7 +37,7 @@ function getSignKey(type, params) {
|
|
|
34
37
|
}
|
|
35
38
|
}
|
|
36
39
|
n.sort();
|
|
37
|
-
let a =
|
|
40
|
+
let a = protocol.ZALO_PROTOCOL.SIGN_KEY_PREFIX + type;
|
|
38
41
|
for (let s = 0; s < n.length; s++)
|
|
39
42
|
a += params[n[s]];
|
|
40
43
|
return cryptojs.MD5(a).toString();
|
|
@@ -45,7 +48,6 @@ function getSignKey(type, params) {
|
|
|
45
48
|
* @param params
|
|
46
49
|
* @param apiVersion automatically add zalo api version to url params
|
|
47
50
|
* @returns
|
|
48
|
-
*
|
|
49
51
|
*/
|
|
50
52
|
function makeURL(ctx, baseURL, params = {}, apiVersion = true) {
|
|
51
53
|
const url = new URL(baseURL);
|
|
@@ -62,214 +64,32 @@ function makeURL(ctx, baseURL, params = {}, apiVersion = true) {
|
|
|
62
64
|
}
|
|
63
65
|
return url.toString();
|
|
64
66
|
}
|
|
65
|
-
class ParamsEncryptor {
|
|
66
|
-
constructor({ type, imei, firstLaunchTime }) {
|
|
67
|
-
this.zcid = null;
|
|
68
|
-
this.enc_ver = "v2";
|
|
69
|
-
this.zcid = null;
|
|
70
|
-
this.encryptKey = null;
|
|
71
|
-
this.createZcid(type, imei, firstLaunchTime);
|
|
72
|
-
this.zcid_ext = ParamsEncryptor.randomString();
|
|
73
|
-
this.createEncryptKey();
|
|
74
|
-
}
|
|
75
|
-
getEncryptKey() {
|
|
76
|
-
if (!this.encryptKey)
|
|
77
|
-
throw new ZaloApiError.ZaloApiError("getEncryptKey: didn't create encryptKey yet");
|
|
78
|
-
return this.encryptKey;
|
|
79
|
-
}
|
|
80
|
-
createZcid(type, imei, firstLaunchTime) {
|
|
81
|
-
if (!type || !imei || !firstLaunchTime)
|
|
82
|
-
throw new ZaloApiError.ZaloApiError("createZcid: missing params");
|
|
83
|
-
const msg = `${type},${imei},${firstLaunchTime}`;
|
|
84
|
-
const s = ParamsEncryptor.encodeAES("3FC4F0D2AB50057BCE0D90D9187A22B1", msg, "hex", true);
|
|
85
|
-
this.zcid = s;
|
|
86
|
-
}
|
|
87
|
-
createEncryptKey(e = 0) {
|
|
88
|
-
const t = (e, t) => {
|
|
89
|
-
const { even: n } = ParamsEncryptor.processStr(e), { even: a, odd: s } = ParamsEncryptor.processStr(t);
|
|
90
|
-
if (!n || !a || !s)
|
|
91
|
-
return false;
|
|
92
|
-
const i = n.slice(0, 8).join("") + a.slice(0, 12).join("") + s.reverse().slice(0, 12).join("");
|
|
93
|
-
return (this.encryptKey = i), true;
|
|
94
|
-
};
|
|
95
|
-
if (!this.zcid || !this.zcid_ext)
|
|
96
|
-
throw new ZaloApiError.ZaloApiError("createEncryptKey: zcid or zcid_ext is null");
|
|
97
|
-
try {
|
|
98
|
-
const n = cryptojs.MD5(this.zcid_ext).toString().toUpperCase();
|
|
99
|
-
if (t(n, this.zcid) || !(e < 3))
|
|
100
|
-
return !1;
|
|
101
|
-
this.createEncryptKey(e + 1);
|
|
102
|
-
}
|
|
103
|
-
catch (_a) {
|
|
104
|
-
if (e < 3)
|
|
105
|
-
this.createEncryptKey(e + 1);
|
|
106
|
-
}
|
|
107
|
-
return true;
|
|
108
|
-
}
|
|
109
|
-
getParams() {
|
|
110
|
-
return this.zcid
|
|
111
|
-
? {
|
|
112
|
-
zcid: this.zcid,
|
|
113
|
-
zcid_ext: this.zcid_ext,
|
|
114
|
-
enc_ver: this.enc_ver,
|
|
115
|
-
}
|
|
116
|
-
: null;
|
|
117
|
-
}
|
|
118
|
-
static processStr(e) {
|
|
119
|
-
if (!e || "string" != typeof e)
|
|
120
|
-
return {
|
|
121
|
-
even: null,
|
|
122
|
-
odd: null,
|
|
123
|
-
};
|
|
124
|
-
const [t, n] = [...e].reduce((e, t, n) => (e[n % 2].push(t), e), [[], []]);
|
|
125
|
-
return {
|
|
126
|
-
even: t,
|
|
127
|
-
odd: n,
|
|
128
|
-
};
|
|
129
|
-
}
|
|
130
|
-
static randomString(e, t) {
|
|
131
|
-
const n = e || 6, a = t && e && t > e ? t : 12;
|
|
132
|
-
let s = Math.floor(Math.random() * (a - n + 1)) + n;
|
|
133
|
-
if (s > 12) {
|
|
134
|
-
let e = "";
|
|
135
|
-
for (; s > 0;) {
|
|
136
|
-
e += Math.random()
|
|
137
|
-
.toString(16)
|
|
138
|
-
.substr(2, s > 12 ? 12 : s);
|
|
139
|
-
s -= 12;
|
|
140
|
-
}
|
|
141
|
-
return e;
|
|
142
|
-
}
|
|
143
|
-
return Math.random().toString(16).substr(2, s);
|
|
144
|
-
}
|
|
145
|
-
static encodeAES(e, message, type, uppercase, s = 0) {
|
|
146
|
-
if (!message)
|
|
147
|
-
return null;
|
|
148
|
-
try {
|
|
149
|
-
{
|
|
150
|
-
const encoder = "hex" == type ? cryptojs.enc.Hex : cryptojs.enc.Base64;
|
|
151
|
-
const key = cryptojs.enc.Utf8.parse(e);
|
|
152
|
-
const cfg = {
|
|
153
|
-
words: [0, 0, 0, 0],
|
|
154
|
-
sigBytes: 16,
|
|
155
|
-
};
|
|
156
|
-
const encrypted = cryptojs.AES.encrypt(message, key, {
|
|
157
|
-
iv: cfg,
|
|
158
|
-
mode: cryptojs.mode.CBC,
|
|
159
|
-
padding: cryptojs.pad.Pkcs7,
|
|
160
|
-
}).ciphertext.toString(encoder);
|
|
161
|
-
return uppercase ? encrypted.toUpperCase() : encrypted;
|
|
162
|
-
}
|
|
163
|
-
}
|
|
164
|
-
catch (_a) {
|
|
165
|
-
return s < 3 ? ParamsEncryptor.encodeAES(e, message, type, uppercase, s + 1) : null;
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
function decryptResp(key, data) {
|
|
170
|
-
let n = null;
|
|
171
|
-
try {
|
|
172
|
-
n = decodeRespAES(key, data);
|
|
173
|
-
const parsed = JSON.parse(n);
|
|
174
|
-
return parsed;
|
|
175
|
-
}
|
|
176
|
-
catch (_a) {
|
|
177
|
-
return n;
|
|
178
|
-
}
|
|
179
|
-
}
|
|
180
|
-
function decodeRespAES(key, data) {
|
|
181
|
-
data = decodeURIComponent(data);
|
|
182
|
-
const parsedKey = cryptojs.enc.Utf8.parse(key);
|
|
183
|
-
const n = {
|
|
184
|
-
words: [0, 0, 0, 0],
|
|
185
|
-
sigBytes: 16,
|
|
186
|
-
};
|
|
187
|
-
return cryptojs.AES.decrypt({
|
|
188
|
-
ciphertext: cryptojs.enc.Base64.parse(data),
|
|
189
|
-
}, parsedKey, {
|
|
190
|
-
iv: n,
|
|
191
|
-
mode: cryptojs.mode.CBC,
|
|
192
|
-
padding: cryptojs.pad.Pkcs7,
|
|
193
|
-
}).toString(cryptojs.enc.Utf8);
|
|
194
|
-
}
|
|
195
|
-
function decodeBase64ToBuffer(data) {
|
|
196
|
-
return Buffer.from(data, "base64");
|
|
197
|
-
}
|
|
198
|
-
function decodeUnit8Array(data) {
|
|
199
|
-
try {
|
|
200
|
-
return new TextDecoder().decode(data);
|
|
201
|
-
}
|
|
202
|
-
catch (_a) {
|
|
203
|
-
return null;
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
function encodeAES(secretKey, data, t = 0) {
|
|
207
|
-
try {
|
|
208
|
-
const key = cryptojs.enc.Base64.parse(secretKey);
|
|
209
|
-
return cryptojs.AES.encrypt(data, key, {
|
|
210
|
-
iv: cryptojs.enc.Hex.parse("00000000000000000000000000000000"),
|
|
211
|
-
mode: cryptojs.mode.CBC,
|
|
212
|
-
padding: cryptojs.pad.Pkcs7,
|
|
213
|
-
}).ciphertext.toString(cryptojs.enc.Base64);
|
|
214
|
-
}
|
|
215
|
-
catch (_a) {
|
|
216
|
-
return t < 3 ? encodeAES(secretKey, data, t + 1) : null;
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
function decodeAES(secretKey, data, t = 0) {
|
|
220
|
-
try {
|
|
221
|
-
data = decodeURIComponent(data);
|
|
222
|
-
const key = cryptojs.enc.Base64.parse(secretKey);
|
|
223
|
-
return cryptojs.AES.decrypt({
|
|
224
|
-
ciphertext: cryptojs.enc.Base64.parse(data),
|
|
225
|
-
}, key, {
|
|
226
|
-
iv: cryptojs.enc.Hex.parse("00000000000000000000000000000000"),
|
|
227
|
-
mode: cryptojs.mode.CBC,
|
|
228
|
-
padding: cryptojs.pad.Pkcs7,
|
|
229
|
-
}).toString(cryptojs.enc.Utf8);
|
|
230
|
-
}
|
|
231
|
-
catch (_a) {
|
|
232
|
-
return t < 3 ? decodeAES(secretKey, data, t + 1) : null;
|
|
233
|
-
}
|
|
234
|
-
}
|
|
235
67
|
/**
|
|
236
68
|
* Suy luận nền tảng hệ điều hành (OS) từ chuỗi User-Agent.
|
|
237
69
|
*
|
|
238
|
-
* Hàm này được sinh ra để giải quyết vấn đề cốt lõi: thư viện zca-js trước đây
|
|
239
|
-
* hardcode `sec-ch-ua-platform: "Windows"` ở 8 chỗ trong loginQR, trong khi
|
|
240
|
-
* User-Agent có thể là Mac/Linux — tạo ra Browser Mismatch khiến Zalo ban session.
|
|
241
|
-
*
|
|
242
|
-
* Thứ tự ưu tiên nhận diện: Windows → macOS → Linux → mặc định Windows (an toàn nhất)
|
|
243
|
-
*
|
|
244
70
|
* @returns Chuỗi platform theo định dạng Sec-CH-UA-Platform, ví dụ: "Windows", "macOS", "Linux"
|
|
245
71
|
*/
|
|
246
72
|
function getPlatformFromUA(userAgent) {
|
|
247
73
|
if (!userAgent)
|
|
248
|
-
return
|
|
74
|
+
return defaults.ZALO_DEFAULTS.BROWSER.DEFAULT_PLATFORM;
|
|
249
75
|
if (/Windows/i.test(userAgent))
|
|
250
76
|
return "Windows";
|
|
251
77
|
if (/Macintosh|Mac OS X/i.test(userAgent))
|
|
252
78
|
return "macOS";
|
|
253
79
|
if (/Linux|X11/i.test(userAgent))
|
|
254
80
|
return "Linux";
|
|
255
|
-
return
|
|
81
|
+
return defaults.ZALO_DEFAULTS.BROWSER.DEFAULT_PLATFORM;
|
|
256
82
|
}
|
|
257
83
|
/**
|
|
258
84
|
* Trích xuất phiên bản Chrome major từ chuỗi User-Agent.
|
|
259
85
|
*
|
|
260
|
-
* Dùng để điền vào header `sec-ch-ua` một cách động, đảm bảo Chrome version
|
|
261
|
-
* trong header khớp với Chrome version trong User-Agent (tránh fingerprint anomaly).
|
|
262
|
-
*
|
|
263
|
-
* Lưu ý: Nếu UA không phải Chrome/Chromium (ví dụ Firefox, Safari thuần),
|
|
264
|
-
* hàm trả về "130" làm giá trị mặc định an toàn thay vì throw error.
|
|
265
|
-
*
|
|
266
86
|
* @returns Phiên bản Chrome major dạng string, ví dụ: "130", "133"
|
|
267
87
|
*/
|
|
268
88
|
function getChromeVersionFromUA(userAgent) {
|
|
269
89
|
if (!userAgent)
|
|
270
|
-
return
|
|
90
|
+
return defaults.ZALO_DEFAULTS.BROWSER.DEFAULT_CHROME_VERSION;
|
|
271
91
|
const match = userAgent.match(/Chrome\/(\d+)/);
|
|
272
|
-
return match ? match[1] :
|
|
92
|
+
return match ? match[1] : defaults.ZALO_DEFAULTS.BROWSER.DEFAULT_CHROME_VERSION;
|
|
273
93
|
}
|
|
274
94
|
/**
|
|
275
95
|
* Chuẩn hóa chuỗi Accept-Language dựa theo thiết lập ngôn ngữ ngữ cảnh.
|
|
@@ -279,16 +99,13 @@ function getChromeVersionFromUA(userAgent) {
|
|
|
279
99
|
*/
|
|
280
100
|
function getBrowserLanguage(language) {
|
|
281
101
|
if (language === "en") {
|
|
282
|
-
return
|
|
102
|
+
return defaults.ZALO_DEFAULTS.BROWSER.ACCEPT_LANGUAGE_EN;
|
|
283
103
|
}
|
|
284
|
-
return
|
|
104
|
+
return defaults.ZALO_DEFAULTS.BROWSER.ACCEPT_LANGUAGE_VI;
|
|
285
105
|
}
|
|
286
106
|
/**
|
|
287
107
|
* Sinh bộ header Sec-CH-UA nhất quán theo User-Agent (chỉ khi là Chromium/Chrome).
|
|
288
108
|
*
|
|
289
|
-
* Nếu User-Agent là Firefox/Safari, hàm sẽ trả về object rỗng nhằm tránh
|
|
290
|
-
* tạo ra dị thường Browser Mismatch.
|
|
291
|
-
*
|
|
292
109
|
* @param userAgent Chuỗi User-Agent của client
|
|
293
110
|
* @returns Record chứa các header sec-ch-ua-* hoặc object rỗng
|
|
294
111
|
*/
|
|
@@ -303,23 +120,36 @@ function getSecChUaHeaders(userAgent) {
|
|
|
303
120
|
"sec-ch-ua-platform": `"${platform}"`,
|
|
304
121
|
};
|
|
305
122
|
}
|
|
306
|
-
async function getDefaultHeaders(ctx, origin =
|
|
123
|
+
async function getDefaultHeaders(ctx, origin = domains.ZALO_DOMAINS.CHAT_WEB) {
|
|
307
124
|
if (!ctx.cookie)
|
|
308
125
|
throw new ZaloApiError.ZaloApiError("Cookie is not available");
|
|
309
126
|
if (!ctx.userAgent)
|
|
310
127
|
throw new ZaloApiError.ZaloApiError("User agent is not available");
|
|
311
128
|
const secChUa = getSecChUaHeaders(ctx.userAgent);
|
|
312
|
-
return
|
|
129
|
+
return {
|
|
130
|
+
accept: "*/*",
|
|
131
|
+
"accept-encoding": "gzip, deflate, br, zstd",
|
|
132
|
+
"accept-language": getBrowserLanguage(ctx.language),
|
|
133
|
+
"content-type": "application/x-www-form-urlencoded",
|
|
134
|
+
cookie: await ctx.cookie.getCookieString(origin),
|
|
135
|
+
origin: origin,
|
|
136
|
+
priority: "u=1, i",
|
|
137
|
+
referer: `${origin}/`,
|
|
138
|
+
"user-agent": ctx.userAgent,
|
|
139
|
+
"sec-fetch-dest": "empty",
|
|
140
|
+
"sec-fetch-mode": "cors",
|
|
141
|
+
"sec-fetch-site": origin === domains.ZALO_DOMAINS.AUTH_ID ? "same-origin" : "same-site",
|
|
142
|
+
...secChUa,
|
|
143
|
+
};
|
|
313
144
|
}
|
|
314
145
|
async function request(ctx, url, options, raw = false) {
|
|
315
|
-
var _a, _b;
|
|
316
146
|
if (!ctx.cookie)
|
|
317
147
|
ctx.cookie = new toughCookie.CookieJar();
|
|
318
148
|
const origin = new URL(url).origin;
|
|
319
149
|
const defaultHeaders = await getDefaultHeaders(ctx, origin);
|
|
320
150
|
if (!raw) {
|
|
321
151
|
if (options && options.headers) {
|
|
322
|
-
const mergedHeaders =
|
|
152
|
+
const mergedHeaders = { ...defaultHeaders };
|
|
323
153
|
const inputHeaders = options.headers;
|
|
324
154
|
for (const [key, value] of Object.entries(inputHeaders)) {
|
|
325
155
|
const lowerKey = key.toLowerCase();
|
|
@@ -333,37 +163,36 @@ async function request(ctx, url, options, raw = false) {
|
|
|
333
163
|
options.headers = mergedHeaders;
|
|
334
164
|
}
|
|
335
165
|
else {
|
|
336
|
-
options =
|
|
166
|
+
options = { ...(options || {}), headers: defaultHeaders };
|
|
337
167
|
}
|
|
338
168
|
}
|
|
339
|
-
const _options =
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
169
|
+
const _options = {
|
|
170
|
+
...(options ?? {}),
|
|
171
|
+
...(isBun
|
|
172
|
+
? {
|
|
173
|
+
// eslint-disable-next-line @typescript-eslint/ban-ts-comment
|
|
174
|
+
// @ts-ignore
|
|
175
|
+
proxy: ctx.options.agent?.proxy?.href,
|
|
176
|
+
}
|
|
177
|
+
: {
|
|
178
|
+
agent: ctx.options.agent,
|
|
179
|
+
dispatcher: ctx.options.agent,
|
|
180
|
+
}),
|
|
181
|
+
};
|
|
350
182
|
const response = await ctx.options.polyfill(url, _options);
|
|
351
183
|
const setCookieRaw = response.headers.get("set-cookie");
|
|
352
184
|
if (setCookieRaw && !raw) {
|
|
353
185
|
let cookieStrings = [];
|
|
354
186
|
const headers = response.headers;
|
|
355
|
-
// Cách 1: Ưu tiên lấy Mảng Raw chuẩn gốc (Array) của thư viện node-fetch
|
|
356
187
|
if (typeof headers.raw === "function") {
|
|
357
188
|
const rawHeaders = headers.raw();
|
|
358
189
|
if (rawHeaders && rawHeaders["set-cookie"]) {
|
|
359
190
|
cookieStrings = rawHeaders["set-cookie"];
|
|
360
191
|
}
|
|
361
192
|
}
|
|
362
|
-
// Cách 2: Nếu dùng Fetch API Native của NodeJS 18+
|
|
363
193
|
else if (typeof headers.getSetCookie === "function") {
|
|
364
194
|
cookieStrings = headers.getSetCookie();
|
|
365
195
|
}
|
|
366
|
-
// Cách 3: Fallback dùng Regex Lookahead an toàn (Không bao giờ tách nhầm dấu phẩy của Expires date)
|
|
367
196
|
else {
|
|
368
197
|
cookieStrings = setCookieRaw.split(/,\s*(?=[a-zA-Z0-9_-]+\s*=)/);
|
|
369
198
|
}
|
|
@@ -380,11 +209,11 @@ async function request(ctx, url, options, raw = false) {
|
|
|
380
209
|
}
|
|
381
210
|
const redirectURL = response.headers.get("location");
|
|
382
211
|
if (redirectURL) {
|
|
383
|
-
const redirectOptions =
|
|
212
|
+
const redirectOptions = { ...options };
|
|
384
213
|
redirectOptions.method = "GET";
|
|
385
214
|
if (!raw) {
|
|
386
215
|
redirectOptions.headers = new Headers(redirectOptions.headers);
|
|
387
|
-
redirectOptions.headers.set("Referer",
|
|
216
|
+
redirectOptions.headers.set("Referer", `${domains.ZALO_DOMAINS.AUTH_ID}/`);
|
|
388
217
|
}
|
|
389
218
|
return await request(ctx, redirectURL, redirectOptions);
|
|
390
219
|
}
|
|
@@ -425,49 +254,11 @@ async function getGifMetaData(ctx, filePath) {
|
|
|
425
254
|
height: gifData.height,
|
|
426
255
|
};
|
|
427
256
|
}
|
|
428
|
-
async function decodeEventData(parsed, cipherKey) {
|
|
429
|
-
if (typeof parsed.data !== "string")
|
|
430
|
-
throw new ZaloApiError.ZaloApiError(`Invalid data, expected string but got ${typeof parsed.data}`);
|
|
431
|
-
if (typeof parsed.encrypt !== "number")
|
|
432
|
-
throw new ZaloApiError.ZaloApiError(`Invalid encrypt type, expected number but got ${typeof parsed.encrypt}`);
|
|
433
|
-
if (parsed.encrypt < 0 || parsed.encrypt > 3)
|
|
434
|
-
throw new ZaloApiError.ZaloApiError(`Invalid encrypt type, expected 0-3 but got ${parsed.encrypt}`);
|
|
435
|
-
const rawData = parsed.data;
|
|
436
|
-
const encryptType = parsed.encrypt;
|
|
437
|
-
if (encryptType === 0)
|
|
438
|
-
return JSON.parse(rawData);
|
|
439
|
-
const decodedBuffer = decodeBase64ToBuffer(encryptType === 1 ? rawData : decodeURIComponent(rawData));
|
|
440
|
-
let decryptedBuffer = decodedBuffer;
|
|
441
|
-
if (encryptType !== 1) {
|
|
442
|
-
if (cipherKey && decodedBuffer.length >= 48) {
|
|
443
|
-
const algorithm = {
|
|
444
|
-
name: "AES-GCM",
|
|
445
|
-
iv: decodedBuffer.subarray(0, 16),
|
|
446
|
-
tagLength: 128,
|
|
447
|
-
additionalData: decodedBuffer.subarray(16, 32),
|
|
448
|
-
};
|
|
449
|
-
const dataSource = decodedBuffer.subarray(32);
|
|
450
|
-
const cryptoKey = await crypto.subtle.importKey("raw", decodeBase64ToBuffer(cipherKey), algorithm, false, [
|
|
451
|
-
"decrypt",
|
|
452
|
-
]);
|
|
453
|
-
decryptedBuffer = await crypto.subtle.decrypt(algorithm, cryptoKey, dataSource);
|
|
454
|
-
}
|
|
455
|
-
else {
|
|
456
|
-
throw new ZaloApiError.ZaloApiError("Invalid data length or missing cipher key");
|
|
457
|
-
}
|
|
458
|
-
}
|
|
459
|
-
const decompressedBuffer = encryptType === 3 ? new Uint8Array(decryptedBuffer) : pako.inflate(decryptedBuffer);
|
|
460
|
-
const decodedData = decodeUnit8Array(decompressedBuffer);
|
|
461
|
-
if (!decodedData)
|
|
462
|
-
return;
|
|
463
|
-
return JSONBig.parse(decodedData);
|
|
464
|
-
}
|
|
465
257
|
async function getMd5LargeFileObject(source, fileSize) {
|
|
466
258
|
const buffer = typeof source == "string" ? await fs.promises.readFile(source) : source.data;
|
|
467
259
|
return new Promise((resolve) => {
|
|
468
260
|
let currentChunk = 0;
|
|
469
|
-
const chunkSize =
|
|
470
|
-
chunks = Math.ceil(fileSize / chunkSize), spark = new SparkMD5.ArrayBuffer();
|
|
261
|
+
const chunkSize = defaults.ZALO_DEFAULTS.UPLOAD.MD5_CHUNK_SIZE_BYTES, chunks = Math.ceil(fileSize / chunkSize), spark = new SparkMD5.ArrayBuffer();
|
|
471
262
|
function loadNext() {
|
|
472
263
|
const start = currentChunk * chunkSize, end = start + chunkSize >= fileSize ? fileSize : start + chunkSize;
|
|
473
264
|
spark.append(new Uint8Array(buffer.subarray(start, end)).buffer);
|
|
@@ -526,9 +317,9 @@ function getClientMessageType(msgType) {
|
|
|
526
317
|
if (msgType === "chat.recommended")
|
|
527
318
|
return 38;
|
|
528
319
|
if (msgType === "chat.link")
|
|
529
|
-
return 38;
|
|
320
|
+
return 38;
|
|
530
321
|
if (msgType === "chat.video.msg")
|
|
531
|
-
return 44;
|
|
322
|
+
return 44;
|
|
532
323
|
if (msgType === "share.file")
|
|
533
324
|
return 46;
|
|
534
325
|
if (msgType === "chat.gif")
|
|
@@ -543,7 +334,6 @@ function strPadLeft(e, t, n) {
|
|
|
543
334
|
}
|
|
544
335
|
function formatTime(format, timestamp = Date.now()) {
|
|
545
336
|
const date = new Date(timestamp);
|
|
546
|
-
// using lib Intl
|
|
547
337
|
const options = {
|
|
548
338
|
year: "numeric",
|
|
549
339
|
month: "2-digit",
|
|
@@ -551,7 +341,6 @@ function formatTime(format, timestamp = Date.now()) {
|
|
|
551
341
|
hour: "2-digit",
|
|
552
342
|
minute: "2-digit",
|
|
553
343
|
second: "2-digit",
|
|
554
|
-
// hour12: false, // true or false is same <(")
|
|
555
344
|
};
|
|
556
345
|
const formatted = new Intl.DateTimeFormat("vi-VN", options).format(date);
|
|
557
346
|
if (format.includes("%H") || format.includes("%d")) {
|
|
@@ -687,7 +476,7 @@ async function handleZaloResponse(ctx, response, isEncrypted = true) {
|
|
|
687
476
|
result.data = {};
|
|
688
477
|
return result;
|
|
689
478
|
}
|
|
690
|
-
const decodedStr = isEncrypted ? decodeAES(ctx.secretKey, jsonData.data) : null;
|
|
479
|
+
const decodedStr = isEncrypted ? aes.decodeAES(ctx.secretKey, jsonData.data) : null;
|
|
691
480
|
if (isEncrypted && (!decodedStr || decodedStr.length === 0)) {
|
|
692
481
|
result.data = {};
|
|
693
482
|
return result;
|
|
@@ -728,7 +517,7 @@ function apiFactory() {
|
|
|
728
517
|
return makeURL(ctx, baseURL, params, apiVersion);
|
|
729
518
|
},
|
|
730
519
|
encodeAES(data, t) {
|
|
731
|
-
return encodeAES(ctx.secretKey, data, t);
|
|
520
|
+
return aes.encodeAES(ctx.secretKey, data, t);
|
|
732
521
|
},
|
|
733
522
|
request(url, options, raw) {
|
|
734
523
|
return request(ctx, url, options, raw);
|
|
@@ -743,14 +532,6 @@ function apiFactory() {
|
|
|
743
532
|
function generateZaloUUID(userAgent) {
|
|
744
533
|
return crypto.randomUUID() + "-" + cryptojs.MD5(userAgent).toString();
|
|
745
534
|
}
|
|
746
|
-
/**
|
|
747
|
-
* Encrypts a 4-digit PIN to a 32-character hex string
|
|
748
|
-
* @param pin 4-digit PIN number
|
|
749
|
-
* @returns 32-character hex string
|
|
750
|
-
*/
|
|
751
|
-
function encryptPin(pin) {
|
|
752
|
-
return crypto.createHash("md5").update(pin).digest("hex");
|
|
753
|
-
}
|
|
754
535
|
function normalizeHolderName(input) {
|
|
755
536
|
if (!input)
|
|
756
537
|
return undefined;
|
|
@@ -763,214 +544,18 @@ function normalizeHolderName(input) {
|
|
|
763
544
|
.trim();
|
|
764
545
|
return normalized.length >= 5 ? normalized : undefined;
|
|
765
546
|
}
|
|
766
|
-
/**
|
|
767
|
-
* Generates an RSA 2048-bit key pair for mobile message synchronization (`pull_mobile_msg`)
|
|
768
|
-
* @returns Object containing public and private keys in both PEM and Base64 formats
|
|
769
|
-
*/
|
|
770
|
-
function generateRSAKeyPair() {
|
|
771
|
-
const { publicKey, privateKey } = crypto.generateKeyPairSync("rsa", {
|
|
772
|
-
modulusLength: 2048,
|
|
773
|
-
publicKeyEncoding: { type: "spki", format: "pem" },
|
|
774
|
-
privateKeyEncoding: { type: "pkcs8", format: "pem" },
|
|
775
|
-
});
|
|
776
|
-
const publicKeyBase64 = publicKey
|
|
777
|
-
.toString()
|
|
778
|
-
.replace(/-----BEGIN PUBLIC KEY-----/g, "")
|
|
779
|
-
.replace(/-----END PUBLIC KEY-----/g, "")
|
|
780
|
-
.replace(/\s+/g, "");
|
|
781
|
-
const privateKeyBase64 = privateKey
|
|
782
|
-
.toString()
|
|
783
|
-
.replace(/-----BEGIN PRIVATE KEY-----/g, "")
|
|
784
|
-
.replace(/-----END PRIVATE KEY-----/g, "")
|
|
785
|
-
.replace(/\s+/g, "");
|
|
786
|
-
return { publicKeyBase64, privateKeyBase64, publicKey: publicKey.toString(), privateKey: privateKey.toString() };
|
|
787
|
-
}
|
|
788
|
-
function b64urlToBigInt(value) {
|
|
789
|
-
return BigInt("0x" + Buffer.from(value, "base64url").toString("hex"));
|
|
790
|
-
}
|
|
791
|
-
function modPow(base, exp, mod) {
|
|
792
|
-
const zero = BigInt(0);
|
|
793
|
-
const one = BigInt(1);
|
|
794
|
-
let result = one;
|
|
795
|
-
base %= mod;
|
|
796
|
-
while (exp > zero) {
|
|
797
|
-
if (exp & one)
|
|
798
|
-
result = (result * base) % mod;
|
|
799
|
-
base = (base * base) % mod;
|
|
800
|
-
exp >>= one;
|
|
801
|
-
}
|
|
802
|
-
return result;
|
|
803
|
-
}
|
|
804
|
-
/**
|
|
805
|
-
* Pure-BigInt RSA CRT PKCS#1 v1.5 decryption fallback for Node.js environments
|
|
806
|
-
* where OpenSSL blocks `RSA_PKCS1_PADDING` in `crypto.privateDecrypt` (CVE-2023-46809).
|
|
807
|
-
*/
|
|
808
|
-
function rsaDecryptPkcs1Manual(privateKeyPem, cipher) {
|
|
809
|
-
const jwk = crypto.createPrivateKey(privateKeyPem).export({ format: "jwk" });
|
|
810
|
-
const n = b64urlToBigInt(jwk.n);
|
|
811
|
-
const p = b64urlToBigInt(jwk.p);
|
|
812
|
-
const q = b64urlToBigInt(jwk.q);
|
|
813
|
-
const dp = b64urlToBigInt(jwk.dp);
|
|
814
|
-
const dq = b64urlToBigInt(jwk.dq);
|
|
815
|
-
const qi = b64urlToBigInt(jwk.qi);
|
|
816
|
-
const c = BigInt("0x" + cipher.toString("hex"));
|
|
817
|
-
const m1 = modPow(c, dp, p);
|
|
818
|
-
const m2 = modPow(c, dq, q);
|
|
819
|
-
const h = (qi * (((m1 - m2) % p) + p)) % p;
|
|
820
|
-
const m = m2 + h * q;
|
|
821
|
-
const k = Math.ceil(n.toString(16).length / 2);
|
|
822
|
-
const em = Buffer.from(m.toString(16).padStart(k * 2, "0"), "hex");
|
|
823
|
-
if (em[0] !== 0x00 || em[1] !== 0x02)
|
|
824
|
-
throw new ZaloApiError.ZaloApiError("Invalid RSA PKCS#1 v1.5 padding");
|
|
825
|
-
const sep = em.indexOf(0x00, 2);
|
|
826
|
-
if (sep < 10)
|
|
827
|
-
throw new ZaloApiError.ZaloApiError("Invalid RSA PKCS#1 v1.5 padding separator");
|
|
828
|
-
return em.subarray(sep + 1);
|
|
829
|
-
}
|
|
830
|
-
/**
|
|
831
|
-
* Decrypt `encrypted_key` from `syncmsg_info` using RSA private key with PKCS#1 v1.5 scheme.
|
|
832
|
-
* Automatically falls back to pure-BigInt CRT decryption if OpenSSL disables `RSA_PKCS1_PADDING`.
|
|
833
|
-
*
|
|
834
|
-
* @param privateKey - RSA private key in PEM format
|
|
835
|
-
* @param encryptedBase64 - Base64 encoded `encrypted_key` from `syncmsg_info`
|
|
836
|
-
* @returns Raw decrypted bytes (typically 16-32 bytes; use `deriveZdbAesKey` for ZDB4.0 AES-256-CBC key)
|
|
837
|
-
*/
|
|
838
|
-
function decryptWithPrivateKey(privateKey, encryptedBase64) {
|
|
839
|
-
const cleanKey = privateKey.replace(/\\n/g, "\n");
|
|
840
|
-
const encryptedBuffer = Buffer.from(encryptedBase64, "base64");
|
|
841
|
-
try {
|
|
842
|
-
return crypto.privateDecrypt({
|
|
843
|
-
key: cleanKey,
|
|
844
|
-
padding: crypto.constants.RSA_PKCS1_PADDING,
|
|
845
|
-
}, encryptedBuffer);
|
|
846
|
-
}
|
|
847
|
-
catch (err) {
|
|
848
|
-
const errorObj = err;
|
|
849
|
-
const code = String((errorObj === null || errorObj === void 0 ? void 0 : errorObj.code) || "");
|
|
850
|
-
const msg = String((errorObj === null || errorObj === void 0 ? void 0 : errorObj.message) || "");
|
|
851
|
-
if (code.includes("INVALID_ARG") || /RSA_PKCS1_PADDING|security-revert|not supported/i.test(msg)) {
|
|
852
|
-
return rsaDecryptPkcs1Manual(cleanKey, encryptedBuffer);
|
|
853
|
-
}
|
|
854
|
-
throw err;
|
|
855
|
-
}
|
|
856
|
-
}
|
|
857
|
-
/**
|
|
858
|
-
* Derives the 32-byte AES-256-CBC key for Zalo ZDB4.0 (`.db.crypt`) backup files
|
|
859
|
-
* from the raw RSA-decrypted bytes: first 32 uppercase hex characters as ASCII bytes.
|
|
860
|
-
*/
|
|
861
|
-
function deriveZdbAesKey(decryptedRsaBytes) {
|
|
862
|
-
const upperHex = decryptedRsaBytes.toString("hex").toUpperCase();
|
|
863
|
-
if (upperHex.length < 32) {
|
|
864
|
-
throw new ZaloApiError.ZaloApiError(`Decrypted RSA key hex is too short (${upperHex.length} chars, expected >= 32)`);
|
|
865
|
-
}
|
|
866
|
-
return Buffer.from(upperHex.slice(0, 32), "ascii");
|
|
867
|
-
}
|
|
868
|
-
/**
|
|
869
|
-
* Decrypts a Zalo ZDB4.0 (`.db.crypt`) backup buffer into its plaintext ZDB4.0 container
|
|
870
|
-
* (header + table of contents + XZ stream) using 64KB independent AES-256-CBC chunks (`IV = 0`).
|
|
871
|
-
*/
|
|
872
|
-
function decryptZdbBuffer(zdbBuffer, aesKey) {
|
|
873
|
-
const ZDB_MAGIC = Buffer.from("ZDB4.0", "ascii");
|
|
874
|
-
const CHUNK_SIZE = 0x10000;
|
|
875
|
-
const zeroIv = Buffer.alloc(16, 0);
|
|
876
|
-
for (const startOffset of [0, 4]) {
|
|
877
|
-
const encryptedLength = Math.floor((zdbBuffer.length - startOffset) / 16) * 16;
|
|
878
|
-
if (encryptedLength < 16)
|
|
879
|
-
continue;
|
|
880
|
-
const firstChunkLen = Math.min(CHUNK_SIZE, encryptedLength);
|
|
881
|
-
const firstDecipher = crypto.createDecipheriv("aes-256-cbc", aesKey, zeroIv);
|
|
882
|
-
firstDecipher.setAutoPadding(false);
|
|
883
|
-
const firstPlain = Buffer.concat([
|
|
884
|
-
firstDecipher.update(zdbBuffer.subarray(startOffset, startOffset + firstChunkLen)),
|
|
885
|
-
firstDecipher.final(),
|
|
886
|
-
]);
|
|
887
|
-
if (!firstPlain.subarray(0, ZDB_MAGIC.length).equals(ZDB_MAGIC)) {
|
|
888
|
-
continue;
|
|
889
|
-
}
|
|
890
|
-
const chunks = [firstPlain];
|
|
891
|
-
for (let offset = CHUNK_SIZE; offset < encryptedLength; offset += CHUNK_SIZE) {
|
|
892
|
-
const len = Math.min(CHUNK_SIZE, encryptedLength - offset);
|
|
893
|
-
const decipher = crypto.createDecipheriv("aes-256-cbc", aesKey, zeroIv);
|
|
894
|
-
decipher.setAutoPadding(false);
|
|
895
|
-
chunks.push(Buffer.concat([
|
|
896
|
-
decipher.update(zdbBuffer.subarray(startOffset + offset, startOffset + offset + len)),
|
|
897
|
-
decipher.final(),
|
|
898
|
-
]));
|
|
899
|
-
}
|
|
900
|
-
return Buffer.concat(chunks);
|
|
901
|
-
}
|
|
902
|
-
throw new ZaloApiError.ZaloApiError("Invalid AES key or buffer is not in ZDB4.0 format");
|
|
903
|
-
}
|
|
904
|
-
/**
|
|
905
|
-
* Parses the Table of Contents (TOC) from a decrypted ZDB4.0 container buffer,
|
|
906
|
-
* returning the list of SQLite `.db` files (`<uid>.db` / `group_<gid>.db`) and the byte offset where the XZ stream starts.
|
|
907
|
-
*/
|
|
908
|
-
function parseZdbHeader(zdbPlaintext) {
|
|
909
|
-
const ZDB_MAGIC = Buffer.from("ZDB4.0", "ascii");
|
|
910
|
-
const COUNT_OFFSET = 14;
|
|
911
|
-
if (zdbPlaintext.length < COUNT_OFFSET + 4 || !zdbPlaintext.subarray(0, ZDB_MAGIC.length).equals(ZDB_MAGIC)) {
|
|
912
|
-
throw new ZaloApiError.ZaloApiError("Buffer is not a valid decrypted ZDB4.0 container");
|
|
913
|
-
}
|
|
914
|
-
const count = zdbPlaintext.readUInt32BE(COUNT_OFFSET);
|
|
915
|
-
let offset = COUNT_OFFSET + 4;
|
|
916
|
-
const entries = [];
|
|
917
|
-
for (let i = 0; i < count; i++) {
|
|
918
|
-
if (offset + 4 > zdbPlaintext.length) {
|
|
919
|
-
throw new ZaloApiError.ZaloApiError("Truncated ZDB4.0 header while reading entry name length");
|
|
920
|
-
}
|
|
921
|
-
const nameLen = zdbPlaintext.readUInt32BE(offset);
|
|
922
|
-
if (offset + 4 + nameLen + 4 > zdbPlaintext.length) {
|
|
923
|
-
throw new ZaloApiError.ZaloApiError("Truncated ZDB4.0 header while reading entry metadata");
|
|
924
|
-
}
|
|
925
|
-
const name = zdbPlaintext
|
|
926
|
-
.toString("utf8", offset + 4, offset + 4 + nameLen)
|
|
927
|
-
.replace(/\0+$/, "");
|
|
928
|
-
const size = zdbPlaintext.readUInt32BE(offset + 4 + nameLen);
|
|
929
|
-
entries.push({ name, size });
|
|
930
|
-
offset += 4 + nameLen + 4;
|
|
931
|
-
}
|
|
932
|
-
return { entries, xzOffset: offset };
|
|
933
|
-
}
|
|
934
|
-
/**
|
|
935
|
-
* Encrypts a plaintext string for ZCloud / ZFamily APIs (`CLOUD_API` / `CLOUD_FAMILY_API`, module `"98yS"`),
|
|
936
|
-
* using AES-256-CBC with a random 16-byte IV prepended to the ciphertext before Base64 encoding.
|
|
937
|
-
*/
|
|
938
|
-
function encryptZCloudAES(plainText, base64Key) {
|
|
939
|
-
const key = Buffer.from(base64Key, "base64");
|
|
940
|
-
const iv = crypto.randomBytes(16);
|
|
941
|
-
const cipher = crypto.createCipheriv("aes-256-cbc", key, iv);
|
|
942
|
-
const encrypted = Buffer.concat([cipher.update(plainText, "utf8"), cipher.final()]);
|
|
943
|
-
return Buffer.concat([iv, encrypted]).toString("base64");
|
|
944
|
-
}
|
|
945
|
-
/**
|
|
946
|
-
* Decrypts a Base64 payload from ZCloud / ZFamily APIs (`CLOUD_API` / `CLOUD_FAMILY_API`, module `"98yS"`),
|
|
947
|
-
* extracting the first 16 bytes as the AES-256-CBC IV and the remainder as PKCS#7-padded ciphertext.
|
|
948
|
-
*/
|
|
949
|
-
function decryptZCloudAES(base64CipherText, base64Key) {
|
|
950
|
-
const key = Buffer.from(base64Key, "base64");
|
|
951
|
-
const raw = Buffer.from(base64CipherText, "base64");
|
|
952
|
-
const iv = raw.subarray(0, 16);
|
|
953
|
-
const ciphertext = raw.subarray(16);
|
|
954
|
-
const decipher = crypto.createDecipheriv("aes-256-cbc", key, iv);
|
|
955
|
-
return Buffer.concat([decipher.update(ciphertext), decipher.final()]).toString("utf8");
|
|
956
|
-
}
|
|
957
547
|
|
|
958
|
-
exports.
|
|
548
|
+
exports.ZALO_PROTOCOL = protocol.ZALO_PROTOCOL;
|
|
549
|
+
exports.ZALO_DOMAINS = domains.ZALO_DOMAINS;
|
|
550
|
+
exports.ZALO_DEFAULTS = defaults.ZALO_DEFAULTS;
|
|
551
|
+
exports.ParamsEncryptor = aes.ParamsEncryptor;
|
|
552
|
+
exports.decodeAES = aes.decodeAES;
|
|
553
|
+
exports.decryptResp = aes.decryptResp;
|
|
554
|
+
exports.encodeAES = aes.encodeAES;
|
|
555
|
+
exports.encryptPin = aes.encryptPin;
|
|
556
|
+
exports.validatePin = aes.validatePin;
|
|
959
557
|
exports.apiFactory = apiFactory;
|
|
960
|
-
exports.decodeAES = decodeAES;
|
|
961
|
-
exports.decodeBase64ToBuffer = decodeBase64ToBuffer;
|
|
962
|
-
exports.decodeEventData = decodeEventData;
|
|
963
|
-
exports.decodeUnit8Array = decodeUnit8Array;
|
|
964
|
-
exports.decryptResp = decryptResp;
|
|
965
|
-
exports.decryptWithPrivateKey = decryptWithPrivateKey;
|
|
966
|
-
exports.decryptZCloudAES = decryptZCloudAES;
|
|
967
|
-
exports.decryptZdbBuffer = decryptZdbBuffer;
|
|
968
|
-
exports.deriveZdbAesKey = deriveZdbAesKey;
|
|
969
|
-
exports.encodeAES = encodeAES;
|
|
970
|
-
exports.encryptPin = encryptPin;
|
|
971
|
-
exports.encryptZCloudAES = encryptZCloudAES;
|
|
972
558
|
exports.formatTime = formatTime;
|
|
973
|
-
exports.generateRSAKeyPair = generateRSAKeyPair;
|
|
974
559
|
exports.generateZaloUUID = generateZaloUUID;
|
|
975
560
|
exports.getBrowserLanguage = getBrowserLanguage;
|
|
976
561
|
exports.getChromeVersionFromUA = getChromeVersionFromUA;
|
|
@@ -994,9 +579,7 @@ exports.isBun = isBun;
|
|
|
994
579
|
exports.logger = logger;
|
|
995
580
|
exports.makeURL = makeURL;
|
|
996
581
|
exports.normalizeHolderName = normalizeHolderName;
|
|
997
|
-
exports.parseZdbHeader = parseZdbHeader;
|
|
998
582
|
exports.removeUndefinedKeys = removeUndefinedKeys;
|
|
999
583
|
exports.request = request;
|
|
1000
584
|
exports.resolveResponse = resolveResponse;
|
|
1001
|
-
exports.rsaDecryptPkcs1Manual = rsaDecryptPkcs1Manual;
|
|
1002
585
|
exports.strPadLeft = strPadLeft;
|