Commit Graph

963 Commits

Author SHA1 Message Date
levlam
713debab58 Update participant cache after changing their rights. 2022-04-04 17:16:31 +03:00
levlam
7d3f0cb37f Use get_channel_participant in set_channel_participant_status to honor chat member cache. 2022-04-04 16:44:48 +03:00
levlam
e2f9cc399f Pass correct ChannelType to DialogParticipant constructor. 2022-04-04 16:29:46 +03:00
levlam
c3996b4726 Always adjust administrator rights for supergroups and channels. 2022-04-04 16:19:41 +03:00
levlam
1d6488ab09 Add ContactsManager::is_broadcast_channel/is_megagroup_channel helpers. 2022-04-04 15:48:33 +03:00
levlam
a8a343704a Add ChannelType.h. 2022-04-04 15:35:09 +03:00
levlam
7f587c24d9 Replace get_restricted_rights with RestrictedRights constructors. 2022-04-04 14:13:51 +03:00
levlam
4a50db52d8 Replace get_administrator_rights with AdministratorRights constructor. 2022-04-04 13:58:14 +03:00
levlam
8d35ac0b72 Avoid duplicate source in on_get_users/chats. 2022-03-29 15:54:36 +03:00
levlam
2ff0b74af6 Add td_api::getAttachMenuBot. 2022-03-29 15:00:00 +03:00
levlam
759d02770d Allow to use deleteChatHistory to revoke messages for all members in some channels. 2022-03-29 12:14:21 +03:00
levlam
977ebca580 Allow owner to clear basic group history for everyone. 2022-03-28 21:23:12 +03:00
levlam
0375704460 Use get_input_user instead of have_input_user. 2022-03-28 20:26:28 +03:00
levlam
234c7423bf Add userTypeBot.can_be_added_to_attach_menu flag. 2022-03-25 13:02:01 +03:00
levlam
afa00d8b00 Add default administrator rights to botInfo. 2022-03-22 14:52:27 +03:00
levlam
fa4e17fe95 Move bot-only fields in userFullInfo to class botInfo. 2022-03-18 15:04:47 +03:00
levlam
479667dd1a Update layer to 140. 2022-03-18 14:46:01 +03:00
levlam
cb063ac210 Remove wrong CHECK. Fixes #1892. 2022-03-19 21:58:10 +03:00
levlam
4d13e1354e Move ChannelParticipantFilter to separate header. 2022-03-19 21:53:33 +03:00
levlam
26c18680f2 Move DialogParticipantFilter to separate header. 2022-03-19 21:37:46 +03:00
levlam
5d71289b72 Move get_dialog_participant_status to DialogParticipantStatus constructor. 2022-03-18 19:13:22 +03:00
levlam
1f38124861 Use FlatHashSet. 2022-03-11 21:38:48 +03:00
levlam
8b16cf7271 Make all fields in Dependencies class private. 2022-03-11 15:31:28 +03:00
levlam
a136a9d22b Move methods inside Dependencies class. 2022-03-11 15:10:24 +03:00
levlam
ff9f5b88d9 Ignore invite links to deactivated basic groups. 2022-03-11 13:00:25 +03:00
levlam
11d21d7af4 Improve phone number cache. 2022-02-28 22:43:17 +03:00
levlam
a92d1b2ae4 Add td_api::searchUserByPhoneNumber. 2022-02-18 18:13:10 +03:00
levlam
254d74c4a6 Add cache for resolved phone numbers. 2022-02-18 17:22:27 +03:00
levlam
408aa95f76 Remove preloading of users from database before adding them from binlog. It makes no sense, because users will be rewritten by binlog data anyway. 2022-02-22 23:06:37 +03:00
levlam
38fe0cc6fc Preload users from database before adding them from binlog. 2022-02-17 16:09:17 +03:00
levlam
e6aed3b99e Preload contact user to avoid loading all contacts. 2022-02-17 15:14:15 +03:00
levlam
9c62385b02 Don't load contacts after receiving a non-contact. It will be saved to database anyway and deleted from the saved list of contacts after it is loaded if appropriate. 2022-02-16 21:58:57 +03:00
levlam
0d79671f15 Add MessagesManager::update_message_reactions. 2022-02-12 14:15:14 +03:00
levlam
d5d4f4acf7 Fix remaining FlatHashMap usages. 2022-02-10 18:03:03 +03:00
levlam
f5d8e4de83 Use table_remove_if. 2022-02-10 12:23:52 +03:00
levlam
9e6d106585 Minor improvements. 2022-02-10 11:55:32 +03:00
levlam
2b1314295d Check and fix half of FlatHashMap usages. 2022-02-10 00:59:52 +03:00
levlam
b4fda2d45a Use FlatHashMap in mtproto and td_json_client. 2022-02-09 16:05:53 +03:00
levlam
b62ced6d95 Minor improvements. 2022-02-08 00:42:53 +03:00
Arseny Smirnov
86bceb2972 td: replace most of std::unordered_map usages to td::FlatHashMap 2022-02-07 21:21:31 +01:00
levlam
8b92e8f978 Optimize checked insert to std::map. 2022-02-03 16:24:09 +03:00
Arseny Smirnov
ad38f712e8 SequenceDispatcher: hide usage into NetQueryDispatcher 2022-02-01 18:51:36 +03:00
levlam
739d2b292d Add MessageReactions. 2022-01-20 22:54:34 +03:00
levlam
305f2e87e1 Improve logging. 2022-01-19 15:00:11 +03:00
levlam
3becacf304 Add chat.available_reactions and updateChatAvailableReactions. 2022-01-04 16:33:57 +03:00
levlam
14637caa64 Improve condition in get_user. 2022-01-01 12:21:13 +03:00
levlam
8085779cdc Update copyright year. 2022-01-01 03:35:39 +03:00
levlam
62d4e339de Fix ContactsManager::get_user with min-user for bots. 2021-12-31 16:33:46 +03:00
levlam
d3e1385b8b Add some debug logging. 2021-12-31 16:21:03 +03:00
levlam
feffe4153d Fix ContactsManager::get_user. 2021-12-30 17:39:42 +03:00
levlam
2027819297 Fix ContactsManager::get_input_user. 2021-12-30 15:28:10 +03:00
levlam
ff6615e734 Fix some misprints. 2021-12-23 14:18:32 +03:00
levlam
160ab905f1 Fix handling of min-channels in recent repliers. 2021-12-22 20:15:18 +03:00
levlam
1fd2e3b629 Return information about min-channels. 2021-12-22 16:48:23 +03:00
levlam
758a391e55 Store title and photo of min-channels. 2021-12-22 16:09:34 +03:00
levlam
4e29d0e232 Rename message_ttl_setting to message_ttl. 2021-12-21 14:06:15 +03:00
levlam
3ff9723722 Reload channel full without delay after membership change. 2021-12-21 13:25:11 +03:00
levlam
29bdedb1d0 Reload ChannelFull on join/leave as creator. 2021-12-21 12:58:22 +03:00
levlam
ab89543894 Don't reload ChannelFull in get_channel_participants. 2021-12-20 20:45:35 +03:00
levlam
93464ccd27 Use request promise in getChatAdministrators. 2021-12-18 22:44:25 +03:00
levlam
b060536ae3 Return Result<...> from get_input_user. 2021-12-16 22:46:03 +03:00
levlam
c743f540c5 Log received userFull. 2021-12-16 19:30:38 +03:00
levlam
871f91b896 Add check for administrator rights in reportSupergroupSpam. 2021-12-15 21:45:30 +03:00
levlam
86c4bac69d Allow to simultaneously report supergroup messages from different senders. 2021-12-15 21:39:48 +03:00
levlam
fe6c61f2ea Workaround bogus C4753 MSVC warning. 2021-12-15 20:36:23 +03:00
levlam
9d968d835d Ignore sign_messages flag from min-channels. 2021-12-13 16:10:58 +03:00
levlam
0a01b97921 Improve conditions for calls to on_get_channel_error. 2021-12-10 16:25:14 +03:00
levlam
5a76413990 Minor improvements. 2021-12-10 00:07:59 +03:00
levlam
68212198a0 Improve error message. 2021-12-09 17:49:19 +03:00
levlam
129601b6c1 Add "channel_bot_user_id" option. 2021-12-09 16:36:27 +03:00
levlam
831ca4b975 Rename allow_saving_content to has_private_content. 2021-12-06 21:43:55 +03:00
levlam
ecc8889cac Reload created public dialogs after local list changes. 2021-12-03 20:22:49 +03:00
levlam
fb9bb3cd69 Save and load lists of created public channels. 2021-12-03 20:10:30 +03:00
levlam
a33027a9c1 Preload createdPublicChannels after getDifference. 2021-12-03 16:36:27 +03:00
levlam
03baffcd1f Combine GetCreatedPublicChannels queries. 2021-12-03 15:40:39 +03:00
levlam
93af4377b7 Store created public broadcasts in MessagesManager. 2021-12-03 12:28:33 +03:00
levlam
cffe34e5b2 Update created public channels instead of dropping them when ownership is changed. 2021-12-02 18:10:14 +03:00
levlam
b3bc208d63 Update created public channels after has_location is changed. 2021-12-02 17:12:33 +03:00
levlam
5512700b77 Immediately reload *Full after invalidation in opened chats. 2021-12-01 23:31:10 +03:00
levlam
b8d20ca6bb Improve banning of channels. 2021-11-29 21:59:16 +03:00
levlam
10159fbdf1 Add toggleChatAllowSavingContent. 2021-11-25 11:44:51 +03:00
levlam
d381323f56 Add chat.allow_saving_content flag. 2021-11-24 20:03:38 +03:00
levlam
f1f54a08ab Allow to restrict unaccessible channels in chats. 2021-11-24 15:18:39 +03:00
levlam
0b2207f180 Add td_api::processChatJoinRequests. 2021-11-24 12:02:23 +03:00
levlam
f644dedcfa Replace private forward name before forwarding. 2021-11-22 11:17:28 +03:00
levlam
8f2a09f2cb Add userFullInfo.has_private_forwards. 2021-11-20 22:48:44 +03:00
levlam
993a9e24c4 Remove user_id from reportSupergroupSpam. 2021-11-19 17:12:38 +03:00
levlam
fe8e521a41 Add chat.default_sender_id. 2021-11-12 16:15:19 +03:00
levlam
6ace4fdf36 Update layer to 135. 2021-11-09 19:07:55 +03:00
levlam
3070415ccd Use common QueryCombiner for get chat/channel full requests. 2021-12-06 21:22:56 +03:00
levlam
5dc5b473ea Fix cache update in GetChatInviteImportersQuery. 2021-11-29 15:09:13 +03:00
levlam
25baedaa34 Move dismiss_suggested_action to SuggestedAction.cpp. 2021-11-26 14:48:43 +03:00
levlam
c49c5954ed Immediately drop User.is_changed flags after usage. 2021-11-25 14:18:06 +03:00
levlam
36d4de747f Move website authorization functions to Account.cpp. 2021-11-16 13:13:06 +03:00
levlam
c64cc8ad26 Move account-related methods to Account.cpp. 2021-11-16 13:02:07 +03:00
levlam
922fd9b17b Pass chat member status as DialogParticipantStatus. 2021-11-15 17:57:00 +03:00
levlam
5987ca69ff Move get_message_sender_dialog_id to MessageSender.cpp. 2021-11-15 12:07:52 +03:00
levlam
a56c34c4dd Move get_message_sender_object to MessageSender.cpp. 2021-11-15 01:18:47 +03:00
levlam
c29b096e79 Move logic out of ImportContactsQuery. 2021-11-12 07:37:53 +03:00
levlam
8db8f170f1 Add do_import_contacts. 2021-11-11 21:57:09 +03:00
levlam
9f5a1567f0 Ignore CHANNEL_PRIVATE errors for GetChannelDifferenceQuery after restart. 2021-11-08 17:24:27 +03:00
levlam
b0eca77c9a Improve logging. 2021-11-08 17:11:35 +03:00
levlam
6de2763fac Remove duplicate logging before net queries. 2021-11-08 16:41:16 +03:00
levlam
616b0e6d6f Improve ResultHandler/NetActor td_ private field name. 2021-11-08 15:20:38 +03:00
levlam
5578ecc6b8 Remove NetQuery id from ResultHandler and NetActor. 2021-11-08 14:19:57 +03:00
levlam
1bd9e0f622 Fix editChatInviteLink. 2021-11-07 04:18:41 +03:00
levlam
8bc413742d Simplify field name. 2021-11-04 13:13:52 +03:00
levlam
47f3363ca8 Improve field names. 2021-11-04 09:52:27 +03:00
levlam
d732789cac Disallow member_limit for links requiring administrator approval. 2021-11-02 17:21:36 +03:00
levlam
5a596fcc48 Reuse chatJoinRequest class. 2021-11-02 17:09:54 +03:00
levlam
6ab91f2712 Update chat join request after GetChatJoinRequestsQuery. 2021-11-01 23:03:41 +03:00
levlam
0c1e268706 Don't generate MASK for parsed True fields. 2021-11-01 21:53:23 +03:00
levlam
4533f79338 Don't generate MASK for parsed object/vector fields. 2021-11-01 20:48:06 +03:00
levlam
39b5db357e Add updateNewChatJoinRequest. 2021-10-28 22:49:56 +03:00
levlam
97243b53e4 Allow to create and edit chat invite links with title. 2021-10-27 13:04:34 +03:00
levlam
8d458f3038 Add chatJoinRequestsInfo with user identifiers. 2021-10-26 20:51:06 +03:00
levlam
34d77c7feb Fix drop of pending_join_request_count. 2021-10-14 00:34:28 +03:00
levlam
0a9f6b1c91 Add approve/declineCjatJoinRequest. 2021-10-13 23:10:47 +03:00
levlam
1a7f4b4d3e Add td_api::getChatJoinRequests. 2021-10-13 22:33:31 +03:00
levlam
d6502458f5 Allow to get option "is_location_visible". 2021-10-12 22:05:14 +03:00
levlam
250e593e3e Add comment. 2021-10-12 20:05:36 +03:00
levlam
0f6247f856 Nullify pending_join_request_count if have no enough rights. 2021-10-12 19:39:03 +03:00
levlam
e49ae700b6 Add chat.pending_join_request_count. 2021-10-12 18:11:17 +03:00
levlam
a4aa509308 Add requested_ flag check. 2021-10-09 16:53:29 +03:00
levlam
64d572bcbe Allow creation and edit of invite links, requiring approval. 2021-10-09 14:20:48 +03:00
levlam
5d9a224386 Add chatInviteLinkMember.approver_user_id. 2021-10-09 13:51:37 +03:00
levlam
63d86176f2 Add chatInviteLinkInfo.description/requires_approval. 2021-10-09 13:19:38 +03:00
levlam
23775700ac Update layer to 134. 2021-10-08 13:45:10 +03:00
levlam
05b59cc63b Improve DialogParticipant field names. 2021-10-29 14:39:07 +03:00
levlam
393598314a Simplify search_private_chat_participants. 2021-10-23 23:37:23 +03:00
levlam
ed45735de4 Add DialogParticipant::private_member. 2021-10-23 23:22:54 +03:00
levlam
7d4442347d Add DialogParticipantsFilter::is_dialog_participant_suitable. 2021-10-23 22:32:11 +03:00
levlam
1c59f37ca9 Move some methods inside DialogParticipantsFilter class. 2021-10-23 22:23:59 +03:00
levlam
47d4c08de2 Improve field names style. 2021-10-23 21:56:37 +03:00
levlam
c24501f2d9 Reduce "this" usages. 2021-10-23 21:17:00 +03:00
levlam
db7aa28bdf A lot more minor improvements. 2021-10-19 18:11:16 +03:00
levlam
f35afe23c8 Minor warning fixes. 2021-10-18 12:57:13 +03:00
levlam
3abac23287 Fix file_reference repair for ChatFull/ChannelFull photos. 2021-10-16 23:37:02 +03:00
levlam
0fa991599e Add filter name to log. 2021-10-16 22:14:48 +03:00
levlam
7832b354a8 Imptove logging. 2021-10-12 11:30:41 +03:00
levlam
d0ac845c72 Fix misprint. 2021-10-08 14:12:37 +03:00
levlam
328c5b57d2 Add Global::request_aborted_error. 2021-10-07 16:36:21 +03:00
levlam
3b794126d8 Avoid G usage in lambda promises. 2021-10-07 15:28:52 +03:00
levlam
c85f993de8 Improve captured actor_id names. 2021-10-07 13:38:49 +03:00
levlam
4b41d620c5 Use send_closure instead of raw call. 2021-10-06 23:33:18 +03:00
levlam
9e1147bc89 Fix SleepActor usages. 2021-10-06 20:22:50 +03:00
levlam
88886f3676 Check close_flag just before accessing Td pointer. 2021-10-06 14:39:01 +03:00
levlam
13c48e590d Fix profile photo reuploading. 2021-10-01 19:19:14 +03:00
levlam
4f9b35ea72 Use get_contact in importContacts and changeImportedContacts. 2021-09-30 14:18:01 +03:00
levlam
44efa70789 Pass Contact to add_contact. 2021-09-30 13:53:16 +03:00
levlam
95d60959b1 Remove redundant checks for is_bot. 2021-09-24 11:07:12 +03:00
levlam
d6f3d9f08a Use error code 400 instead of small error codes. 2021-09-24 10:59:51 +03:00
levlam
2ec2e4d78f Use "set"/"toogle" instead of "change". 2021-09-24 10:42:39 +03:00
levlam
f2908bb7e5 Allow to add non-members as administrators in basic groups using setChatMemberStatus. 2021-09-24 10:20:50 +03:00
levlam
a3c8da47a0 Return void from load_*_full. 2021-09-23 18:52:39 +03:00
levlam
d032ca2ab2 Support adding basic group members through setChatMemberStatus. 2021-09-23 18:39:13 +03:00
levlam
db18baa503 Unify include order. 2021-09-19 00:47:05 +03:00
levlam
a3fefcd18b Add (disabled) logging on inconsistent update*Participant. 2021-09-15 18:36:45 +03:00
levlam
a4f66c69cb Add td_api::getMessageViewers. 2021-09-03 16:14:03 +03:00
levlam
41c391f140 Update layer to 133. 2021-09-03 12:27:59 +03:00
levlam
9bf5b5343b Prevent partial updateBasicGroupFullInfo. 2021-09-09 15:41:50 +03:00
levlam
8117853ea4 Add logging on partial update*FullInfo. 2021-09-07 18:20:34 +03:00
levlam
f59ba4b5e5 Avoid duplicate UserFull updates. 2021-09-07 18:02:03 +03:00
levlam
168399f21d Add source to update_*_full. 2021-09-07 17:41:56 +03:00
levlam
5cfabdd589 Add chat.theme_name. 2021-08-23 18:47:32 +03:00
levlam
8e7eba4f8c Reload ChannelFull in get_channel_statistics_dc_id. 2021-08-23 11:59:37 +03:00
levlam
828e1e22a0 Skip unneeded getFullChannel requests. 2021-08-23 11:10:46 +03:00
levlam
45790b144c Fix ChannelFull dependencies. 2021-08-11 16:52:34 +03:00
levlam
0dc42e4410 Add source to get_message_sender_object. 2021-08-03 01:58:02 +03:00
levlam
3b125ce511 Don't try to get full channel if it is inaccessible. 2021-08-02 06:20:59 +03:00
levlam
d1b985430c Add source to ContactsManager::load_user_full. 2021-08-02 06:14:59 +03:00
levlam
3156492c2f Add source to ContactsManager::load_channel_full. 2021-08-02 05:50:52 +03:00
levlam
a4e1839089 Generate only needed telegram_api full constructors. 2021-08-01 07:23:50 +03:00
levlam
4124f7e0f0 Fix ContactsManager::get_chat_participant. 2021-07-27 00:59:13 +03:00
levlam
2aa683bf4c Force binlog sync after logging in. 2021-07-26 21:07:23 +03:00
levlam
2b8c23fdac Call on_dialog_bots_updated after speculative changes. 2021-07-22 04:19:56 +03:00
levlam
58c99ed63a Don't ignore forcely loaded after close users and chats. 2021-07-19 04:27:44 +03:00
levlam
13fcffd711 Replace GetChatMemberRequest with REQUEST_PROMISE. 2021-07-19 04:17:29 +03:00
levlam
e649098194 Improve error messages for invalid member_id parameters. 2021-07-16 04:23:05 +03:00
levlam
1d3e72aa9d Improve constant names. 2021-07-05 19:17:26 +03:00
levlam
4b0bda767c Add SecretChatLayer.h. 2021-07-05 05:42:37 +03:00
levlam
40c5d47717 Make inherited classes final if possible. 2021-07-04 05:58:54 +03:00
levlam
edfa5d1d98 Use final instead of override. 2021-07-03 23:51:36 +03:00
levlam
8b5a55c798 Update member restrictions before returning it in getChatMember. 2021-07-02 21:30:27 +03:00
levlam
f210906dca Support updateBotCommands. 2021-06-28 18:32:29 +03:00
levlam
eb134b02f2 Improve error messages. 2021-06-25 21:21:17 +03:00
levlam
f8f03db0ce Improve error message. 2021-06-24 23:11:23 +03:00
levlam
7bf14a2405 Ban only for 60 seconds if unbanning is planned. 2021-06-23 15:40:24 +03:00
levlam
9628668def Minor improvements. 2021-06-23 03:22:23 +03:00
levlam
9b85516cfd Move bot command handling functions to BotCommand.cpp. 2021-06-22 04:25:15 +03:00
levlam
e8b32d9b05 Add td_api::deleteCommands. 2021-06-22 04:17:44 +03:00
levlam
337dbc86d9 Remove class BotInfo. 2021-06-21 04:30:02 +03:00
levlam
9940dd74db Remove botInfo class from API. 2021-06-21 04:14:29 +03:00
levlam
1904aa77b1 Add bot_commands to *Full. 2021-06-21 04:01:13 +03:00
levlam
5f9fd502b7 Replace botInfo with commands in userFullInfo. 2021-06-21 02:36:04 +03:00
levlam
f165429143 Add classes BotCommand and BotCommands. 2021-06-21 02:08:11 +03:00
levlam
37d10c0be4 Add bot_user_id to botCommands. 2021-06-21 01:32:29 +03:00
levlam
d9dc6f875d Move bot description from BotInfo to UserFull. 2021-06-21 01:12:34 +03:00
levlam
1202d55e27 Add getCommands method. 2021-06-19 04:18:02 +03:00
levlam
62a543cb35 Add BotCommandScope to setCommands. 2021-06-19 04:00:23 +03:00