/
NeoChapay
/
telegraf
Обзор
Документация
Войти
/
NeoChapay
/
telegraf
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
develop
src/tdlibreceiver.h
189 строк
12 KB
mbarashkov
Исправлены разные предупреждения
28 дек 2024, 18:43
28 дек 2024, 18:43
5fae12c
Код
Авторство
О чём код?
#ifndef TDLIBRECEIVER_H #define TDLIBRECEIVER_H #include <QHash> #include <QVariantMap> #include <QThread> #include <QJsonDocument> #include <QJsonObject> class TDLibReceiver : public QThread { Q_OBJECT void run() Q_DECL_OVERRIDE { receiverLoop(); } public: explicit TDLibReceiver(int tdLibClientId, QObject *parent = nullptr); void setActive(bool active); signals: void versionDetected(const QString &version); void authorizationStateChanged(const QString &authorizationState, const QVariantMap &authorizationStateData); void optionUpdated(const QString &optionName, const QVariant &optionValue); void connectionStateChanged(const QString &connectionState); void userUpdated(const QVariantMap &userInformation); void userStatusUpdated(const qlonglong userId, const QVariantMap &userStatusInformation); void fileUpdated(const QVariantMap &fileInformation); void newChatDiscovered(const QVariantMap &chatInformation); void updateChatFolders(const QVariantList &foldersInformation, qlonglong mainChatlistPosition); void updateChatInArchive(const qlonglong chatId); void gotChatFolder(const QVariantMap &chatFolderInformation); void unreadMessageCountUpdated(const QVariantMap &messageCountInformation); void unreadChatCountUpdated(const QVariantMap &chatCountInformation); void chatLastMessageUpdated(const QString &chatId, const QString &order, const QVariantMap &lastMessage); void chatOrderUpdated(const QString &chatId, const QString &order, const QString &chatListName); void chatPinnedUpdated(qlonglong chatId, bool isPinned, const QString &chatListName); void chatReadInboxUpdated(const QString &chatId, const QString &lastReadInboxMessageId, int unreadCount); void chatReadOutboxUpdated(const QString &chatId, const QString &lastReadOutboxMessageId); void chatAvailableReactionsUpdated(const qlonglong &chatId, const QVariantMap &availableReactions); void basicGroupUpdated(qlonglong groupId, const QVariantMap &groupInformation); void superGroupUpdated(qlonglong groupId, const QVariantMap &groupInformation); void chatOnlineMemberCountUpdated(const QString &chatId, int onlineMemberCount); void messagesReceived(const QVariantList &messages, int totalCount); void messageLinkInfoReceived(const QString &url, const QVariantMap &messageLinkInfo, const QString &extra); void sponsoredMessageReceived(qlonglong chatId, const QVariantMap &message); void newMessageReceived(qlonglong chatId, const QVariantMap &message); void messageInformation(qlonglong chatId, qlonglong messageId, const QVariantMap &message); void messageSendSucceeded(qlonglong messageId, qlonglong oldMessageId, const QVariantMap &message); void activeNotificationsUpdated(const QVariantList notificationGroups); void notificationGroupUpdated(const QVariantMap notificationGroupUpdate); void notificationUpdated(const QVariantMap updatedNotification); void chatNotificationSettingsUpdated(const QString &chatId, const QVariantMap updatedChatNotificationSettings); void messageContentUpdated(qlonglong chatId, qlonglong messageId, const QVariantMap &newContent); void messageEditedUpdated(qlonglong chatId, qlonglong messageId, const QVariantMap &replyMarkup); void messagesDeleted(qlonglong chatId, const QList<qlonglong> &messageIds); void chats(const QVariantMap &chats); void chat(const QVariantMap &chats); void recentStickersUpdated(const QVariantList &stickerIds); void stickers(const QVariantList &stickers); void installedStickerSetsUpdated(const QVariantList &stickerSetIds); void stickerSets(const QVariantList &stickerSets); void stickerSet(const QVariantMap &stickerSet); void chatMembers(const QString &extra, const QVariantList &members, int totalMembers); void userFullInfo(const QVariantMap &userFullInfo); void userFullInfoUpdated(const QString &userId, const QVariantMap &userFullInfo); void basicGroupFullInfo(const QString &groupId, const QVariantMap &groupFullInfo); void basicGroupFullInfoUpdated(const QString &groupId, const QVariantMap &groupFullInfo); void supergroupFullInfo(const QString &groupId, const QVariantMap &groupFullInfo); void supergroupFullInfoUpdated(const QString &groupId, const QVariantMap &groupFullInfo); void userProfilePhotos(const QString &extra, const QVariantList &photos, int totalPhotos); void chatPermissionsUpdated(const QString &chatId, const QVariantMap &chatPermissions); void chatPhotoUpdated(qlonglong chatId, const QVariantMap &photo); void chatTitleUpdated(const QString &chatId, const QString &title); void chatPinnedMessageUpdated(qlonglong chatId, qlonglong pinnedMessageId); void messageIsPinnedUpdated(qlonglong chatId, qlonglong messageId, bool isPinned); void usersReceived(const QString &extra, const QVariantList &senders, int totalUsers); void messageSendersReceived(const QString &extra, const QVariantList &userIds, int totalUsers); void errorReceived(const int code, const QString &message, const QString &extra); void secretChat(qlonglong secretChatId, const QVariantMap &secretChat); void secretChatUpdated(qlonglong secretChatId, const QVariantMap &secretChat); void contactsImported(const QVariantList &importerCount, const QVariantList &userIds); void chatIsMarkedAsUnreadUpdated(qlonglong chatId, bool chatIsMarkedAsUnread); void chatDraftMessageUpdated(qlonglong chatId, const QVariantMap &draftMessage, const QString &order); void inlineQueryResults(const QString &inlineQueryId, const QString &nextOffset, const QVariantList &results, const QString &switchPmText, const QString &switchPmParameter, const QString &extra); void callbackQueryAnswer(const QString &text, bool alert, const QString &url); void userPrivacySettingRules(const QVariantMap &rules); void userPrivacySettingRulesUpdated(const QVariantMap &updatedRules); void messageInteractionInfoUpdated(qlonglong chatId, qlonglong messageId, const QVariantMap &updatedInfo); void okReceived(const QString &request); void sessionsReceived(int inactive_session_ttl_days, const QVariantList &sessions); void availableReactionsReceived(qlonglong messageId, const QStringList &reactions); void chatUnreadMentionCountUpdated(qlonglong chatId, int unreadMentionCount); void chatUnreadReactionCountUpdated(qlonglong chatId, int unreadReactionCount); void activeEmojiReactionsUpdated(const QStringList &emojis); private: typedef void (TDLibReceiver::*Handler)(const QJsonObject &); QHash<QString, Handler> _handlers; int _tdLibClientId; bool _active; // bool _powerSavingMode; private: static const QJsonArray cleanupList(const QJsonArray &list, bool *updated = Q_NULLPTR); static const QJsonObject cleanupMap(const QJsonObject &data, bool *updated = Q_NULLPTR); void receiverLoop(); void ok(const QJsonObject &receivedInformation); // TDLib data update handlers void processUpdateOption(const QJsonObject &receivedInformation); void processUpdateAuthorizationState(const QJsonObject &receivedInformation); void processUpdateConnectionState(const QJsonObject &receivedInformation); void processUpdateUser(const QJsonObject &receivedInformation); void processUpdateUserStatus(const QJsonObject &receivedInformation); void processUpdateFile(const QJsonObject &receivedInformation); void processFile(const QJsonObject &receivedInformation); void processUpdateNewChat(const QJsonObject &receivedInformation); void processUpdateUnreadMessageCount(const QJsonObject &receivedInformation); void processUpdateUnreadChatCount(const QJsonObject &receivedInformation); void processUpdateChatFolders(const QJsonObject &receivedInformation); void processUpdateChatAddedToList(const QJsonObject &receivedInformation); void processChatFolder(const QJsonObject &chatFolderInformation); void processUpdateChatLastMessage(const QJsonObject &receivedInformation); void processUpdateChatOrder(const QJsonObject &receivedInformation); void processUpdateChatPosition(const QJsonObject &receivedInformation); void processUpdateChatReadInbox(const QJsonObject &receivedInformation); void processUpdateChatReadOutbox(const QJsonObject &receivedInformation); void processUpdateChatAvailableReactions(const QJsonObject &receivedInformation); void processUpdateBasicGroup(const QJsonObject &receivedInformation); void processUpdateSuperGroup(const QJsonObject &receivedInformation); void processChatOnlineMemberCountUpdated(const QJsonObject &receivedInformation); void processMessages(const QJsonObject &receivedInformation); void processFoundChatMessages(const QJsonObject &receivedInformation); void processSponsoredMessage(const QJsonObject &receivedInformation); void processSponsoredMessages(const QJsonObject &receivedInformation); void processUpdateNewMessage(const QJsonObject &receivedInformation); void processMessage(const QJsonObject &receivedInformation); void processMessageLinkInfo(const QJsonObject &receivedInformation); void processMessageSendSucceeded(const QJsonObject &receivedInformation); void processUpdateActiveNotifications(const QJsonObject &receivedInformation); void processUpdateNotificationGroup(const QJsonObject &receivedInformation); void processUpdateNotification(const QJsonObject &receivedInformation); void processUpdateChatNotificationSettings(const QJsonObject &receivedInformation); void processUpdateMessageContent(const QJsonObject &receivedInformation); void processUpdateDeleteMessages(const QJsonObject &receivedInformation); void processChats(const QJsonObject &receivedInformation); void processChat(const QJsonObject &receivedInformation); void processUpdateRecentStickers(const QJsonObject &receivedInformation); void processStickers(const QJsonObject &receivedInformation); void processUpdateInstalledStickerSets(const QJsonObject &receivedInformation); void processStickerSets(const QJsonObject &receivedInformation); void processStickerSet(const QJsonObject &receivedInformation); void processChatMembers(const QJsonObject &receivedInformation); void processUserFullInfo(const QJsonObject &receivedInformation); void processUpdateUserFullInfo(const QJsonObject &receivedInformation); void processBasicGroupFullInfo(const QJsonObject &receivedInformation); void processUpdateBasicGroupFullInfo(const QJsonObject &receivedInformation); void processSupergroupFullInfo(const QJsonObject &receivedInformation); void processUpdateSupergroupFullInfo(const QJsonObject &receivedInformation); void processUserProfilePhotos(const QJsonObject &receivedInformation); void processUpdateChatPermissions(const QJsonObject &receivedInformation); void processUpdateChatPhoto(const QJsonObject &receivedInformation); void processUpdateChatTitle(const QJsonObject &receivedInformation); void processUpdateChatPinnedMessage(const QJsonObject &receivedInformation); void processUpdateMessageIsPinned(const QJsonObject &receivedInformation); void processUsers(const QJsonObject &receivedInformation); void processMessageSenders(const QJsonObject &receivedInformation); void processError(const QJsonObject &receivedInformation); void processSecretChat(const QJsonObject &receivedInformation); void processUpdateSecretChat(const QJsonObject &receivedInformation); void processUpdateMessageEdited(const QJsonObject &receivedInformation); void processImportedContacts(const QJsonObject &receivedInformation); void processUpdateChatIsMarkedAsUnread(const QJsonObject &receivedInformation); void processUpdateChatDraftMessage(const QJsonObject &receivedInformation); void processInlineQueryResults(const QJsonObject &receivedInformation); void processCallbackQueryAnswer(const QJsonObject &receivedInformation); void processUserPrivacySettingRules(const QJsonObject &receivedInformation); void processUpdateUserPrivacySettingRules(const QJsonObject &receivedInformation); void processUpdateMessageInteractionInfo(const QJsonObject &receivedInformation); void processSessions(const QJsonObject &receivedInformation); void processAvailableReactions(const QJsonObject &receivedInformation); void processUpdateChatUnreadMentionCount(const QJsonObject &receivedInformation); void processUpdateChatUnreadReactionCount(const QJsonObject &receivedInformation); void processUpdateActiveEmojiReactions(const QJsonObject &receivedInformation); }; #endif // TDLIBRECEIVER_H