Commit Graph

9080 Commits

Author SHA1 Message Date
levlam
59044294a8 Make JsonObject class. 2023-07-31 13:31:48 +03:00
levlam
564cbc0345 Don't log updates with slightly old PTS short after updates with very old PTS. 2023-07-29 15:37:15 +03:00
levlam
5ba7e14be0 Improve logging for PTS gaps. 2023-07-28 18:10:24 +03:00
levlam
ff3a8e446e Add MessagesManager::load_last_dialog_message instead of get_history_from_the_end. 2023-07-28 14:33:54 +03:00
levlam
58a1ae8e8d Directly call get_history_impl if appropriate. 2023-07-28 14:19:43 +03:00
levlam
f5a066f7ed Support loading of history from the end in get_history_impl. 2023-07-28 14:12:22 +03:00
levlam
73d5b2dcbb Simplify calls to load_messages. 2023-07-28 13:50:02 +03:00
levlam
c071678be1 Add source to MessagesManager::get_history_impl. 2023-07-28 13:32:07 +03:00
levlam
2dba29669f Delete unused MessagesManager::get_history. 2023-07-28 13:22:52 +03:00
levlam
16183df0aa Adjust offset and limit in get_history_impl. 2023-07-28 13:22:07 +03:00
levlam
bd0ca2d6fc Combine all getChatHistory queries. 2023-07-28 03:36:21 +03:00
levlam
9618d58732 Combine get_history_from_the_end queries. 2023-07-27 20:40:56 +03:00
levlam
070399c89a Add combine_hashes function. 2023-07-27 19:05:15 +03:00
levlam
5c8b12b105 Simplify limit initialization in get_history_from_the_end_impl. 2023-07-27 18:19:10 +03:00
levlam
0a7c87eb8b Use FlatHashMap in SeqKeyValue. 2023-07-27 13:58:20 +03:00
levlam
1fbbecca9b Don't register message users/channels for bots. 2023-07-27 13:16:48 +03:00
levlam
be64ce7049 Don't generate unused define FAIL. 2023-07-27 13:02:49 +03:00
levlam
32043df840 Parse updates in another thread. 2023-07-27 12:52:29 +03:00
levlam
56adf14116 Improve PTS gap repair. 2023-07-26 22:04:57 +03:00
levlam
e6cd1989bf Fix Global initialization. 2023-07-26 21:37:54 +03:00
levlam
35df6e3dfd Optimize FileManager::get_file_object by moving implementation of getters to FileNode. 2023-07-26 18:07:33 +03:00
levlam
e12d66af4c Cache remote_location. 2023-07-26 17:34:26 +03:00
levlam
bb1d0d244a Optimize FileView const methods. 2023-07-26 17:09:08 +03:00
levlam
2cf1722b5b Move get_persistent_file_id/get_unique_file_id to FileNode to speed up. 2023-07-26 16:57:32 +03:00
levlam
899197448e Load unknown viewed stories. 2023-07-26 15:35:38 +03:00
levlam
f33dbfb97f Optimize on_get_user. 2023-07-26 15:32:35 +03:00
levlam
38fe2d7cb2 Support NetQueryCreator without Scheduler. 2023-07-26 14:46:31 +03:00
levlam
5bc2634d12 Use FlatHashMap for random_id_to_message_id. 2023-07-26 13:38:10 +03:00
levlam
968bfc48df Move main Session to database scheduler if there is no database. 2023-07-26 13:13:21 +03:00
levlam
06731d965d Move get_database_scheduler_id to Global. 2023-07-26 13:05:34 +03:00
levlam
e8d92b0dcb Make MtprotoHeader thread-safe. 2023-07-26 12:48:59 +03:00
levlam
1ab81f426c Ensure that NetQueryCreator doesn't access Td from another thread. 2023-07-26 12:29:36 +03:00
levlam
c920536260 Optimize FullRemoteFileLocation comparison operators. 2023-07-25 21:47:51 +03:00
levlam
70db527023 Optimize PhotoSizeSource comparison. 2023-07-25 20:31:45 +03:00
levlam
a231b96a7b Improve PTS gap logging. 2023-07-25 14:24:44 +03:00
levlam
0edd5b1651 Support "CHANNEL_INVALID" errors in response to channels.getDifference. 2023-07-25 14:12:58 +03:00
levlam
8c6f5ece88 Ignore updates of unneeded User fields by bots. 2023-07-25 13:45:55 +03:00
levlam
17d26321a5 Decrease gap fill wait time. 2023-07-25 13:06:59 +03:00
levlam
8893dc808f Ignore getDifference responses with invalid polls. 2023-07-24 19:42:09 +03:00
levlam
5110a188b2 Improve MessageReplyInfo logging and updating. 2023-07-24 15:56:03 +03:00
levlam
62677720fc Immediately unload messages in closed chats after updates.channelDifferenceTooLong. 2023-07-24 15:42:38 +03:00
levlam
53c7cfbf02 Reload chat/channel with delay after status has changed. 2023-07-24 13:43:21 +03:00
levlam
1f6342c88e Retry loading of channel difference later if receive invalid poll in a message. 2023-07-23 20:42:30 +03:00
levlam
a0feba5761 Add source to on_update_active_stories. 2023-07-23 09:50:26 +03:00
levlam
4896962420 Remove outdated condition. 2023-07-23 09:46:22 +03:00
levlam
451c559539 Add various checks. 2023-07-23 01:41:59 +03:00
levlam
2f4b8ba8b3 Don't allow replies to supergroup creation message. 2023-07-22 23:07:51 +03:00
levlam
102222e64f Add source to on_update_channel_max_unavailable_message_id. 2023-07-22 22:40:26 +03:00
levlam
21074688c3 Ignore "TOPIC_CLOSED" errors for SaveDraftMessageQuery. 2023-07-22 22:37:27 +03:00
levlam
ad5f37e99e Fix applying of updates about pinned forum topics. 2023-07-22 21:53:32 +03:00
levlam
7498aad742 Improve handling of message reading up to unknown message. 2023-07-22 20:03:35 +03:00
levlam
ea848ff2e4 Fix MessagesManager::can_delete_dialog. 2023-07-22 19:58:26 +03:00
levlam
925f944743 Improve error logging. 2023-07-22 19:43:47 +03:00
levlam
9bebe6dff6 Skip updateChannelTooLong in unknown chats. 2023-07-22 19:17:55 +03:00
levlam
36ae033843 Improve logging. 2023-07-22 19:03:29 +03:00
levlam
ad8e887aae Keep error logging for invalid unread count only if the counters are recalculated. 2023-07-22 18:58:01 +03:00
levlam
2eef3a459b Add source to save_active_stories. 2023-07-22 18:19:05 +03:00
levlam
b5f1e6a772 Fix updating of active stories. 2023-07-22 18:10:51 +03:00
levlam
78d69a296e Send update with 0 order before moving chatActiveStories to another story list. 2023-07-22 17:49:39 +03:00
levlam
b87dc811ba Delete inaccessible stories. 2023-07-22 17:04:08 +03:00
levlam
02456042d6 Avoid expected error logging. 2023-07-22 16:38:56 +03:00
levlam
4984307f36 Improve logging. 2023-07-22 14:16:49 +03:00
levlam
44c58ee242 Move logging of OS freezes to WARNING. 2023-07-22 14:06:57 +03:00
levlam
11c9f78538 Fix inputStoryContentPhoto documentation. 2023-07-22 01:32:48 +03:00
levlam
f817d79b7d Hide unneeded app config option "stories_export_nopublic_link". 2023-07-21 17:42:30 +03:00
levlam
8c69dbcaee Fix "added_shareable_chat_folder_count_max" option. 2023-07-21 17:08:39 +03:00
levlam
c945709bf4 Mark various limit options as internal. 2023-07-21 16:57:11 +03:00
levlam
be9d779f5c Fix "story_caption_length_max" option. 2023-07-21 16:33:39 +03:00
levlam
5ee046b259 Don't update max_active_story_id_next_reload_time if user stories aren't polled. 2023-07-21 15:23:28 +03:00
levlam
240fbe5f36 Fix via_bot_user_id. 2023-07-21 14:49:12 +03:00
levlam
2e5319ff36 Update version to 1.8.15. 2023-07-20 22:24:40 +03:00
levlam
ac1295496c Unify stack traces for on_get_updates calls. 2023-07-20 21:03:05 +03:00
levlam
a3e277f7c0 Add source to get_user_force. 2023-07-20 20:38:25 +03:00
levlam
999aaaf610 Update username cache with usernames loaded from database. 2023-07-20 20:09:46 +03:00
levlam
02ef8b914d Use send_closure_later to send requests in ClientActor to unify stack traces. 2023-07-20 19:38:27 +03:00
levlam
cb7088394e Call Session::loop with send_closure_later to unify stack traces. 2023-07-20 19:12:59 +03:00
levlam
91accb8a78 Disable StoryLists for bots. 2023-07-20 14:14:34 +03:00
levlam
725d309eb1 Fix StoryManager::get_current_state. 2023-07-20 13:47:21 +03:00
levlam
abf32c44cc Simplify capture by value. 2023-07-19 22:41:27 +03:00
levlam
bdcc79b418 Minor improvements. 2023-07-18 18:20:43 +03:00
levlam
6777ff5157 Don't mark owned stories as read. 2023-07-18 17:27:37 +03:00
levlam
a553447ac2 Make story.privacy_settings always non-null. 2023-07-18 16:19:11 +03:00
levlam
fc97956447 Add td_api::StoryPrivacySettings. 2023-07-18 16:00:06 +03:00
levlam
689960ddcb Ensure that story_list.list_last_story_date_ never decrease. 2023-07-18 13:56:57 +03:00
levlam
b7551dab33 Poll maximum active story identifiers of non-contact users. 2023-07-18 13:53:22 +03:00
levlam
a023e80fb5 Add User.max_active_story_id_next_reload_time. 2023-07-17 20:05:35 +03:00
levlam
a73a8dcca1 Update documentation. 2023-07-17 19:41:13 +03:00
levlam
d6c5aa2ef3 Resend auth.dropTempAuthKeys with delay. 2023-07-17 19:37:52 +03:00
levlam
723d09ddee Reduce refresh margin for persistent temp auth keys to speed up recover when the old key reregisters after auth.dropTempAuthKeys. 2023-07-17 19:21:18 +03:00
levlam
9aed145fa1 Don't treat temp auth key as invalid before it is actually expired. 2023-07-17 19:04:39 +03:00
levlam
1b3d14a3f9 Add source to reload_user_full and reload_chat_full. 2023-07-17 18:22:41 +03:00
levlam
1485f85115 Fix saving empty active stories to database. 2023-07-17 17:43:19 +03:00
levlam
b6179eb4a0 Send updateStoryListChatCount on start. 2023-07-17 16:00:24 +03:00
levlam
6c39eabb09 Load active story lists from database. 2023-07-17 15:50:27 +03:00
levlam
308918f737 Improve field and function names. 2023-07-17 14:40:01 +03:00
levlam
35681157e0 Load active story list states from database. 2023-07-17 14:29:09 +03:00
levlam
784c88d598 Improve error message. 2023-07-17 00:50:12 +03:00
levlam
99d38d9fc6 Add StoryDb::get_active_story_list. 2023-07-16 23:15:38 +03:00
levlam
caaf0ce0dc Improve database method names. 2023-07-16 22:43:42 +03:00
levlam
44c9e458eb Save story list state to database. 2023-07-16 17:52:08 +03:00
levlam
3e23b08e79 Add active_story_lists table. 2023-07-16 17:03:20 +03:00
levlam
7624311ac6 Don't resave loaded active stories to database if they didn't change. 2023-07-16 16:36:35 +03:00
levlam
956e31810a Add promise to StoryManager::on_get_user_stories. 2023-07-16 15:39:55 +03:00
levlam
7fb0bd5382 Fix resaving of users to database. 2023-07-16 13:56:28 +03:00
levlam
8f158004c4 Add more logging for updates of data about user stories. 2023-07-16 13:45:17 +03:00
levlam
99bef75da4 Don't try to load active stories from database multiple times. 2023-07-16 13:35:35 +03:00
levlam
2e78aea606 Add td_api::fileTypePhotoStory and td_api::fileTypeVideoStory. 2023-07-16 13:03:25 +03:00
levlam
7ac81f85fc Improve log messages. 2023-07-16 12:52:11 +03:00
levlam
2eb8adc0f6 Don't reload the same inaccessible story too often. 2023-07-16 00:52:52 +03:00
levlam
5b00327ee9 Don't try to load the same story from database multiple times. 2023-07-15 23:35:05 +03:00
levlam
bf3337f21c Fix get_story_force. 2023-07-15 03:46:25 +03:00
levlam
74e83d45ce Add and use StoryManager::get_active_stories_force. 2023-07-15 03:36:18 +03:00
levlam
32a867ed8f Add StoryManager::on_get_story_info. 2023-07-15 02:46:50 +03:00
levlam
887dbaf7ff Save full information about active stories to database. 2023-07-15 02:25:01 +03:00
levlam
45da338329 Add StoryManager::StoryInfo. 2023-07-15 02:16:48 +03:00
levlam
cbdd558d3a Fix archiveChatListSettings settings. 2023-07-14 18:51:47 +03:00
levlam
ea17b2ca46 Add more logging in StoryManager::parse_story. 2023-07-14 18:26:47 +03:00
levlam
4df51fdcdd Add get_active_stories. 2023-07-14 18:03:49 +03:00
levlam
fe2e34d8bc Save active stories to database. 2023-07-14 17:42:59 +03:00
levlam
755e600f0c Add need_save_to_database to update_active_stories_order. 2023-07-14 17:26:09 +03:00
levlam
88832bb2c7 Improve send_update_chat_active_stories. 2023-07-14 16:30:49 +03:00
levlam
fecb4a2d23 Improve get_chat_active_stories_object. 2023-07-14 16:27:03 +03:00
levlam
b0510432a5 Add StoryDb::delete_active_stories. 2023-07-14 16:10:52 +03:00
levlam
6685bcfd7a Remove "archive_and_mute_new_chats_from_unknown_users" option. 2023-07-14 15:41:38 +03:00
levlam
d5c8a68876 Hide EnableArchiveAndMuteNewChat suggested action when the corresponding setting is set. 2023-07-14 15:31:27 +03:00
levlam
0181baf1ad Add td_api::setArchiveChatListSettings. 2023-07-14 15:25:32 +03:00
levlam
e067160876 Add td_api::getArchiveChatListSettings. 2023-07-14 14:54:35 +03:00
levlam
fa1e7a1eab Fix get_message_content_min_user_ids. 2023-07-14 14:04:16 +03:00
levlam
fc6ef9d590 Avoid expected error logging. 2023-07-13 21:55:53 +03:00
levlam
c2999d8557 Minor improvements. 2023-07-13 19:32:54 +03:00
levlam
aa0b217a18 Fix call to set_pts. 2023-07-13 19:17:16 +03:00
levlam
e1c090c9e3 Don't generate duplicate includes and forward declarations. 2023-07-13 18:31:58 +03:00
levlam
0d0b31c811 Support generation of multiple headers in generate_common. 2023-07-13 18:26:12 +03:00
levlam
6ece751ccd Fix warning. 2023-07-13 18:15:06 +03:00
levlam
5941063b43 Add storyInfo.is_for_close_friends. 2023-07-13 17:56:49 +03:00
levlam
4f62b7693a Add source to reload_stories. 2023-07-13 16:39:19 +03:00
levlam
514f5974d4 Improve logging for stories. 2023-07-13 16:36:42 +03:00
levlam
489337ecd9 Add logging for story timeouts. 2023-07-13 16:29:05 +03:00
levlam
cf67743311 Remove chat identifier logging from PhotoSizeSource. 2023-07-13 16:25:57 +03:00
levlam
6d4d8ad5f8 Improve logging in on_update_read_stories. 2023-07-13 16:21:43 +03:00
levlam
ae1870a0b7 Add StoryManager::get_story_list. 2023-07-13 15:53:40 +03:00
levlam
a108922b6f Use StoryListId in load_active_stories. 2023-07-13 15:44:26 +03:00
levlam
39b0b53ae9 Simplify update_story_list_sent_total_count usage. 2023-07-13 15:37:11 +03:00
levlam
39eb3fdb0d Improve name of update_story_list_sent_total_count function. 2023-07-13 15:34:53 +03:00
levlam
6b4586da9b Fix deletion of active stories. 2023-07-13 15:34:08 +03:00
levlam
8d971da083 Fix MessageReaction creation. 2023-07-13 13:54:58 +03:00
levlam
961fe5fba7 Add database table for active stories. 2023-07-13 02:03:02 +03:00
levlam
1669f8d4b8 Init sessions if there are multiple sessions. 2023-07-12 21:08:01 +03:00
levlam
a9712d7afa Use DelayDispatcher for video stories. 2023-07-12 20:41:44 +03:00
levlam
723b2d1fba Send updateStory before returning the story to the app. 2023-07-12 16:28:20 +03:00
levlam
a4e4a20fb4 Add StoryManager::send_update_story. 2023-07-12 16:16:55 +03:00
levlam
b9473decc2 Always list actor_id first in lambda capture. 2023-07-11 17:53:43 +03:00
levlam
3b28485a3f Always apply awaited sent messages. 2023-07-11 17:14:02 +03:00
levlam
07ece1faea Improve PTS restore even more. 2023-07-11 16:20:35 +03:00
levlam
6b376a71e8 Improve updatePtsChanged handling by using getDifference instead of getState, which allows to get all pending updates. 2023-07-11 16:10:56 +03:00
levlam
00a6271edb Restore PTS after overflow. 2023-07-11 15:50:50 +03:00
levlam
6217e8c8f2 Don't drop state on updatePtsChanged. 2023-07-11 15:23:35 +03:00
levlam
583f10706a Improve logging on SessionConnection closure. 2023-07-11 13:42:47 +03:00
levlam
4b3de26c0c Add getStory.only_local. 2023-07-11 12:29:10 +03:00
levlam
53ea5b0fa1 Add Story.is_being_edited. 2023-07-11 00:33:25 +03:00
levlam
989432d33e Delete expired stories from database. 2023-07-10 19:43:26 +03:00
levlam
87591a0704 Add class StoryDbStory. 2023-07-10 18:50:03 +03:00
levlam
f031ddf102 Store edit generations outside of Story. 2023-07-10 17:45:16 +03:00
levlam
558305046c Use get_story_force if appropriate. 2023-07-10 16:50:01 +03:00
levlam
82b524de0a Create chats for received story identifiers. 2023-07-10 16:39:49 +03:00
levlam
2805ecaa66 Fix on_update_user_max_read_story_id usage. 2023-07-10 15:58:56 +03:00
levlam
79e09cc757 Ignore deleted stories in StoryManager::parse_story. 2023-07-10 15:47:56 +03:00
levlam
4ae098c3a8 Add StoryFullId to dependencies. 2023-07-10 15:36:38 +03:00
levlam
958aab66e6 Add StoryManager::get_story_force. 2023-07-10 14:56:39 +03:00
levlam
b9672dbf97 Don't create stories without content. 2023-07-10 14:14:12 +03:00
levlam
00172347d5 Delete stories from database. 2023-07-10 13:52:42 +03:00
levlam
7f5b42e165 Add stories to database. 2023-07-10 13:39:17 +03:00
levlam
e523a5b2f6 Add story database. 2023-07-10 13:18:32 +03:00
levlam
9d4087b101 Ensure that stories are sent in the correct order. 2023-07-09 16:01:14 +03:00
levlam
f8f6a0a5c9 Ensure ordering for StoryManager requests. 2023-07-09 15:24:20 +03:00
levlam
c15a9d2464 Add td_api::updateStoryListChatCount. 2023-07-08 18:50:58 +03:00
levlam
39b84d89ea Improve method setChatActiveStoriesList name. 2023-07-08 16:53:29 +03:00
levlam
c6e5506f9a tg_cli: add as_story_list. 2023-07-08 15:55:49 +03:00
levlam
a1038bb20c Add class StoryListId. 2023-07-08 15:42:23 +03:00
levlam
186f496a54 Add story.has_expired_viewers. 2023-07-08 09:32:30 +03:00
levlam
5819c049a3 Consistently use American "expiration date". 2023-07-08 08:48:40 +03:00
levlam
3937eb7bdf Add "story_viewers_expiration_delay" option. 2023-07-08 08:42:59 +03:00
levlam
dbed591a01 Improve storyListArchive name. 2023-07-08 02:40:19 +03:00
levlam
b5d513dba0 Fix has_unread_active_stories for self. 2023-07-07 19:46:38 +03:00
levlam
c28286d110 Fix get_chat_active_stories_object. 2023-07-07 19:30:31 +03:00
levlam
fdcec41c93 Add and use ContactsManager::on_update_user_max_read_story_id. 2023-07-07 18:35:47 +03:00
levlam
cb8418f840 Improve calls to on_update_user_has_stories. 2023-07-07 18:29:22 +03:00
levlam
f589137af4 Add user.has_unread_active_stories. 2023-07-07 18:25:24 +03:00
levlam
d40ea33796 Store max_active_story_id in User object. 2023-07-07 18:06:14 +03:00
levlam
288666c1fe Load all read stories from time to time. 2023-07-07 17:41:30 +03:00
levlam
987faa7c6a Rename activeStories to chatActiveStories. 2023-07-07 16:52:56 +03:00
levlam
00608a45a3 Return chat_id back to activeStories. 2023-07-07 16:51:14 +03:00
levlam
bd6e6f28bc Fix handling of RegetDialogLogEvent. 2023-07-07 16:44:08 +03:00
levlam
e323256e65 Add more logging. 2023-07-07 16:22:12 +03:00
levlam
bf3f1c33ae Return updateChatActiveStories in getCurrentState. 2023-07-07 16:18:18 +03:00
levlam
3afa9fb5f5 Improve update name. 2023-07-07 16:13:12 +03:00
levlam
5c3a15e266 Remove chat_id from activeStories. 2023-07-07 16:08:03 +03:00
levlam
e27ded859b Send update when active stories are moved from one list to another. 2023-07-07 16:01:05 +03:00
levlam
7a3604d5b6 Add source to StoryManager::on_dialog_active_stories_order_updated. 2023-07-07 15:52:55 +03:00
levlam
1737fde5a5 Save StoryListId in ActiveStories. 2023-07-07 15:49:46 +03:00