rubjs 2.9.3 → 3.0.1
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 +32 -25
- package/lib/clients/VoiceChatClient.d.ts +31 -0
- package/lib/clients/VoiceChatClient.js +147 -0
- package/lib/clients/index.d.ts +3 -0
- package/lib/clients/index.js +10 -0
- package/lib/clients/loginClient.d.ts +47 -0
- package/lib/clients/loginClient.js +108 -0
- package/lib/clients/network_login.d.ts +47 -0
- package/lib/clients/network_login.js +137 -0
- package/lib/core/client.d.ts +29 -0
- package/lib/core/client.js +65 -0
- package/lib/core/context/activities.type.d.ts +12 -0
- package/lib/core/context/activities.type.js +18 -0
- package/lib/core/context/chat.type.d.ts +14 -0
- package/lib/core/context/chat.type.js +20 -0
- package/lib/core/context/contextConstructors.d.ts +10 -0
- package/lib/core/context/contextConstructors.js +16 -0
- package/lib/core/context/index.d.ts +5 -0
- package/lib/core/context/index.js +14 -0
- package/lib/core/context/message.type.d.ts +26 -0
- package/lib/core/context/message.type.js +72 -0
- package/lib/core/context/notifications.type.d.ts +14 -0
- package/lib/core/context/notifications.type.js +20 -0
- package/lib/core/crypto.d.ts +12 -0
- package/lib/core/crypto.js +95 -0
- package/lib/core/filters.d.ts +33 -0
- package/lib/core/filters.js +153 -0
- package/lib/core/methods/advanced/builder.d.ts +3 -0
- package/lib/core/methods/advanced/builder.js +30 -0
- package/lib/core/methods/auth/logout.d.ts +3 -0
- package/lib/core/methods/auth/logout.js +6 -0
- package/lib/core/methods/auth/registerDevice.d.ts +3 -0
- package/lib/core/methods/auth/registerDevice.js +47 -0
- package/lib/core/methods/auth/sendCode.d.ts +3 -0
- package/lib/core/methods/auth/sendCode.js +16 -0
- package/lib/core/methods/auth/signIn.d.ts +3 -0
- package/lib/core/methods/auth/signIn.js +13 -0
- package/lib/core/methods/channels/addChannel.d.ts +3 -0
- package/lib/core/methods/channels/addChannel.js +15 -0
- package/lib/core/methods/channels/addChannelMembers.d.ts +3 -0
- package/lib/core/methods/channels/addChannelMembers.js +11 -0
- package/lib/core/methods/channels/banChannelMember.d.ts +3 -0
- package/lib/core/methods/channels/banChannelMember.js +14 -0
- package/lib/core/methods/channels/cancelChangeObjectOwner.d.ts +3 -0
- package/lib/core/methods/channels/cancelChangeObjectOwner.js +6 -0
- package/lib/core/methods/channels/channelPreviewByJoinLink.d.ts +3 -0
- package/lib/core/methods/channels/channelPreviewByJoinLink.js +8 -0
- package/lib/core/methods/channels/checkChannelUsername.d.ts +3 -0
- package/lib/core/methods/channels/checkChannelUsername.js +8 -0
- package/lib/core/methods/channels/createChannelVoiceChat.d.ts +3 -0
- package/lib/core/methods/channels/createChannelVoiceChat.js +6 -0
- package/lib/core/methods/channels/discardChannelVoiceChat.d.ts +3 -0
- package/lib/core/methods/channels/discardChannelVoiceChat.js +9 -0
- package/lib/core/methods/channels/editChannelInfo.d.ts +4 -0
- package/lib/core/methods/channels/editChannelInfo.js +39 -0
- package/lib/core/methods/channels/getBannedChannelMembers.d.ts +3 -0
- package/lib/core/methods/channels/getBannedChannelMembers.js +9 -0
- package/lib/core/methods/channels/getChannelAdminAccessList.d.ts +3 -0
- package/lib/core/methods/channels/getChannelAdminAccessList.js +9 -0
- package/lib/core/methods/channels/getChannelAdminMembers.d.ts +3 -0
- package/lib/core/methods/channels/getChannelAdminMembers.js +9 -0
- package/lib/core/methods/channels/getChannelAllMembers.d.ts +3 -0
- package/lib/core/methods/channels/getChannelAllMembers.js +10 -0
- package/lib/core/methods/channels/getChannelInfo.d.ts +3 -0
- package/lib/core/methods/channels/getChannelInfo.js +6 -0
- package/lib/core/methods/channels/getChannelLink.d.ts +3 -0
- package/lib/core/methods/channels/getChannelLink.js +6 -0
- package/lib/core/methods/channels/getPendingObjectOwner.d.ts +3 -0
- package/lib/core/methods/channels/getPendingObjectOwner.js +6 -0
- package/lib/core/methods/channels/joinChannelAction.d.ts +3 -0
- package/lib/core/methods/channels/joinChannelAction.js +10 -0
- package/lib/core/methods/channels/joinChannelByLink.d.ts +3 -0
- package/lib/core/methods/channels/joinChannelByLink.js +8 -0
- package/lib/core/methods/channels/leaveChannelVoiceChat.d.ts +3 -0
- package/lib/core/methods/channels/leaveChannelVoiceChat.js +9 -0
- package/lib/core/methods/channels/removeChannel.d.ts +3 -0
- package/lib/core/methods/channels/removeChannel.js +6 -0
- package/lib/core/methods/channels/requestChangeObjectOwner.d.ts +3 -0
- package/lib/core/methods/channels/requestChangeObjectOwner.js +9 -0
- package/lib/core/methods/channels/seenChannelMessages.d.ts +3 -0
- package/lib/core/methods/channels/seenChannelMessages.js +10 -0
- package/lib/core/methods/channels/setChannelLink.d.ts +3 -0
- package/lib/core/methods/channels/setChannelLink.js +6 -0
- package/lib/core/methods/channels/setChannelVoiceChatSetting.d.ts +3 -0
- package/lib/core/methods/channels/setChannelVoiceChatSetting.js +15 -0
- package/lib/core/methods/channels/updateChannelUsername.d.ts +3 -0
- package/lib/core/methods/channels/updateChannelUsername.js +9 -0
- package/lib/core/methods/chats/actionOnJoinRequest.d.ts +3 -0
- package/lib/core/methods/chats/actionOnJoinRequest.js +11 -0
- package/lib/core/methods/chats/addLiveComment.d.ts +3 -0
- package/lib/core/methods/chats/addLiveComment.js +6 -0
- package/lib/core/methods/chats/clickMessageUrl.d.ts +3 -0
- package/lib/core/methods/chats/clickMessageUrl.js +6 -0
- package/lib/core/methods/chats/createJoinLink.d.ts +3 -0
- package/lib/core/methods/chats/createJoinLink.js +12 -0
- package/lib/core/methods/chats/deleteAvatar.d.ts +3 -0
- package/lib/core/methods/chats/deleteAvatar.js +6 -0
- package/lib/core/methods/chats/deleteChatHistory.d.ts +3 -0
- package/lib/core/methods/chats/deleteChatHistory.js +9 -0
- package/lib/core/methods/chats/editJoinLink.d.ts +3 -0
- package/lib/core/methods/chats/editJoinLink.js +23 -0
- package/lib/core/methods/chats/getAbsObjects.d.ts +3 -0
- package/lib/core/methods/chats/getAbsObjects.js +8 -0
- package/lib/core/methods/chats/getAvatars.d.ts +3 -0
- package/lib/core/methods/chats/getAvatars.js +6 -0
- package/lib/core/methods/chats/getChatReaction.d.ts +3 -0
- package/lib/core/methods/chats/getChatReaction.js +6 -0
- package/lib/core/methods/chats/getChats.d.ts +3 -0
- package/lib/core/methods/chats/getChats.js +6 -0
- package/lib/core/methods/chats/getChatsUpdates.d.ts +3 -0
- package/lib/core/methods/chats/getChatsUpdates.js +6 -0
- package/lib/core/methods/chats/getJoinLinks.d.ts +3 -0
- package/lib/core/methods/chats/getJoinLinks.js +6 -0
- package/lib/core/methods/chats/getJoinRequests.d.ts +3 -0
- package/lib/core/methods/chats/getJoinRequests.js +6 -0
- package/lib/core/methods/chats/getLinkFromAppUrl.d.ts +3 -0
- package/lib/core/methods/chats/getLinkFromAppUrl.js +6 -0
- package/lib/core/methods/chats/getLiveComments.d.ts +3 -0
- package/lib/core/methods/chats/getLiveComments.js +6 -0
- package/lib/core/methods/chats/getLivePlayUrl.d.ts +3 -0
- package/lib/core/methods/chats/getLivePlayUrl.js +6 -0
- package/lib/core/methods/chats/getLiveStatus.d.ts +3 -0
- package/lib/core/methods/chats/getLiveStatus.js +6 -0
- package/lib/core/methods/chats/getObjectInfoByUsername.d.ts +3 -0
- package/lib/core/methods/chats/getObjectInfoByUsername.js +8 -0
- package/lib/core/methods/chats/getTopChatUsers.d.ts +3 -0
- package/lib/core/methods/chats/getTopChatUsers.js +7 -0
- package/lib/core/methods/chats/removeFromTopChatUsers.d.ts +3 -0
- package/lib/core/methods/chats/removeFromTopChatUsers.js +6 -0
- package/lib/core/methods/chats/removeJoinLink.d.ts +3 -0
- package/lib/core/methods/chats/removeJoinLink.js +8 -0
- package/lib/core/methods/chats/searchChatMessages.d.ts +3 -0
- package/lib/core/methods/chats/searchChatMessages.js +14 -0
- package/lib/core/methods/chats/searchGlobalMessages.d.ts +3 -0
- package/lib/core/methods/chats/searchGlobalMessages.js +6 -0
- package/lib/core/methods/chats/seenChats.d.ts +3 -0
- package/lib/core/methods/chats/seenChats.js +6 -0
- package/lib/core/methods/chats/sendChatActivity.d.ts +3 -0
- package/lib/core/methods/chats/sendChatActivity.js +10 -0
- package/lib/core/methods/chats/sendLive.d.ts +3 -0
- package/lib/core/methods/chats/sendLive.js +17 -0
- package/lib/core/methods/chats/setActionChat.d.ts +3 -0
- package/lib/core/methods/chats/setActionChat.js +10 -0
- package/lib/core/methods/chats/uploadAvatar.d.ts +3 -0
- package/lib/core/methods/chats/uploadAvatar.js +14 -0
- package/lib/core/methods/contacts/addAddressBook.d.ts +3 -0
- package/lib/core/methods/contacts/addAddressBook.js +6 -0
- package/lib/core/methods/contacts/deleteContact.d.ts +3 -0
- package/lib/core/methods/contacts/deleteContact.js +6 -0
- package/lib/core/methods/contacts/getContacts.d.ts +3 -0
- package/lib/core/methods/contacts/getContacts.js +6 -0
- package/lib/core/methods/contacts/getContactsLastOnline.d.ts +3 -0
- package/lib/core/methods/contacts/getContactsLastOnline.js +6 -0
- package/lib/core/methods/contacts/getContactsUpdates.d.ts +3 -0
- package/lib/core/methods/contacts/getContactsUpdates.js +6 -0
- package/lib/core/methods/contacts/resetContacts.d.ts +3 -0
- package/lib/core/methods/contacts/resetContacts.js +7 -0
- package/lib/core/methods/extras/banMember.d.ts +3 -0
- package/lib/core/methods/extras/banMember.js +9 -0
- package/lib/core/methods/extras/deleteMessagebyCount.d.ts +3 -0
- package/lib/core/methods/extras/deleteMessagebyCount.js +19 -0
- package/lib/core/methods/extras/getInfo.d.ts +3 -0
- package/lib/core/methods/extras/getInfo.js +15 -0
- package/lib/core/methods/extras/getObjectByUsername.d.ts +3 -0
- package/lib/core/methods/extras/getObjectByUsername.js +8 -0
- package/lib/core/methods/extras/getProfileLinkItems.d.ts +3 -0
- package/lib/core/methods/extras/getProfileLinkItems.js +6 -0
- package/lib/core/methods/extras/getRelatedObjects.d.ts +3 -0
- package/lib/core/methods/extras/getRelatedObjects.js +6 -0
- package/lib/core/methods/extras/getTranscription.d.ts +3 -0
- package/lib/core/methods/extras/getTranscription.js +9 -0
- package/lib/core/methods/extras/join.d.ts +3 -0
- package/lib/core/methods/extras/join.js +11 -0
- package/lib/core/methods/extras/joinVoiceChat.d.ts +3 -0
- package/lib/core/methods/extras/joinVoiceChat.js +11 -0
- package/lib/core/methods/extras/leaveChat.d.ts +3 -0
- package/lib/core/methods/extras/leaveChat.js +9 -0
- package/lib/core/methods/extras/onEditMessages.d.ts +4 -0
- package/lib/core/methods/extras/onEditMessages.js +32 -0
- package/lib/core/methods/extras/reportObject.d.ts +14 -0
- package/lib/core/methods/extras/reportObject.js +21 -0
- package/lib/core/methods/extras/searchGlobalObjects.d.ts +3 -0
- package/lib/core/methods/extras/searchGlobalObjects.js +6 -0
- package/lib/core/methods/extras/sendVoiceChatActivity.d.ts +3 -0
- package/lib/core/methods/extras/sendVoiceChatActivity.js +13 -0
- package/lib/core/methods/extras/setVoiceChatState.d.ts +3 -0
- package/lib/core/methods/extras/setVoiceChatState.js +14 -0
- package/lib/core/methods/extras/transcribeVoice.d.ts +3 -0
- package/lib/core/methods/extras/transcribeVoice.js +6 -0
- package/lib/core/methods/extras/userIsAdmin.d.ts +3 -0
- package/lib/core/methods/extras/userIsAdmin.js +18 -0
- package/lib/core/methods/gif/addToMyGifSet.d.ts +3 -0
- package/lib/core/methods/gif/addToMyGifSet.js +6 -0
- package/lib/core/methods/gif/getMyGifSet.d.ts +3 -0
- package/lib/core/methods/gif/getMyGifSet.js +6 -0
- package/lib/core/methods/gif/removeFromMyGifSet.d.ts +3 -0
- package/lib/core/methods/gif/removeFromMyGifSet.js +6 -0
- package/lib/core/methods/groups/addGroup.d.ts +3 -0
- package/lib/core/methods/groups/addGroup.js +8 -0
- package/lib/core/methods/groups/addGroupMembers.d.ts +3 -0
- package/lib/core/methods/groups/addGroupMembers.js +8 -0
- package/lib/core/methods/groups/banGroupMember.d.ts +3 -0
- package/lib/core/methods/groups/banGroupMember.js +14 -0
- package/lib/core/methods/groups/createGroupVoiceChat.d.ts +3 -0
- package/lib/core/methods/groups/createGroupVoiceChat.js +6 -0
- package/lib/core/methods/groups/deleteNoAccessGroupChat.d.ts +3 -0
- package/lib/core/methods/groups/deleteNoAccessGroupChat.js +6 -0
- package/lib/core/methods/groups/discardGroupVoiceChat.d.ts +3 -0
- package/lib/core/methods/groups/discardGroupVoiceChat.js +9 -0
- package/lib/core/methods/groups/editGroupInfo.d.ts +6 -0
- package/lib/core/methods/groups/editGroupInfo.js +41 -0
- package/lib/core/methods/groups/getBannedGroupMembers.d.ts +3 -0
- package/lib/core/methods/groups/getBannedGroupMembers.js +6 -0
- package/lib/core/methods/groups/getGroupAdminAccessList.d.ts +3 -0
- package/lib/core/methods/groups/getGroupAdminAccessList.js +9 -0
- package/lib/core/methods/groups/getGroupAdminMembers.d.ts +3 -0
- package/lib/core/methods/groups/getGroupAdminMembers.js +6 -0
- package/lib/core/methods/groups/getGroupAllMembers.d.ts +3 -0
- package/lib/core/methods/groups/getGroupAllMembers.js +10 -0
- package/lib/core/methods/groups/getGroupDefaultAccess.d.ts +3 -0
- package/lib/core/methods/groups/getGroupDefaultAccess.js +6 -0
- package/lib/core/methods/groups/getGroupInfo.d.ts +3 -0
- package/lib/core/methods/groups/getGroupInfo.js +6 -0
- package/lib/core/methods/groups/getGroupLink.d.ts +3 -0
- package/lib/core/methods/groups/getGroupLink.js +6 -0
- package/lib/core/methods/groups/getGroupMentionList.d.ts +3 -0
- package/lib/core/methods/groups/getGroupMentionList.js +9 -0
- package/lib/core/methods/groups/getGroupOnlineCount.d.ts +3 -0
- package/lib/core/methods/groups/getGroupOnlineCount.js +6 -0
- package/lib/core/methods/groups/getGroupVoiceChatParticipants.d.ts +3 -0
- package/lib/core/methods/groups/getGroupVoiceChatParticipants.js +7 -0
- package/lib/core/methods/groups/getGroupVoiceChatUpdates.d.ts +3 -0
- package/lib/core/methods/groups/getGroupVoiceChatUpdates.js +10 -0
- package/lib/core/methods/groups/groupPreviewByJoinLink.d.ts +3 -0
- package/lib/core/methods/groups/groupPreviewByJoinLink.js +8 -0
- package/lib/core/methods/groups/joinGroup.d.ts +3 -0
- package/lib/core/methods/groups/joinGroup.js +8 -0
- package/lib/core/methods/groups/joinGroupVoiceChat.d.ts +3 -0
- package/lib/core/methods/groups/joinGroupVoiceChat.js +11 -0
- package/lib/core/methods/groups/leaveGroup.d.ts +3 -0
- package/lib/core/methods/groups/leaveGroup.js +6 -0
- package/lib/core/methods/groups/leaveGroupVoiceChat.d.ts +3 -0
- package/lib/core/methods/groups/leaveGroupVoiceChat.js +9 -0
- package/lib/core/methods/groups/removeGroup.d.ts +3 -0
- package/lib/core/methods/groups/removeGroup.js +6 -0
- package/lib/core/methods/groups/seenGroupMessages.d.ts +3 -0
- package/lib/core/methods/groups/seenGroupMessages.js +10 -0
- package/lib/core/methods/groups/setGroupAdmin.d.ts +5 -0
- package/lib/core/methods/groups/setGroupAdmin.js +17 -0
- package/lib/core/methods/groups/setGroupDefaultAccess.d.ts +4 -0
- package/lib/core/methods/groups/setGroupDefaultAccess.js +11 -0
- package/lib/core/methods/groups/setGroupLink.d.ts +3 -0
- package/lib/core/methods/groups/setGroupLink.js +6 -0
- package/lib/core/methods/groups/setGroupVoiceChatSetting.d.ts +3 -0
- package/lib/core/methods/groups/setGroupVoiceChatSetting.js +15 -0
- package/lib/core/methods/index.d.ts +189 -0
- package/lib/core/methods/index.js +589 -0
- package/lib/core/methods/messages/actionOnMessageReaction.d.ts +3 -0
- package/lib/core/methods/messages/actionOnMessageReaction.js +14 -0
- package/lib/core/methods/messages/createPoll.d.ts +3 -0
- package/lib/core/methods/messages/createPoll.js +26 -0
- package/lib/core/methods/messages/deleteMessages.d.ts +3 -0
- package/lib/core/methods/messages/deleteMessages.js +17 -0
- package/lib/core/methods/messages/editMessage.d.ts +3 -0
- package/lib/core/methods/messages/editMessage.js +15 -0
- package/lib/core/methods/messages/forwardMessages.d.ts +3 -0
- package/lib/core/methods/messages/forwardMessages.js +22 -0
- package/lib/core/methods/messages/getMessageShareUrl.d.ts +3 -0
- package/lib/core/methods/messages/getMessageShareUrl.js +6 -0
- package/lib/core/methods/messages/getMessages.d.ts +3 -0
- package/lib/core/methods/messages/getMessages.js +12 -0
- package/lib/core/methods/messages/getMessagesByID.d.ts +3 -0
- package/lib/core/methods/messages/getMessagesByID.js +11 -0
- package/lib/core/methods/messages/getMessagesInterval.d.ts +3 -0
- package/lib/core/methods/messages/getMessagesInterval.js +9 -0
- package/lib/core/methods/messages/getMessagesUpdates.d.ts +3 -0
- package/lib/core/methods/messages/getMessagesUpdates.js +6 -0
- package/lib/core/methods/messages/getPollOptionVoters.d.ts +3 -0
- package/lib/core/methods/messages/getPollOptionVoters.js +10 -0
- package/lib/core/methods/messages/getPollStatus.d.ts +3 -0
- package/lib/core/methods/messages/getPollStatus.js +6 -0
- package/lib/core/methods/messages/index.d.ts +26 -0
- package/lib/core/methods/messages/index.js +56 -0
- package/lib/core/methods/messages/sendDocument.d.ts +3 -0
- package/lib/core/methods/messages/sendDocument.js +6 -0
- package/lib/core/methods/messages/sendFileInline.d.ts +18 -0
- package/lib/core/methods/messages/sendFileInline.js +24 -0
- package/lib/core/methods/messages/sendGif.d.ts +3 -0
- package/lib/core/methods/messages/sendGif.js +6 -0
- package/lib/core/methods/messages/sendMessage.d.ts +3 -0
- package/lib/core/methods/messages/sendMessage.js +139 -0
- package/lib/core/methods/messages/sendMusic.d.ts +3 -0
- package/lib/core/methods/messages/sendMusic.js +6 -0
- package/lib/core/methods/messages/sendPhoto.d.ts +3 -0
- package/lib/core/methods/messages/sendPhoto.js +6 -0
- package/lib/core/methods/messages/sendSticker.d.ts +3 -0
- package/lib/core/methods/messages/sendSticker.js +6 -0
- package/lib/core/methods/messages/sendText.d.ts +3 -0
- package/lib/core/methods/messages/sendText.js +6 -0
- package/lib/core/methods/messages/sendVideo.d.ts +3 -0
- package/lib/core/methods/messages/sendVideo.js +6 -0
- package/lib/core/methods/messages/sendVideoMessage.d.ts +3 -0
- package/lib/core/methods/messages/sendVideoMessage.js +6 -0
- package/lib/core/methods/messages/sendVoice.d.ts +3 -0
- package/lib/core/methods/messages/sendVoice.js +6 -0
- package/lib/core/methods/messages/setPinMessage.d.ts +3 -0
- package/lib/core/methods/messages/setPinMessage.js +14 -0
- package/lib/core/methods/messages/votePoll.d.ts +3 -0
- package/lib/core/methods/messages/votePoll.js +6 -0
- package/lib/core/methods/settings/changePassword.d.ts +3 -0
- package/lib/core/methods/settings/changePassword.js +6 -0
- package/lib/core/methods/settings/checkTwoStepPasscode.d.ts +3 -0
- package/lib/core/methods/settings/checkTwoStepPasscode.js +6 -0
- package/lib/core/methods/settings/deleteFolder.d.ts +3 -0
- package/lib/core/methods/settings/deleteFolder.js +6 -0
- package/lib/core/methods/settings/getBlockedUsers.d.ts +3 -0
- package/lib/core/methods/settings/getBlockedUsers.js +6 -0
- package/lib/core/methods/settings/getFolders.d.ts +3 -0
- package/lib/core/methods/settings/getFolders.js +6 -0
- package/lib/core/methods/settings/getMySessions.d.ts +3 -0
- package/lib/core/methods/settings/getMySessions.js +6 -0
- package/lib/core/methods/settings/getPrivacySetting.d.ts +3 -0
- package/lib/core/methods/settings/getPrivacySetting.js +6 -0
- package/lib/core/methods/settings/getSuggestedFolders.d.ts +3 -0
- package/lib/core/methods/settings/getSuggestedFolders.js +6 -0
- package/lib/core/methods/settings/getTwoPasscodeStatus.d.ts +3 -0
- package/lib/core/methods/settings/getTwoPasscodeStatus.js +6 -0
- package/lib/core/methods/settings/requestRecoveryEmail.d.ts +3 -0
- package/lib/core/methods/settings/requestRecoveryEmail.js +9 -0
- package/lib/core/methods/settings/setSetting.d.ts +5 -0
- package/lib/core/methods/settings/setSetting.js +51 -0
- package/lib/core/methods/settings/setupTwoStepVerification.d.ts +3 -0
- package/lib/core/methods/settings/setupTwoStepVerification.js +10 -0
- package/lib/core/methods/settings/terminateOtherSessions.d.ts +3 -0
- package/lib/core/methods/settings/terminateOtherSessions.js +7 -0
- package/lib/core/methods/settings/terminateSession.d.ts +3 -0
- package/lib/core/methods/settings/terminateSession.js +6 -0
- package/lib/core/methods/settings/turnOffTwoStep.d.ts +3 -0
- package/lib/core/methods/settings/turnOffTwoStep.js +7 -0
- package/lib/core/methods/settings/updateProfile.d.ts +3 -0
- package/lib/core/methods/settings/updateProfile.js +21 -0
- package/lib/core/methods/settings/updateUsername.d.ts +3 -0
- package/lib/core/methods/settings/updateUsername.js +6 -0
- package/lib/core/methods/settings/verifyRecoveryEmail.d.ts +3 -0
- package/lib/core/methods/settings/verifyRecoveryEmail.js +6 -0
- package/lib/core/methods/stickers/actionOnStickerSet.d.ts +3 -0
- package/lib/core/methods/stickers/actionOnStickerSet.js +10 -0
- package/lib/core/methods/stickers/getMyStickerSets.d.ts +3 -0
- package/lib/core/methods/stickers/getMyStickerSets.js +6 -0
- package/lib/core/methods/stickers/getStickerSetByID.d.ts +3 -0
- package/lib/core/methods/stickers/getStickerSetByID.js +6 -0
- package/lib/core/methods/stickers/getStickersByEmoji.d.ts +3 -0
- package/lib/core/methods/stickers/getStickersByEmoji.js +6 -0
- package/lib/core/methods/stickers/getStickersBySetIds.d.ts +3 -0
- package/lib/core/methods/stickers/getStickersBySetIds.js +8 -0
- package/lib/core/methods/stickers/getTrendStickerSets.d.ts +3 -0
- package/lib/core/methods/stickers/getTrendStickerSets.js +6 -0
- package/lib/core/methods/stickers/searchStickers.d.ts +3 -0
- package/lib/core/methods/stickers/searchStickers.js +6 -0
- package/lib/core/methods/users/checkUserUsername.d.ts +3 -0
- package/lib/core/methods/users/checkUserUsername.js +6 -0
- package/lib/core/methods/users/deleteUserChat.d.ts +3 -0
- package/lib/core/methods/users/deleteUserChat.js +9 -0
- package/lib/core/methods/users/getMe.d.ts +3 -0
- package/lib/core/methods/users/getMe.js +6 -0
- package/lib/core/methods/users/getUserInfo.d.ts +3 -0
- package/lib/core/methods/users/getUserInfo.js +7 -0
- package/lib/core/methods/users/setBlockUser.d.ts +3 -0
- package/lib/core/methods/users/setBlockUser.js +9 -0
- package/lib/core/methods/utilities/download.d.ts +4 -0
- package/lib/core/methods/utilities/download.js +6 -0
- package/lib/core/methods/utilities/downloadProfilePicture.d.ts +4 -0
- package/lib/core/methods/utilities/downloadProfilePicture.js +28 -0
- package/lib/core/methods/utilities/index.d.ts +8 -0
- package/lib/core/methods/utilities/index.js +20 -0
- package/lib/core/methods/utilities/requestSendFile.d.ts +3 -0
- package/lib/core/methods/utilities/requestSendFile.js +11 -0
- package/lib/core/methods/utilities/run.d.ts +3 -0
- package/lib/core/methods/utilities/run.js +9 -0
- package/lib/core/methods/utilities/start.d.ts +3 -0
- package/lib/core/methods/utilities/start.js +71 -0
- package/lib/core/methods/utilities/thumbnail.js +70 -0
- package/lib/core/methods/utilities/usePlugin.d.ts +4 -0
- package/lib/core/methods/utilities/usePlugin.js +25 -0
- package/lib/core/network/api.d.ts +16 -0
- package/lib/core/network/api.js +95 -0
- package/lib/core/network/file.d.ts +3 -0
- package/lib/core/network/file.js +117 -0
- package/lib/core/network/index.d.ts +25 -0
- package/lib/core/network/index.js +31 -0
- package/lib/core/network/utils.d.ts +9 -0
- package/lib/core/network/utils.js +34 -0
- package/lib/core/network/websocket.d.ts +3 -0
- package/lib/core/network/websocket.js +190 -0
- package/lib/core/session.d.ts +12 -0
- package/lib/core/session.js +65 -0
- package/lib/index.d.ts +11 -0
- package/lib/index.js +48 -0
- package/lib/types/client.type.d.ts +31 -0
- package/lib/types/decorators.type.d.ts +173 -0
- package/lib/types/index.type.d.ts +5 -0
- package/lib/types/index.type.js +44 -0
- package/lib/types/network.type.d.ts +7 -0
- package/lib/types/session.type.d.ts +7 -0
- package/lib/utils/prompt.d.ts +1 -0
- package/lib/utils/prompt.js +17 -0
- package/package.json +45 -43
- package/rubjs/client.d.ts +0 -41
- package/rubjs/client.js +0 -40
- package/rubjs/clients/VoiceChatClient.d.ts +0 -30
- package/rubjs/clients/VoiceChatClient.js +0 -183
- package/rubjs/clients/index.d.ts +0 -4
- package/rubjs/clients/index.js +0 -12
- package/rubjs/clients/loginClient.d.ts +0 -47
- package/rubjs/clients/loginClient.js +0 -122
- package/rubjs/clients/sendLiveClient.d.ts +0 -25
- package/rubjs/clients/sendLiveClient.js +0 -146
- package/rubjs/crypto/index.d.ts +0 -12
- package/rubjs/crypto/index.js +0 -95
- package/rubjs/index.d.ts +0 -7
- package/rubjs/index.js +0 -53
- package/rubjs/methods/advanced/builder.d.ts +0 -3
- package/rubjs/methods/advanced/builder.js +0 -41
- package/rubjs/methods/auth/logout.d.ts +0 -3
- package/rubjs/methods/auth/logout.js +0 -17
- package/rubjs/methods/auth/registerDevice.d.ts +0 -3
- package/rubjs/methods/auth/registerDevice.js +0 -61
- package/rubjs/methods/auth/sendCode.d.ts +0 -3
- package/rubjs/methods/auth/sendCode.js +0 -27
- package/rubjs/methods/auth/signIn.d.ts +0 -3
- package/rubjs/methods/auth/signIn.js +0 -24
- package/rubjs/methods/channels/addChannel.d.ts +0 -3
- package/rubjs/methods/channels/addChannel.js +0 -26
- package/rubjs/methods/channels/addChannelMembers.d.ts +0 -3
- package/rubjs/methods/channels/addChannelMembers.js +0 -22
- package/rubjs/methods/channels/banChannelMember.d.ts +0 -3
- package/rubjs/methods/channels/banChannelMember.js +0 -25
- package/rubjs/methods/channels/cancelChangeObjectOwner.d.ts +0 -3
- package/rubjs/methods/channels/cancelChangeObjectOwner.js +0 -17
- package/rubjs/methods/channels/channelPreviewByJoinLink.d.ts +0 -3
- package/rubjs/methods/channels/channelPreviewByJoinLink.js +0 -19
- package/rubjs/methods/channels/checkChannelUsername.d.ts +0 -3
- package/rubjs/methods/channels/checkChannelUsername.js +0 -19
- package/rubjs/methods/channels/createChannelVoiceChat.d.ts +0 -3
- package/rubjs/methods/channels/createChannelVoiceChat.js +0 -17
- package/rubjs/methods/channels/discardChannelVoiceChat.d.ts +0 -3
- package/rubjs/methods/channels/discardChannelVoiceChat.js +0 -20
- package/rubjs/methods/channels/editChannelInfo.d.ts +0 -4
- package/rubjs/methods/channels/editChannelInfo.js +0 -50
- package/rubjs/methods/channels/getBannedChannelMembers.d.ts +0 -3
- package/rubjs/methods/channels/getBannedChannelMembers.js +0 -20
- package/rubjs/methods/channels/getChannelAdminAccessList.d.ts +0 -3
- package/rubjs/methods/channels/getChannelAdminAccessList.js +0 -20
- package/rubjs/methods/channels/getChannelAdminMembers.d.ts +0 -3
- package/rubjs/methods/channels/getChannelAdminMembers.js +0 -20
- package/rubjs/methods/channels/getChannelAllMembers.d.ts +0 -3
- package/rubjs/methods/channels/getChannelAllMembers.js +0 -21
- package/rubjs/methods/channels/getChannelInfo.d.ts +0 -3
- package/rubjs/methods/channels/getChannelInfo.js +0 -17
- package/rubjs/methods/channels/getChannelLink.d.ts +0 -3
- package/rubjs/methods/channels/getChannelLink.js +0 -17
- package/rubjs/methods/channels/getPendingObjectOwner.d.ts +0 -3
- package/rubjs/methods/channels/getPendingObjectOwner.js +0 -17
- package/rubjs/methods/channels/joinChannelAction.d.ts +0 -3
- package/rubjs/methods/channels/joinChannelAction.js +0 -21
- package/rubjs/methods/channels/joinChannelByLink.d.ts +0 -3
- package/rubjs/methods/channels/joinChannelByLink.js +0 -19
- package/rubjs/methods/channels/leaveChannelVoiceChat.d.ts +0 -3
- package/rubjs/methods/channels/leaveChannelVoiceChat.js +0 -20
- package/rubjs/methods/channels/removeChannel.d.ts +0 -3
- package/rubjs/methods/channels/removeChannel.js +0 -17
- package/rubjs/methods/channels/requestChangeObjectOwner.d.ts +0 -3
- package/rubjs/methods/channels/requestChangeObjectOwner.js +0 -20
- package/rubjs/methods/channels/seenChannelMessages.d.ts +0 -3
- package/rubjs/methods/channels/seenChannelMessages.js +0 -21
- package/rubjs/methods/channels/setChannelLink.d.ts +0 -3
- package/rubjs/methods/channels/setChannelLink.js +0 -17
- package/rubjs/methods/channels/setChannelVoiceChatSetting.d.ts +0 -3
- package/rubjs/methods/channels/setChannelVoiceChatSetting.js +0 -26
- package/rubjs/methods/channels/updateChannelUsername.d.ts +0 -3
- package/rubjs/methods/channels/updateChannelUsername.js +0 -20
- package/rubjs/methods/chats/actionOnJoinRequest.d.ts +0 -3
- package/rubjs/methods/chats/actionOnJoinRequest.js +0 -22
- package/rubjs/methods/chats/addLiveComment.d.ts +0 -3
- package/rubjs/methods/chats/addLiveComment.js +0 -17
- package/rubjs/methods/chats/clickMessageUrl.d.ts +0 -3
- package/rubjs/methods/chats/clickMessageUrl.js +0 -17
- package/rubjs/methods/chats/createJoinLink.d.ts +0 -3
- package/rubjs/methods/chats/createJoinLink.js +0 -23
- package/rubjs/methods/chats/deleteAvatar.d.ts +0 -3
- package/rubjs/methods/chats/deleteAvatar.js +0 -17
- package/rubjs/methods/chats/deleteChatHistory.d.ts +0 -3
- package/rubjs/methods/chats/deleteChatHistory.js +0 -20
- package/rubjs/methods/chats/editJoinLink.d.ts +0 -3
- package/rubjs/methods/chats/editJoinLink.js +0 -34
- package/rubjs/methods/chats/getAbsObjects.d.ts +0 -3
- package/rubjs/methods/chats/getAbsObjects.js +0 -19
- package/rubjs/methods/chats/getAvatars.d.ts +0 -3
- package/rubjs/methods/chats/getAvatars.js +0 -17
- package/rubjs/methods/chats/getChatReaction.d.ts +0 -3
- package/rubjs/methods/chats/getChatReaction.js +0 -17
- package/rubjs/methods/chats/getChats.d.ts +0 -3
- package/rubjs/methods/chats/getChats.js +0 -17
- package/rubjs/methods/chats/getChatsUpdates.d.ts +0 -3
- package/rubjs/methods/chats/getChatsUpdates.js +0 -17
- package/rubjs/methods/chats/getJoinLinks.d.ts +0 -3
- package/rubjs/methods/chats/getJoinLinks.js +0 -17
- package/rubjs/methods/chats/getJoinRequests.d.ts +0 -3
- package/rubjs/methods/chats/getJoinRequests.js +0 -17
- package/rubjs/methods/chats/getLinkFromAppUrl.d.ts +0 -3
- package/rubjs/methods/chats/getLinkFromAppUrl.js +0 -17
- package/rubjs/methods/chats/getLiveComments.d.ts +0 -3
- package/rubjs/methods/chats/getLiveComments.js +0 -17
- package/rubjs/methods/chats/getLivePlayUrl.d.ts +0 -3
- package/rubjs/methods/chats/getLivePlayUrl.js +0 -17
- package/rubjs/methods/chats/getLiveStatus.d.ts +0 -3
- package/rubjs/methods/chats/getLiveStatus.js +0 -17
- package/rubjs/methods/chats/getObjectInfoByUsername.d.ts +0 -3
- package/rubjs/methods/chats/getObjectInfoByUsername.js +0 -19
- package/rubjs/methods/chats/getTopChatUsers.d.ts +0 -3
- package/rubjs/methods/chats/getTopChatUsers.js +0 -18
- package/rubjs/methods/chats/removeFromTopChatUsers.d.ts +0 -3
- package/rubjs/methods/chats/removeFromTopChatUsers.js +0 -17
- package/rubjs/methods/chats/removeJoinLink.d.ts +0 -3
- package/rubjs/methods/chats/removeJoinLink.js +0 -19
- package/rubjs/methods/chats/searchChatMessages.d.ts +0 -3
- package/rubjs/methods/chats/searchChatMessages.js +0 -25
- package/rubjs/methods/chats/searchGlobalMessages.d.ts +0 -3
- package/rubjs/methods/chats/searchGlobalMessages.js +0 -17
- package/rubjs/methods/chats/seenChats.d.ts +0 -3
- package/rubjs/methods/chats/seenChats.js +0 -17
- package/rubjs/methods/chats/sendChatActivity.d.ts +0 -3
- package/rubjs/methods/chats/sendChatActivity.js +0 -21
- package/rubjs/methods/chats/sendLive.d.ts +0 -3
- package/rubjs/methods/chats/sendLive.js +0 -28
- package/rubjs/methods/chats/setActionChat.d.ts +0 -3
- package/rubjs/methods/chats/setActionChat.js +0 -21
- package/rubjs/methods/chats/uploadAvatar.d.ts +0 -3
- package/rubjs/methods/chats/uploadAvatar.js +0 -29
- package/rubjs/methods/contacts/addAddressBook.d.ts +0 -3
- package/rubjs/methods/contacts/addAddressBook.js +0 -17
- package/rubjs/methods/contacts/deleteContact.d.ts +0 -3
- package/rubjs/methods/contacts/deleteContact.js +0 -17
- package/rubjs/methods/contacts/getContacts.d.ts +0 -3
- package/rubjs/methods/contacts/getContacts.js +0 -17
- package/rubjs/methods/contacts/getContactsLastOnline.d.ts +0 -3
- package/rubjs/methods/contacts/getContactsLastOnline.js +0 -17
- package/rubjs/methods/contacts/getContactsUpdates.d.ts +0 -3
- package/rubjs/methods/contacts/getContactsUpdates.js +0 -17
- package/rubjs/methods/contacts/resetContacts.d.ts +0 -3
- package/rubjs/methods/contacts/resetContacts.js +0 -18
- package/rubjs/methods/extras/banMember.d.ts +0 -3
- package/rubjs/methods/extras/banMember.js +0 -20
- package/rubjs/methods/extras/deleteMessagebyCount.d.ts +0 -3
- package/rubjs/methods/extras/deleteMessagebyCount.js +0 -30
- package/rubjs/methods/extras/getInfo.d.ts +0 -3
- package/rubjs/methods/extras/getInfo.js +0 -26
- package/rubjs/methods/extras/getObjectByUsername.d.ts +0 -3
- package/rubjs/methods/extras/getObjectByUsername.js +0 -19
- package/rubjs/methods/extras/getProfileLinkItems.d.ts +0 -3
- package/rubjs/methods/extras/getProfileLinkItems.js +0 -17
- package/rubjs/methods/extras/getRelatedObjects.d.ts +0 -3
- package/rubjs/methods/extras/getRelatedObjects.js +0 -17
- package/rubjs/methods/extras/getTranscription.d.ts +0 -3
- package/rubjs/methods/extras/getTranscription.js +0 -20
- package/rubjs/methods/extras/join.d.ts +0 -3
- package/rubjs/methods/extras/join.js +0 -22
- package/rubjs/methods/extras/joinVoiceChat.d.ts +0 -3
- package/rubjs/methods/extras/joinVoiceChat.js +0 -22
- package/rubjs/methods/extras/leaveChat.d.ts +0 -3
- package/rubjs/methods/extras/leaveChat.js +0 -20
- package/rubjs/methods/extras/onEditMessages.d.ts +0 -3
- package/rubjs/methods/extras/onEditMessages.js +0 -41
- package/rubjs/methods/extras/reportObject.d.ts +0 -14
- package/rubjs/methods/extras/reportObject.js +0 -32
- package/rubjs/methods/extras/searchGlobalObjects.d.ts +0 -3
- package/rubjs/methods/extras/searchGlobalObjects.js +0 -17
- package/rubjs/methods/extras/sendVoiceChatActivity.d.ts +0 -3
- package/rubjs/methods/extras/sendVoiceChatActivity.js +0 -24
- package/rubjs/methods/extras/setVoiceChatState.d.ts +0 -3
- package/rubjs/methods/extras/setVoiceChatState.js +0 -25
- package/rubjs/methods/extras/transcribeVoice.d.ts +0 -3
- package/rubjs/methods/extras/transcribeVoice.js +0 -17
- package/rubjs/methods/extras/userIsAdmin.d.ts +0 -3
- package/rubjs/methods/extras/userIsAdmin.js +0 -29
- package/rubjs/methods/gif/addToMyGifSet.d.ts +0 -3
- package/rubjs/methods/gif/addToMyGifSet.js +0 -17
- package/rubjs/methods/gif/getMyGifSet.d.ts +0 -3
- package/rubjs/methods/gif/getMyGifSet.js +0 -17
- package/rubjs/methods/gif/removeFromMyGifSet.d.ts +0 -3
- package/rubjs/methods/gif/removeFromMyGifSet.js +0 -17
- package/rubjs/methods/groups/addGroup.d.ts +0 -3
- package/rubjs/methods/groups/addGroup.js +0 -19
- package/rubjs/methods/groups/addGroupMembers.d.ts +0 -3
- package/rubjs/methods/groups/addGroupMembers.js +0 -19
- package/rubjs/methods/groups/banGroupMember.d.ts +0 -3
- package/rubjs/methods/groups/banGroupMember.js +0 -25
- package/rubjs/methods/groups/createGroupVoiceChat.d.ts +0 -3
- package/rubjs/methods/groups/createGroupVoiceChat.js +0 -17
- package/rubjs/methods/groups/deleteNoAccessGroupChat.d.ts +0 -3
- package/rubjs/methods/groups/deleteNoAccessGroupChat.js +0 -17
- package/rubjs/methods/groups/discardGroupVoiceChat.d.ts +0 -3
- package/rubjs/methods/groups/discardGroupVoiceChat.js +0 -20
- package/rubjs/methods/groups/editGroupInfo.d.ts +0 -6
- package/rubjs/methods/groups/editGroupInfo.js +0 -52
- package/rubjs/methods/groups/getBannedGroupMembers.d.ts +0 -3
- package/rubjs/methods/groups/getBannedGroupMembers.js +0 -17
- package/rubjs/methods/groups/getGroupAdminAccessList.d.ts +0 -3
- package/rubjs/methods/groups/getGroupAdminAccessList.js +0 -20
- package/rubjs/methods/groups/getGroupAdminMembers.d.ts +0 -3
- package/rubjs/methods/groups/getGroupAdminMembers.js +0 -17
- package/rubjs/methods/groups/getGroupAllMembers.d.ts +0 -3
- package/rubjs/methods/groups/getGroupAllMembers.js +0 -21
- package/rubjs/methods/groups/getGroupDefaultAccess.d.ts +0 -3
- package/rubjs/methods/groups/getGroupDefaultAccess.js +0 -17
- package/rubjs/methods/groups/getGroupInfo.d.ts +0 -3
- package/rubjs/methods/groups/getGroupInfo.js +0 -17
- package/rubjs/methods/groups/getGroupLink.d.ts +0 -3
- package/rubjs/methods/groups/getGroupLink.js +0 -17
- package/rubjs/methods/groups/getGroupMentionList.d.ts +0 -3
- package/rubjs/methods/groups/getGroupMentionList.js +0 -20
- package/rubjs/methods/groups/getGroupOnlineCount.d.ts +0 -3
- package/rubjs/methods/groups/getGroupOnlineCount.js +0 -17
- package/rubjs/methods/groups/getGroupVoiceChatParticipants.d.ts +0 -3
- package/rubjs/methods/groups/getGroupVoiceChatParticipants.js +0 -18
- package/rubjs/methods/groups/getGroupVoiceChatUpdates.d.ts +0 -3
- package/rubjs/methods/groups/getGroupVoiceChatUpdates.js +0 -21
- package/rubjs/methods/groups/groupPreviewByJoinLink.d.ts +0 -3
- package/rubjs/methods/groups/groupPreviewByJoinLink.js +0 -19
- package/rubjs/methods/groups/joinGroup.d.ts +0 -3
- package/rubjs/methods/groups/joinGroup.js +0 -19
- package/rubjs/methods/groups/joinGroupVoiceChat.d.ts +0 -3
- package/rubjs/methods/groups/joinGroupVoiceChat.js +0 -22
- package/rubjs/methods/groups/leaveGroup.d.ts +0 -3
- package/rubjs/methods/groups/leaveGroup.js +0 -17
- package/rubjs/methods/groups/leaveGroupVoiceChat.d.ts +0 -3
- package/rubjs/methods/groups/leaveGroupVoiceChat.js +0 -20
- package/rubjs/methods/groups/removeGroup.d.ts +0 -3
- package/rubjs/methods/groups/removeGroup.js +0 -17
- package/rubjs/methods/groups/seenGroupMessages.d.ts +0 -3
- package/rubjs/methods/groups/seenGroupMessages.js +0 -21
- package/rubjs/methods/groups/setGroupAdmin.d.ts +0 -5
- package/rubjs/methods/groups/setGroupAdmin.js +0 -28
- package/rubjs/methods/groups/setGroupDefaultAccess.d.ts +0 -4
- package/rubjs/methods/groups/setGroupDefaultAccess.js +0 -22
- package/rubjs/methods/groups/setGroupLink.d.ts +0 -3
- package/rubjs/methods/groups/setGroupLink.js +0 -17
- package/rubjs/methods/groups/setGroupVoiceChatSetting.d.ts +0 -3
- package/rubjs/methods/groups/setGroupVoiceChatSetting.js +0 -26
- package/rubjs/methods/index.d.ts +0 -203
- package/rubjs/methods/index.js +0 -967
- package/rubjs/methods/messages/actionOnMessageReaction.d.ts +0 -3
- package/rubjs/methods/messages/actionOnMessageReaction.js +0 -25
- package/rubjs/methods/messages/createPoll.d.ts +0 -3
- package/rubjs/methods/messages/createPoll.js +0 -37
- package/rubjs/methods/messages/deleteMessages.d.ts +0 -3
- package/rubjs/methods/messages/deleteMessages.js +0 -28
- package/rubjs/methods/messages/editMessage.d.ts +0 -3
- package/rubjs/methods/messages/editMessage.js +0 -23
- package/rubjs/methods/messages/forwardMessages.d.ts +0 -3
- package/rubjs/methods/messages/forwardMessages.js +0 -31
- package/rubjs/methods/messages/getMessageShareUrl.d.ts +0 -3
- package/rubjs/methods/messages/getMessageShareUrl.js +0 -17
- package/rubjs/methods/messages/getMessages.d.ts +0 -3
- package/rubjs/methods/messages/getMessages.js +0 -23
- package/rubjs/methods/messages/getMessagesByID.d.ts +0 -3
- package/rubjs/methods/messages/getMessagesByID.js +0 -22
- package/rubjs/methods/messages/getMessagesInterval.d.ts +0 -3
- package/rubjs/methods/messages/getMessagesInterval.js +0 -20
- package/rubjs/methods/messages/getMessagesUpdates.d.ts +0 -3
- package/rubjs/methods/messages/getMessagesUpdates.js +0 -17
- package/rubjs/methods/messages/getPollOptionVoters.d.ts +0 -3
- package/rubjs/methods/messages/getPollOptionVoters.js +0 -21
- package/rubjs/methods/messages/getPollStatus.d.ts +0 -3
- package/rubjs/methods/messages/getPollStatus.js +0 -17
- package/rubjs/methods/messages/index.d.ts +0 -27
- package/rubjs/methods/messages/index.js +0 -58
- package/rubjs/methods/messages/requestSendFile.d.ts +0 -4
- package/rubjs/methods/messages/requestSendFile.js +0 -22
- package/rubjs/methods/messages/sendDocument.d.ts +0 -3
- package/rubjs/methods/messages/sendDocument.js +0 -17
- package/rubjs/methods/messages/sendFileInline.d.ts +0 -18
- package/rubjs/methods/messages/sendFileInline.js +0 -35
- package/rubjs/methods/messages/sendGif.d.ts +0 -3
- package/rubjs/methods/messages/sendGif.js +0 -17
- package/rubjs/methods/messages/sendMessage.d.ts +0 -3
- package/rubjs/methods/messages/sendMessage.js +0 -149
- package/rubjs/methods/messages/sendMusic.d.ts +0 -3
- package/rubjs/methods/messages/sendMusic.js +0 -17
- package/rubjs/methods/messages/sendPhoto.d.ts +0 -3
- package/rubjs/methods/messages/sendPhoto.js +0 -17
- package/rubjs/methods/messages/sendSticker.d.ts +0 -3
- package/rubjs/methods/messages/sendSticker.js +0 -17
- package/rubjs/methods/messages/sendText.d.ts +0 -3
- package/rubjs/methods/messages/sendText.js +0 -17
- package/rubjs/methods/messages/sendVideo.d.ts +0 -3
- package/rubjs/methods/messages/sendVideo.js +0 -17
- package/rubjs/methods/messages/sendVideoMessage.d.ts +0 -3
- package/rubjs/methods/messages/sendVideoMessage.js +0 -17
- package/rubjs/methods/messages/sendVoice.d.ts +0 -3
- package/rubjs/methods/messages/sendVoice.js +0 -17
- package/rubjs/methods/messages/setPinMessage.d.ts +0 -3
- package/rubjs/methods/messages/setPinMessage.js +0 -25
- package/rubjs/methods/messages/votePoll.d.ts +0 -3
- package/rubjs/methods/messages/votePoll.js +0 -17
- package/rubjs/methods/settings/changePassword.d.ts +0 -3
- package/rubjs/methods/settings/changePassword.js +0 -17
- package/rubjs/methods/settings/checkTwoStepPasscode.d.ts +0 -3
- package/rubjs/methods/settings/checkTwoStepPasscode.js +0 -17
- package/rubjs/methods/settings/deleteFolder.d.ts +0 -3
- package/rubjs/methods/settings/deleteFolder.js +0 -17
- package/rubjs/methods/settings/getBlockedUsers.d.ts +0 -3
- package/rubjs/methods/settings/getBlockedUsers.js +0 -17
- package/rubjs/methods/settings/getFolders.d.ts +0 -3
- package/rubjs/methods/settings/getFolders.js +0 -17
- package/rubjs/methods/settings/getMySessions.d.ts +0 -3
- package/rubjs/methods/settings/getMySessions.js +0 -17
- package/rubjs/methods/settings/getPrivacySetting.d.ts +0 -3
- package/rubjs/methods/settings/getPrivacySetting.js +0 -17
- package/rubjs/methods/settings/getSuggestedFolders.d.ts +0 -3
- package/rubjs/methods/settings/getSuggestedFolders.js +0 -17
- package/rubjs/methods/settings/getTwoPasscodeStatus.d.ts +0 -3
- package/rubjs/methods/settings/getTwoPasscodeStatus.js +0 -17
- package/rubjs/methods/settings/requestRecoveryEmail.d.ts +0 -3
- package/rubjs/methods/settings/requestRecoveryEmail.js +0 -20
- package/rubjs/methods/settings/setSetting.d.ts +0 -5
- package/rubjs/methods/settings/setSetting.js +0 -60
- package/rubjs/methods/settings/setupTwoStepVerification.d.ts +0 -3
- package/rubjs/methods/settings/setupTwoStepVerification.js +0 -21
- package/rubjs/methods/settings/terminateOtherSessions.d.ts +0 -3
- package/rubjs/methods/settings/terminateOtherSessions.js +0 -18
- package/rubjs/methods/settings/terminateSession.d.ts +0 -3
- package/rubjs/methods/settings/terminateSession.js +0 -17
- package/rubjs/methods/settings/turnOffTwoStep.d.ts +0 -3
- package/rubjs/methods/settings/turnOffTwoStep.js +0 -18
- package/rubjs/methods/settings/updateProfile.d.ts +0 -3
- package/rubjs/methods/settings/updateProfile.js +0 -30
- package/rubjs/methods/settings/updateUsername.d.ts +0 -3
- package/rubjs/methods/settings/updateUsername.js +0 -17
- package/rubjs/methods/settings/verifyRecoveryEmail.d.ts +0 -3
- package/rubjs/methods/settings/verifyRecoveryEmail.js +0 -17
- package/rubjs/methods/stickers/actionOnStickerSet.d.ts +0 -3
- package/rubjs/methods/stickers/actionOnStickerSet.js +0 -21
- package/rubjs/methods/stickers/getMyStickerSets.d.ts +0 -3
- package/rubjs/methods/stickers/getMyStickerSets.js +0 -17
- package/rubjs/methods/stickers/getStickerSetByID.d.ts +0 -3
- package/rubjs/methods/stickers/getStickerSetByID.js +0 -17
- package/rubjs/methods/stickers/getStickersByEmoji.d.ts +0 -3
- package/rubjs/methods/stickers/getStickersByEmoji.js +0 -17
- package/rubjs/methods/stickers/getStickersBySetIds.d.ts +0 -3
- package/rubjs/methods/stickers/getStickersBySetIds.js +0 -19
- package/rubjs/methods/stickers/getTrendStickerSets.d.ts +0 -3
- package/rubjs/methods/stickers/getTrendStickerSets.js +0 -17
- package/rubjs/methods/stickers/searchStickers.d.ts +0 -3
- package/rubjs/methods/stickers/searchStickers.js +0 -17
- package/rubjs/methods/users/checkUserUsername.d.ts +0 -3
- package/rubjs/methods/users/checkUserUsername.js +0 -17
- package/rubjs/methods/users/deleteUserChat.d.ts +0 -3
- package/rubjs/methods/users/deleteUserChat.js +0 -20
- package/rubjs/methods/users/getMe.d.ts +0 -3
- package/rubjs/methods/users/getMe.js +0 -17
- package/rubjs/methods/users/getUserInfo.d.ts +0 -4
- package/rubjs/methods/users/getUserInfo.js +0 -18
- package/rubjs/methods/users/setBlockUser.d.ts +0 -3
- package/rubjs/methods/users/setBlockUser.js +0 -20
- package/rubjs/methods/utilities/download.d.ts +0 -4
- package/rubjs/methods/utilities/download.js +0 -17
- package/rubjs/methods/utilities/downloadProfilePicture.d.ts +0 -3
- package/rubjs/methods/utilities/downloadProfilePicture.js +0 -27
- package/rubjs/methods/utilities/get.d.ts +0 -4
- package/rubjs/methods/utilities/get.js +0 -21
- package/rubjs/methods/utilities/index.d.ts +0 -8
- package/rubjs/methods/utilities/index.js +0 -20
- package/rubjs/methods/utilities/post.d.ts +0 -4
- package/rubjs/methods/utilities/post.js +0 -21
- package/rubjs/methods/utilities/run.d.ts +0 -3
- package/rubjs/methods/utilities/run.js +0 -24
- package/rubjs/methods/utilities/start.d.ts +0 -3
- package/rubjs/methods/utilities/start.js +0 -82
- package/rubjs/methods/utilities/thumbnail.js +0 -85
- package/rubjs/network/index.d.ts +0 -37
- package/rubjs/network/index.js +0 -405
- package/rubjs/network/loginNetwork.d.ts +0 -39
- package/rubjs/network/loginNetwork.js +0 -122
- package/rubjs/session/index.d.ts +0 -23
- package/rubjs/session/index.js +0 -65
- package/rubjs/types/auth.d.ts +0 -40
- package/rubjs/types/chats.d.ts +0 -79
- package/rubjs/types/decorators.d.ts +0 -170
- package/rubjs/types/groups.d.ts +0 -155
- package/rubjs/types/index.d.ts +0 -8
- package/rubjs/types/index.js +0 -53
- package/rubjs/types/message.d.ts +0 -26
- package/rubjs/types/message.js +0 -81
- package/rubjs/types/messages.d.ts +0 -178
- package/rubjs/types/messages.js +0 -2
- package/rubjs/types/users.d.ts +0 -64
- package/rubjs/types/users.js +0 -2
- package/rubjs/utils/filters.d.ts +0 -33
- package/rubjs/utils/filters.js +0 -167
- package/rubjs/utils/index.d.ts +0 -3
- package/rubjs/utils/index.js +0 -10
- /package/{rubjs → lib/core}/methods/advanced/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/advanced/index.js +0 -0
- /package/{rubjs → lib/core}/methods/auth/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/auth/index.js +0 -0
- /package/{rubjs → lib/core}/methods/channels/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/channels/index.js +0 -0
- /package/{rubjs → lib/core}/methods/chats/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/chats/index.js +0 -0
- /package/{rubjs → lib/core}/methods/contacts/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/contacts/index.js +0 -0
- /package/{rubjs → lib/core}/methods/extras/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/extras/index.js +0 -0
- /package/{rubjs → lib/core}/methods/gif/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/gif/index.js +0 -0
- /package/{rubjs → lib/core}/methods/groups/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/groups/index.js +0 -0
- /package/{rubjs → lib/core}/methods/settings/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/settings/index.js +0 -0
- /package/{rubjs → lib/core}/methods/stickers/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/stickers/index.js +0 -0
- /package/{rubjs → lib/core}/methods/users/index.d.ts +0 -0
- /package/{rubjs → lib/core}/methods/users/index.js +0 -0
- /package/{rubjs → lib/core}/methods/utilities/thumbnail.d.ts +0 -0
- /package/{rubjs/parser/index.d.ts → lib/core/parser.d.ts} +0 -0
- /package/{rubjs/parser/index.js → lib/core/parser.js} +0 -0
- /package/{rubjs/types/auth.js → lib/types/client.type.js} +0 -0
- /package/{rubjs/types/chats.js → lib/types/decorators.type.js} +0 -0
- /package/{rubjs/types/decorators.js → lib/types/network.type.js} +0 -0
- /package/{rubjs/types/groups.js → lib/types/session.type.js} +0 -0
- /package/{rubjs → lib}/utils/utils.d.ts +0 -0
- /package/{rubjs → lib}/utils/utils.js +0 -0
@@ -0,0 +1,70 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const promises_1 = __importDefault(require("fs/promises"));
|
7
|
+
const path_1 = __importDefault(require("path"));
|
8
|
+
const os_1 = __importDefault(require("os"));
|
9
|
+
const optional_require_1 = require("optional-require");
|
10
|
+
const sharp = (0, optional_require_1.optionalRequire)('sharp', { default: true });
|
11
|
+
const ffmpeg = (0, optional_require_1.optionalRequire)('fluent-ffmpeg', { default: true });
|
12
|
+
class ThumbnailGenerator {
|
13
|
+
static async getTime(videoPath) {
|
14
|
+
if (!ffmpeg) {
|
15
|
+
throw new Error('fluent-ffmpeg module is not installed. Some features may be disabled.');
|
16
|
+
}
|
17
|
+
return new Promise((resolve, reject) => {
|
18
|
+
ffmpeg.ffprobe(videoPath, (err, metadata) => {
|
19
|
+
if (err) {
|
20
|
+
console.error('Error fetching metadata:', err);
|
21
|
+
reject(err);
|
22
|
+
return;
|
23
|
+
}
|
24
|
+
resolve(metadata.format.duration);
|
25
|
+
});
|
26
|
+
});
|
27
|
+
}
|
28
|
+
static async fromVideo(videoPath) {
|
29
|
+
if (!ffmpeg) {
|
30
|
+
throw new Error('fluent-ffmpeg module is not installed. Some features may be disabled.');
|
31
|
+
}
|
32
|
+
const tempImagePath = path_1.default.join(os_1.default.tmpdir(), `thumbnail_${Date.now()}.png`);
|
33
|
+
try {
|
34
|
+
await new Promise((resolve, reject) => {
|
35
|
+
ffmpeg(videoPath)
|
36
|
+
.on('end', () => resolve(undefined))
|
37
|
+
.on('error', reject)
|
38
|
+
.screenshots({
|
39
|
+
count: 1,
|
40
|
+
timemarks: ['00:00:00.000'],
|
41
|
+
filename: path_1.default.basename(tempImagePath),
|
42
|
+
folder: path_1.default.dirname(tempImagePath),
|
43
|
+
size: '400x?',
|
44
|
+
});
|
45
|
+
});
|
46
|
+
const thumbnailBuffer = await promises_1.default.readFile(tempImagePath);
|
47
|
+
const base64Thumbnail = thumbnailBuffer.toString('base64');
|
48
|
+
await promises_1.default.unlink(tempImagePath);
|
49
|
+
return base64Thumbnail;
|
50
|
+
}
|
51
|
+
catch (error) {
|
52
|
+
console.error('Error generating video thumbnail:', error);
|
53
|
+
throw error;
|
54
|
+
}
|
55
|
+
}
|
56
|
+
static async fromImage(imagePath, width = 320) {
|
57
|
+
if (!sharp) {
|
58
|
+
throw new Error('sharp module is not installed. Some features may be disabled.');
|
59
|
+
}
|
60
|
+
try {
|
61
|
+
const buffer = await sharp(imagePath).resize(width).toBuffer();
|
62
|
+
return buffer.toString('base64');
|
63
|
+
}
|
64
|
+
catch (error) {
|
65
|
+
console.error('Error generating image thumbnail:', error);
|
66
|
+
throw error;
|
67
|
+
}
|
68
|
+
}
|
69
|
+
}
|
70
|
+
exports.default = ThumbnailGenerator;
|
@@ -0,0 +1,25 @@
|
|
1
|
+
"use strict";
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
3
|
+
async function usePlugin(plugin) {
|
4
|
+
const existingIndex = this.plugins.findIndex((p) => p.name === plugin.name);
|
5
|
+
if (existingIndex !== -1) {
|
6
|
+
const existing = this.plugins[existingIndex];
|
7
|
+
if (existing.version &&
|
8
|
+
plugin.version &&
|
9
|
+
existing.version === plugin.version) {
|
10
|
+
console.warn(`[usePlugin] Plugin "${plugin.name}" version ${plugin.version} is already registered.`);
|
11
|
+
return;
|
12
|
+
}
|
13
|
+
console.log(`[usePlugin] Replacing plugin "${plugin.name}" version ${existing.version ?? 'unknown'} with version ${plugin.version ?? 'unknown'}.`);
|
14
|
+
this.plugins.splice(existingIndex, 1);
|
15
|
+
}
|
16
|
+
try {
|
17
|
+
await plugin.run(this);
|
18
|
+
this.plugins.push(plugin);
|
19
|
+
console.log(`[usePlugin] Plugin "${plugin.name}" version ${plugin.version ?? 'unknown'} loaded successfully.`);
|
20
|
+
}
|
21
|
+
catch (error) {
|
22
|
+
console.error(`[usePlugin] Failed to run plugin "${plugin.name}":`, error);
|
23
|
+
}
|
24
|
+
}
|
25
|
+
exports.default = usePlugin;
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import Network from '.';
|
2
|
+
interface SendPayloadInputs {
|
3
|
+
input?: Record<string, any>;
|
4
|
+
method?: string;
|
5
|
+
tmp_session: boolean;
|
6
|
+
}
|
7
|
+
/**
|
8
|
+
* Retrieves API and WSS server URLs
|
9
|
+
*/
|
10
|
+
export declare function getDcs(network: Network): Promise<boolean>;
|
11
|
+
/**
|
12
|
+
* Sends a POST request with retry logic and enhanced error reporting
|
13
|
+
*/
|
14
|
+
export declare function sendRequest(network: Network, url: string, data: any): Promise<unknown>;
|
15
|
+
export declare function sendPayload(network: Network, datas: SendPayloadInputs): Promise<any>;
|
16
|
+
export {};
|
@@ -0,0 +1,95 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.getDcs = getDcs;
|
7
|
+
exports.sendRequest = sendRequest;
|
8
|
+
exports.sendPayload = sendPayload;
|
9
|
+
const undici_1 = require("undici");
|
10
|
+
const crypto_1 = __importDefault(require("../crypto"));
|
11
|
+
/**
|
12
|
+
* Retrieves API and WSS server URLs
|
13
|
+
*/
|
14
|
+
async function getDcs(network) {
|
15
|
+
const url = 'https://getdcmess.iranlms.ir/';
|
16
|
+
const RETRY_DELAY = 3000;
|
17
|
+
while (true) {
|
18
|
+
try {
|
19
|
+
const res = await (0, undici_1.request)(url, {
|
20
|
+
method: 'GET',
|
21
|
+
dispatcher: network.agent,
|
22
|
+
});
|
23
|
+
if (res.statusCode === 200) {
|
24
|
+
const body = (await res.body.json());
|
25
|
+
if (body?.data) {
|
26
|
+
const dcs = body.data;
|
27
|
+
network.apiUrl = `${dcs.API[dcs.default_api]}/`;
|
28
|
+
network.wssUrl = dcs.socket[dcs.default_socket];
|
29
|
+
return true;
|
30
|
+
}
|
31
|
+
}
|
32
|
+
console.warn('[getDcs] Unexpected status or data format:', res.statusCode);
|
33
|
+
}
|
34
|
+
catch (error) {
|
35
|
+
console.error('[getDcs] Error:', error);
|
36
|
+
}
|
37
|
+
await network.delay(RETRY_DELAY);
|
38
|
+
}
|
39
|
+
}
|
40
|
+
/**
|
41
|
+
* Sends a POST request with retry logic and enhanced error reporting
|
42
|
+
*/
|
43
|
+
async function sendRequest(network, url, data) {
|
44
|
+
const MAX_ATTEMPTS = 3;
|
45
|
+
for (let attempt = 1; attempt <= MAX_ATTEMPTS; attempt++) {
|
46
|
+
try {
|
47
|
+
const res = await (0, undici_1.request)(url, {
|
48
|
+
method: 'POST',
|
49
|
+
headers: {
|
50
|
+
'content-type': 'application/json',
|
51
|
+
...network.headers,
|
52
|
+
},
|
53
|
+
body: JSON.stringify(data),
|
54
|
+
dispatcher: network.agent,
|
55
|
+
});
|
56
|
+
if (res.statusCode === 200) {
|
57
|
+
const responseData = await res.body.json();
|
58
|
+
return responseData;
|
59
|
+
}
|
60
|
+
else {
|
61
|
+
console.warn(`[request] Attempt ${attempt}: Unexpected status ${res.statusCode}`);
|
62
|
+
}
|
63
|
+
}
|
64
|
+
catch (error) {
|
65
|
+
console.error(`[request] Attempt ${attempt} failed:`, error);
|
66
|
+
}
|
67
|
+
await network.delay(1000);
|
68
|
+
}
|
69
|
+
throw new Error(`[request] Failed after ${MAX_ATTEMPTS} attempts: ${url}`);
|
70
|
+
}
|
71
|
+
async function sendPayload(network, datas) {
|
72
|
+
await network.getDcs();
|
73
|
+
while (!network.apiUrl) {
|
74
|
+
await network.delay(1000);
|
75
|
+
}
|
76
|
+
const { auth, decode_auth, key, privateKey } = network.client;
|
77
|
+
if (!key)
|
78
|
+
return;
|
79
|
+
const credentialsKey = datas.tmp_session ? 'tmp_session' : 'auth';
|
80
|
+
const credentialsValue = datas.tmp_session ? auth : decode_auth;
|
81
|
+
const dataPayload = JSON.stringify({
|
82
|
+
client: network.defaultPlatform,
|
83
|
+
method: datas.method,
|
84
|
+
input: datas.input,
|
85
|
+
});
|
86
|
+
const payload = {
|
87
|
+
api_version: '6',
|
88
|
+
data_enc: crypto_1.default.encrypt(dataPayload, key),
|
89
|
+
[credentialsKey]: credentialsValue,
|
90
|
+
};
|
91
|
+
if (!datas.tmp_session && privateKey) {
|
92
|
+
payload.sign = crypto_1.default.sign(payload.data_enc, privateKey);
|
93
|
+
}
|
94
|
+
return network.request(network.apiUrl, payload);
|
95
|
+
}
|
@@ -0,0 +1,3 @@
|
|
1
|
+
import Network from '.';
|
2
|
+
export declare function uploadFile(network: Network, filePath: string, chunkSize?: number): Promise<any>;
|
3
|
+
export declare function download(network: Network, dc_id: number, file_id: number, access_hash: string, size: number, chunk?: number): Promise<Buffer>;
|
@@ -0,0 +1,117 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.uploadFile = uploadFile;
|
7
|
+
exports.download = download;
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
9
|
+
const path_1 = __importDefault(require("path"));
|
10
|
+
const undici_1 = require("undici");
|
11
|
+
async function uploadFile(network, filePath, chunkSize = 1048576) {
|
12
|
+
if (!fs_1.default.existsSync(filePath))
|
13
|
+
throw new Error('File not found in the given path');
|
14
|
+
const stat = await fs_1.default.promises.stat(filePath);
|
15
|
+
const fileSize = stat.size;
|
16
|
+
const fileName = path_1.default.basename(filePath);
|
17
|
+
const mime = filePath.split('.').pop();
|
18
|
+
let result = await network.client.requestSendFile(fileName, fileSize, mime);
|
19
|
+
let id = result.id;
|
20
|
+
let dc_id = result.dc_id;
|
21
|
+
let upload_url = result.upload_url;
|
22
|
+
let access_hash_send = result.access_hash_send;
|
23
|
+
let totalParts = Math.ceil(fileSize / chunkSize);
|
24
|
+
const stream = fs_1.default.createReadStream(filePath, { highWaterMark: chunkSize });
|
25
|
+
let index = 0;
|
26
|
+
for await (const chunk of stream) {
|
27
|
+
try {
|
28
|
+
const res = await (0, undici_1.request)(upload_url, {
|
29
|
+
method: 'POST',
|
30
|
+
headers: {
|
31
|
+
auth: network.client.auth,
|
32
|
+
'file-id': id,
|
33
|
+
'total-part': totalParts.toString(),
|
34
|
+
'part-number': (index + 1).toString(),
|
35
|
+
'chunk-size': chunk.length.toString(),
|
36
|
+
'access-hash-send': access_hash_send,
|
37
|
+
},
|
38
|
+
body: chunk,
|
39
|
+
dispatcher: network.agent,
|
40
|
+
});
|
41
|
+
const response = await res.body.json();
|
42
|
+
if (response.status === 'ERROR_TRY_AGAIN') {
|
43
|
+
console.log('Retrying upload...');
|
44
|
+
stream.close();
|
45
|
+
result = await network.client.requestSendFile(fileName, fileSize, mime);
|
46
|
+
id = result.id;
|
47
|
+
dc_id = result.dc_id;
|
48
|
+
upload_url = result.upload_url;
|
49
|
+
access_hash_send = result.access_hash_send;
|
50
|
+
index = 0;
|
51
|
+
return uploadFile(network, filePath, chunkSize);
|
52
|
+
}
|
53
|
+
index++;
|
54
|
+
if (response.status === 'OK' &&
|
55
|
+
response.status_det === 'OK' &&
|
56
|
+
response.data?.access_hash_rec) {
|
57
|
+
return {
|
58
|
+
mime,
|
59
|
+
size: fileSize,
|
60
|
+
dc_id,
|
61
|
+
file_id: id,
|
62
|
+
file_name: fileName,
|
63
|
+
access_hash_rec: response.data.access_hash_rec,
|
64
|
+
};
|
65
|
+
}
|
66
|
+
}
|
67
|
+
catch (error) {
|
68
|
+
console.error('Upload error:', error);
|
69
|
+
await new Promise((resolve) => setTimeout(resolve, 5000));
|
70
|
+
}
|
71
|
+
}
|
72
|
+
throw new Error('Upload failed completely.');
|
73
|
+
}
|
74
|
+
async function download(network, dc_id, file_id, access_hash, size, chunk = 131072) {
|
75
|
+
const headersBase = {
|
76
|
+
auth: network.client.auth,
|
77
|
+
'access-hash-rec': access_hash,
|
78
|
+
'file-id': String(file_id),
|
79
|
+
'user-agent': network.userAgent,
|
80
|
+
};
|
81
|
+
const base_url = `https://messenger${dc_id}.iranlms.ir`;
|
82
|
+
const fetchChunk = async (start_index, last_index) => {
|
83
|
+
const headers = {
|
84
|
+
...headersBase,
|
85
|
+
'start-index': String(start_index),
|
86
|
+
'last-index': String(last_index),
|
87
|
+
};
|
88
|
+
try {
|
89
|
+
const { body, statusCode } = await (0, undici_1.request)(`${base_url}/GetFile.ashx`, {
|
90
|
+
method: 'POST',
|
91
|
+
headers,
|
92
|
+
});
|
93
|
+
if (statusCode !== 200 || !body)
|
94
|
+
return Buffer.alloc(0);
|
95
|
+
const chunks = [];
|
96
|
+
for await (const chunk of body) {
|
97
|
+
chunks.push(typeof chunk === 'string' ? Buffer.from(chunk) : chunk);
|
98
|
+
}
|
99
|
+
return Buffer.concat(chunks);
|
100
|
+
}
|
101
|
+
catch (err) {
|
102
|
+
console.error(`[fetchChunk] Failed at ${start_index}-${last_index}`, err);
|
103
|
+
return Buffer.alloc(0);
|
104
|
+
}
|
105
|
+
};
|
106
|
+
let result = Buffer.alloc(0);
|
107
|
+
let start_index = 0;
|
108
|
+
while (start_index < size) {
|
109
|
+
const last_index = Math.min(start_index + chunk, size) - 1;
|
110
|
+
const chunkData = await fetchChunk(start_index, last_index);
|
111
|
+
if (chunkData.length === 0)
|
112
|
+
break;
|
113
|
+
result = Buffer.concat([result, chunkData]);
|
114
|
+
start_index = last_index + 1;
|
115
|
+
}
|
116
|
+
return result;
|
117
|
+
}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import Client from '../client';
|
2
|
+
import { Agent, WebSocket as UndiciWebSocket } from 'undici';
|
3
|
+
import { delay } from './utils';
|
4
|
+
import { NetworkTypes } from '../../types/index.type';
|
5
|
+
export default class Network {
|
6
|
+
client: Client;
|
7
|
+
headers: Record<string, string>;
|
8
|
+
defaultPlatform: NetworkTypes.Platform;
|
9
|
+
agent: Agent;
|
10
|
+
userAgent: string;
|
11
|
+
ws?: InstanceType<typeof UndiciWebSocket>;
|
12
|
+
apiUrl?: string;
|
13
|
+
wssUrl?: string;
|
14
|
+
heartbeatInterval?: NodeJS.Timeout;
|
15
|
+
inactivityTimeout?: NodeJS.Timeout;
|
16
|
+
reconnecting: boolean;
|
17
|
+
constructor(client: Client);
|
18
|
+
getDcs: () => Promise<boolean>;
|
19
|
+
request: (url: string, data: any) => Promise<unknown>;
|
20
|
+
send: (opts: any) => Promise<any>;
|
21
|
+
getUpdates: () => Promise<void>;
|
22
|
+
uploadFile: (filePath: string, chunkSize?: number) => Promise<any>;
|
23
|
+
download: (dc_id: number, file_id: number, access_hash: string, size: number, chunk?: number) => Promise<Buffer<ArrayBufferLike>>;
|
24
|
+
delay: typeof delay;
|
25
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
const undici_1 = require("undici");
|
7
|
+
const utils_1 = require("./utils");
|
8
|
+
const api_1 = require("./api");
|
9
|
+
const websocket_1 = require("./websocket");
|
10
|
+
const user_agents_1 = __importDefault(require("user-agents"));
|
11
|
+
const file_1 = require("./file");
|
12
|
+
class Network {
|
13
|
+
constructor(client) {
|
14
|
+
this.client = client;
|
15
|
+
this.userAgent = new user_agents_1.default().toString();
|
16
|
+
this.reconnecting = false;
|
17
|
+
this.getDcs = () => (0, api_1.getDcs)(this);
|
18
|
+
this.request = (url, data) => (0, api_1.sendRequest)(this, url, data);
|
19
|
+
this.send = (opts) => (0, api_1.sendPayload)(this, opts);
|
20
|
+
this.getUpdates = async () => (0, websocket_1.setupWebSocket)(this);
|
21
|
+
this.uploadFile = (filePath, chunkSize) => (0, file_1.uploadFile)(this, filePath, chunkSize);
|
22
|
+
this.download = (dc_id, file_id, access_hash, size, chunk = 131072) => (0, file_1.download)(this, dc_id, file_id, access_hash, size, chunk);
|
23
|
+
this.delay = utils_1.delay;
|
24
|
+
this.defaultPlatform = (0, utils_1.resolvePlatform)(client.platform);
|
25
|
+
this.headers = (0, utils_1.buildHeaders)(client.platform);
|
26
|
+
this.agent = new undici_1.Agent({
|
27
|
+
connect: { rejectUnauthorized: false },
|
28
|
+
});
|
29
|
+
}
|
30
|
+
}
|
31
|
+
exports.default = Network;
|
@@ -0,0 +1,9 @@
|
|
1
|
+
export declare function delay(ms: number): Promise<unknown>;
|
2
|
+
export declare function resolvePlatform(platform: string): {
|
3
|
+
app_name: string;
|
4
|
+
app_version: string;
|
5
|
+
platform: string;
|
6
|
+
package: string;
|
7
|
+
lang_code: string;
|
8
|
+
};
|
9
|
+
export declare function buildHeaders(platform: string): Record<string, string>;
|
@@ -0,0 +1,34 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.delay = delay;
|
7
|
+
exports.resolvePlatform = resolvePlatform;
|
8
|
+
exports.buildHeaders = buildHeaders;
|
9
|
+
const user_agents_1 = __importDefault(require("user-agents"));
|
10
|
+
function delay(ms) {
|
11
|
+
return new Promise((resolve) => setTimeout(resolve, ms));
|
12
|
+
}
|
13
|
+
function resolvePlatform(platform) {
|
14
|
+
const isAndroid = platform?.toLowerCase() === 'android';
|
15
|
+
return {
|
16
|
+
app_name: 'Main',
|
17
|
+
app_version: isAndroid ? '3.6.4' : '4.4.9',
|
18
|
+
platform: isAndroid ? 'Android' : 'Web',
|
19
|
+
package: isAndroid ? 'app.rbmain.a' : 'web.rubika.ir',
|
20
|
+
lang_code: 'fa',
|
21
|
+
};
|
22
|
+
}
|
23
|
+
function buildHeaders(platform) {
|
24
|
+
const headers = {
|
25
|
+
'content-type': 'application/json',
|
26
|
+
connection: 'keep-alive',
|
27
|
+
'user-agent': new user_agents_1.default().toString(),
|
28
|
+
};
|
29
|
+
if (platform.toLowerCase() !== 'android') {
|
30
|
+
headers.origin = 'https://web.rubika.ir';
|
31
|
+
headers.referer = 'https://web.rubika.ir/';
|
32
|
+
}
|
33
|
+
return headers;
|
34
|
+
}
|
@@ -0,0 +1,190 @@
|
|
1
|
+
"use strict";
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
4
|
+
};
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
6
|
+
exports.setupWebSocket = setupWebSocket;
|
7
|
+
exports.openSocket = openSocket;
|
8
|
+
const crypto_1 = __importDefault(require("../crypto"));
|
9
|
+
const undici_1 = require("undici");
|
10
|
+
const contextConstructors_1 = require("../context/contextConstructors");
|
11
|
+
const TYPES = {
|
12
|
+
chat: 'chat_updates',
|
13
|
+
message: 'message_updates',
|
14
|
+
activities: 'show_activities',
|
15
|
+
notifications: 'show_notifications',
|
16
|
+
};
|
17
|
+
async function setupWebSocket(network) {
|
18
|
+
while (!network.wssUrl) {
|
19
|
+
await network.delay(1000);
|
20
|
+
}
|
21
|
+
network.ws = new undici_1.WebSocket(network.wssUrl);
|
22
|
+
network.ws.addEventListener('open', async () => await openSocket(network));
|
23
|
+
network.ws.addEventListener('message', async (event) => await getMessage(event.data, network));
|
24
|
+
network.ws.addEventListener('error', async () => {
|
25
|
+
if (!network.reconnecting) {
|
26
|
+
console.error('WebSocket error, reconnecting...');
|
27
|
+
network.reconnecting = true;
|
28
|
+
await resetConnection(network);
|
29
|
+
}
|
30
|
+
});
|
31
|
+
network.ws.addEventListener('close', async () => {
|
32
|
+
if (!network.reconnecting) {
|
33
|
+
console.warn('WebSocket closed, reconnecting...');
|
34
|
+
network.reconnecting = true;
|
35
|
+
await resetConnection(network);
|
36
|
+
}
|
37
|
+
});
|
38
|
+
}
|
39
|
+
async function openSocket(network) {
|
40
|
+
try {
|
41
|
+
console.log('Starting bot...');
|
42
|
+
if (network.ws && network.ws.readyState === undici_1.WebSocket.OPEN) {
|
43
|
+
const payload = JSON.stringify({
|
44
|
+
api_version: '5',
|
45
|
+
auth: network.client.auth,
|
46
|
+
data: '',
|
47
|
+
method: 'handShake',
|
48
|
+
});
|
49
|
+
network.ws.send(payload);
|
50
|
+
if (network.heartbeatInterval)
|
51
|
+
clearInterval(network.heartbeatInterval);
|
52
|
+
network.heartbeatInterval = setInterval(() => {
|
53
|
+
try {
|
54
|
+
if (network.ws?.readyState === undici_1.WebSocket.OPEN) {
|
55
|
+
network.ws.send(JSON.stringify({}));
|
56
|
+
}
|
57
|
+
}
|
58
|
+
catch (err) {
|
59
|
+
console.error('Error sending heartbeat', err);
|
60
|
+
}
|
61
|
+
}, 30000);
|
62
|
+
}
|
63
|
+
else {
|
64
|
+
console.warn('WebSocket is not open; cannot send handshake');
|
65
|
+
}
|
66
|
+
}
|
67
|
+
catch (err) {
|
68
|
+
console.error('Error during openSocket execution', err);
|
69
|
+
}
|
70
|
+
}
|
71
|
+
async function resetConnection(network) {
|
72
|
+
network.ws?.close();
|
73
|
+
network.ws = undefined;
|
74
|
+
setTimeout(async () => {
|
75
|
+
try {
|
76
|
+
await network.getUpdates();
|
77
|
+
}
|
78
|
+
catch (e) {
|
79
|
+
console.error('Failed to reconnect:', e);
|
80
|
+
}
|
81
|
+
finally {
|
82
|
+
network.reconnecting = false;
|
83
|
+
}
|
84
|
+
}, 5000);
|
85
|
+
}
|
86
|
+
function resetInactivityTimer(network) {
|
87
|
+
if (network.inactivityTimeout)
|
88
|
+
clearTimeout(network.inactivityTimeout);
|
89
|
+
network.inactivityTimeout = setTimeout(() => {
|
90
|
+
console.warn('No updates received for 10 minutes. Reconnecting WebSocket...');
|
91
|
+
void resetConnection(network).catch((err) => {
|
92
|
+
console.error('Error during inactivity reset:', err);
|
93
|
+
});
|
94
|
+
}, 10 * 60 * 1000);
|
95
|
+
}
|
96
|
+
async function getMessage(message, network) {
|
97
|
+
try {
|
98
|
+
const { data_enc } = JSON.parse(message);
|
99
|
+
if (!data_enc || !network.client.key)
|
100
|
+
return;
|
101
|
+
resetInactivityTimer(network);
|
102
|
+
const update = JSON.parse(crypto_1.default.decrypt(data_enc, network.client.key));
|
103
|
+
const tasks = [];
|
104
|
+
for (const ctxKey of Object.keys(TYPES)) {
|
105
|
+
const updateKey = TYPES[ctxKey];
|
106
|
+
const author_title = getAuthorTitle(update);
|
107
|
+
const items = update[updateKey];
|
108
|
+
if (!Array.isArray(items) || items.length === 0)
|
109
|
+
continue;
|
110
|
+
const handlers = network.client.handlers[ctxKey];
|
111
|
+
if (!handlers || handlers.length === 0)
|
112
|
+
continue;
|
113
|
+
tasks.push(handleCategory(ctxKey, handlers, items, network, author_title));
|
114
|
+
}
|
115
|
+
if (tasks.length === 1) {
|
116
|
+
await tasks[0];
|
117
|
+
}
|
118
|
+
else if (tasks.length > 1) {
|
119
|
+
await Promise.all(tasks);
|
120
|
+
}
|
121
|
+
}
|
122
|
+
catch (err) {
|
123
|
+
console.error('[getMessage] Failed to decrypt or process message:', err);
|
124
|
+
}
|
125
|
+
}
|
126
|
+
async function handleCategory(type, handlers, updates, network, author_title) {
|
127
|
+
const CtxClass = contextConstructors_1.ContextConstructors[type];
|
128
|
+
if (!CtxClass) {
|
129
|
+
console.warn(`[handleCategory] No constructor found for type: ${type}`);
|
130
|
+
return;
|
131
|
+
}
|
132
|
+
for (let update of updates) {
|
133
|
+
if (!update.message)
|
134
|
+
update.message = {};
|
135
|
+
update.client_guid = network.client.userGuid;
|
136
|
+
update.message.author_title = author_title;
|
137
|
+
const ctx = new CtxClass(network.client, update);
|
138
|
+
for (const { filters, handler, prefix } of handlers) {
|
139
|
+
// Prefix logic
|
140
|
+
if (type === 'message' && prefix) {
|
141
|
+
const text = ctx.message.text;
|
142
|
+
if (!text)
|
143
|
+
continue;
|
144
|
+
if (typeof prefix === 'string' && text !== prefix)
|
145
|
+
continue;
|
146
|
+
if (prefix instanceof RegExp && !prefix.test(text))
|
147
|
+
continue;
|
148
|
+
}
|
149
|
+
// filters
|
150
|
+
const passed = await checkFilters(ctx, filters);
|
151
|
+
if (passed) {
|
152
|
+
await handler(ctx);
|
153
|
+
}
|
154
|
+
}
|
155
|
+
}
|
156
|
+
}
|
157
|
+
// utils
|
158
|
+
async function checkFilters(ctx, filters) {
|
159
|
+
for (const filter of filters) {
|
160
|
+
if (Array.isArray(filter)) {
|
161
|
+
// OR logic
|
162
|
+
const results = await Promise.all(filter.map((f) => Promise.resolve(f(ctx))));
|
163
|
+
if (!results.some(Boolean))
|
164
|
+
return false;
|
165
|
+
}
|
166
|
+
else {
|
167
|
+
// AND logic
|
168
|
+
const result = await Promise.resolve(filter(ctx));
|
169
|
+
if (!result)
|
170
|
+
return false;
|
171
|
+
}
|
172
|
+
}
|
173
|
+
return true;
|
174
|
+
}
|
175
|
+
const getAuthorTitle = (update) => {
|
176
|
+
const notification = update.show_notifications?.[0];
|
177
|
+
const chatUpdate = update.chat_updates?.[0];
|
178
|
+
if (notification) {
|
179
|
+
const objectGuid = notification?.message_data?.object_guid;
|
180
|
+
if (objectGuid?.startsWith('u0'))
|
181
|
+
return notification.title;
|
182
|
+
else if (objectGuid?.startsWith('g0'))
|
183
|
+
return notification.text?.split(':')[0];
|
184
|
+
}
|
185
|
+
else if (chatUpdate) {
|
186
|
+
return chatUpdate.chat?.last_message?.author_title || 'Unknown User';
|
187
|
+
}
|
188
|
+
else
|
189
|
+
return 'Unknown User';
|
190
|
+
};
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import { ClientTypes, SessionTypes } from '../types/index.type';
|
2
|
+
declare class SessionManager {
|
3
|
+
private readonly secretKey;
|
4
|
+
private readonly filename;
|
5
|
+
private sessionData?;
|
6
|
+
constructor(input: string | ClientTypes.SessionType, secret?: string);
|
7
|
+
private encrypt;
|
8
|
+
private decrypt;
|
9
|
+
saveSession(sessionData: SessionTypes.SessionData): void;
|
10
|
+
getSession(): SessionTypes.SessionData | null;
|
11
|
+
}
|
12
|
+
export default SessionManager;
|