Commit Graph

377 Commits

Author SHA1 Message Date
levlam
9842d5754f Improve flood control for new webhook connections. 2022-11-22 14:25:52 +03:00
levlam
53aa4d2f03 Reget poll messages from TDLib. 2022-11-22 13:34:16 +03:00
levlam
ce6ddc74d7 Limit the number of simultaneously uploaded files. 2022-11-14 15:35:43 +03:00
levlam
c833612414 Output log tag before stack trace. 2022-11-12 11:15:33 +03:00
levlam
84ceee07bf Use TQueue::clear. 2022-11-12 10:44:00 +03:00
levlam
a9cb897af4 Update TDLib to 1.8.9 and add SslCtx caching. 2022-11-11 15:37:07 +03:00
levlam
a822b35d87 Update TDLib and version to 6.3.2. 2022-11-08 01:35:39 +03:00
levlam
29cc000c08 Fix type of icon_custom_emoji_id. 2022-11-08 01:28:57 +03:00
levlam
ab2f0f0bbc Update version to 6.3.1. 2022-11-07 00:59:44 +03:00
levlam
0ddf9a460d Fix type of emoji_status_custom_emoji_id. 2022-11-07 00:59:20 +03:00
levlam
571baeead0 Update version to 6.3. 2022-11-04 18:01:15 +03:00
levlam
daf986972b Destroy deleted messages on another thread. 2022-11-03 20:30:14 +03:00
levlam
8aac13eb4d Check message_thread_id parameter before using it. 2022-11-02 14:05:23 +03:00
levlam
36e41d6b7f Add unpinAllForumTopicMessages method. 2022-10-31 20:29:38 +03:00
levlam
88748a50f3 Add deleteForumTopic method. 2022-10-31 19:16:14 +03:00
levlam
807c353fc0 Add reopenForumTopic method. 2022-10-31 19:13:57 +03:00
levlam
82ec9dc608 Add closeTopicForum method. 2022-10-31 19:11:29 +03:00
levlam
1f7cd2cba5 Add editForumTopic method. 2022-10-31 18:55:34 +03:00
levlam
1e68d49193 Add createForumTopic method. 2022-10-31 18:44:29 +03:00
levlam
83bcb31994 Add getForumTopicIconStickers method. 2022-10-31 18:27:17 +03:00
levlam
39392705a7 Allow to specify message_thread_id while sending messages. 2022-10-31 18:16:51 +03:00
levlam
f4b4ab3d74 Add "forum_topic_closed"/"forum_topic_reopened" messages. 2022-10-31 17:42:34 +03:00
levlam
8fa63c21f9 Add "forum_topic_created" messages. 2022-10-31 17:35:54 +03:00
levlam
1c3235b402 Add Message.is_topic_message. 2022-10-31 17:14:23 +03:00
levlam
b0fec0b09d Add Message.message_thread_id. 2022-10-31 17:09:34 +03:00
levlam
342d59a19d Add can_manage_topics chat permission. 2022-10-31 16:15:46 +03:00
levlam
ea978c5770 Add can_manage_topics administrator right. 2022-10-31 16:12:13 +03:00
levlam
5fb80085fb Add Chat.emoji_status_custom_emoji_id. 2022-10-31 15:59:15 +03:00
levlam
1ba4392648 Add Chat.active_usernames. 2022-10-31 15:49:53 +03:00
levlam
1270c70499 Add Chat.is_forum. 2022-10-31 15:36:42 +03:00
levlam
90d30d9a63 Update TDLib to 1.8.8. 2022-10-31 12:30:11 +03:00
levlam
c1db2380bd Send less updates repeatedly in getUpdates. 2022-10-23 11:34:24 +03:00
levlam
bb8b7a6702 Ignore dump-log and dump-stacktrace signals after crash. 2022-10-21 13:39:32 +03:00
levlam
aa05180325 Update TDLib and improve TQueue GC. 2022-10-14 00:46:54 +03:00
levlam
018b4fc6f7 Stop ClientManager watchdog at the beginning of closing. 2022-10-13 01:23:05 +03:00
levlam
b44bc1cabd Update TDLib and use AsyncFileLog instead of FileLog. 2022-10-09 20:16:45 +03:00
levlam
3be8cb6323 Move dump_statistics to ClientManager. 2022-10-06 22:18:36 +03:00
levlam
022bed651c Move TQueue::run_gc to ClientManager. 2022-10-06 21:42:33 +03:00
levlam
337b657f9c Add watchdog for ClientManager's thread. 2022-10-05 00:06:48 +03:00
levlam
04825c4b70 Move ClientManager to a separate thread. 2022-10-04 18:27:50 +03:00
levlam
2cca516445 Fail pending setWebhook queries during closing. 2022-10-04 17:05:35 +03:00
levlam
e4324ead54 Copy webhook certificate in another thread. 2022-10-04 16:26:51 +03:00
levlam
2224b715be Improve logging for delayed message updates. 2022-09-29 20:28:44 +03:00
levlam
254ad97805 Update TDLib to 1.8.7 and support extended_media in sendInvoice. 2022-09-23 20:29:42 +03:00
levlam
834caf09bf Fail queries immediately if there are too many active queries already. 2022-09-18 10:19:58 +03:00
levlam
27bb4831f6 Add active_request_count and active_file_upload_bytes to bot statistics. 2022-09-18 02:54:22 +03:00
levlam
11d27e3e52 Don't output empty fields in bot statistics. 2022-09-18 02:15:53 +03:00
levlam
c20f0c3d97 Improve dump of short MemoryLog. 2022-09-18 01:17:09 +03:00
levlam
c35bbf1bd2 Update TDLib to 1.8.6 and add options for changing CPU affinity. 2022-09-18 00:20:41 +03:00
levlam
3b5cf48e5b Improve errors returned by get_input_message_contents. 2022-08-28 22:30:49 +03:00
levlam
5eb24c7e63 Improve statistics retrieval. 2022-08-24 15:48:27 +03:00
levlam
aa9eff357c Add watchdog for main thread hanging. 2022-08-22 02:26:36 +03:00
levlam
90910f6ded Update TDLib and use td::WaitFreeHashMap if appropriate. 2022-08-21 14:44:57 +03:00
levlam
f59097ab16 Update version to 6.2. 2022-07-31 03:26:25 +03:00
levlam
9f3f32391c Add Chat.has_restricted_voice_and_video_messages. 2022-07-21 19:12:28 +03:00
levlam
e66c5fa67d Add custom_emoji_id field to the class Sticker. 2022-07-21 19:06:37 +03:00
levlam
7cfdea2053 Add getCustomEmojiStickers. 2022-07-21 19:00:58 +03:00
levlam
eed4773a4f Add sticker_type fields and parameter. 2022-07-21 18:17:23 +03:00
levlam
4a7d515d94 Support custom_emoji entities. 2022-07-20 23:28:56 +03:00
levlam
4be79ff78c Update TDLib to 1.8.5. 2022-07-20 22:54:07 +03:00
levlam
2633de8b53 Update TDLib and destroy some big data storages asynchronously. 2022-07-20 14:48:12 +03:00
levlam
c237634847 Improve warnings about size of update queue. 2022-07-09 14:08:08 +03:00
levlam
ca2bb3cec6 Unlink webhook certificate in another thread. 2022-07-01 13:58:28 +03:00
levlam
0749acb7e6 Use Scheduler::run_on_scheduler. 2022-06-30 21:30:14 +03:00
levlam
95131fe376 Update TDLib. 2022-06-30 20:27:08 +03:00
levlam
3de310c951 Use LambdaPromise instead of PromiseActor. 2022-06-30 19:59:30 +03:00
levlam
4f3105f4a4 Rely on TDLib checks for downloaded file existence. 2022-06-29 18:51:24 +03:00
levlam
24ee05d15f Update version to 6.1. 2022-06-19 20:25:15 +03:00
levlam
ba6f4c2e8d Add Sticker.premium_animation. 2022-06-06 16:33:42 +03:00
levlam
b102163220 Improve sendMediaGroup error message. 2022-05-30 21:32:01 +03:00
levlam
897ddb64ce Add User.is_premium. 2022-05-24 16:56:53 +03:00
levlam
7b20bdacdf Allow to use attach protocol to upload webhook certificate. 2022-05-13 18:24:18 +03:00
levlam
0ac93c8674 Add join_to_send_messages and join_by_request flags to Chat. 2022-05-13 16:41:12 +03:00
levlam
06d40edb0a Allow to specify a secret_token in setWebhook to ensure that webhook was set by the domain owner. 2022-05-13 16:39:32 +03:00
levlam
fd7489f6da Add the field User.added_to_attachment_menu. 2022-05-11 19:46:07 +03:00
levlam
89f6bed3b8 Add createInvoiceLink. 2022-05-09 21:49:26 +03:00
levlam
2001518ec5 Update TDLib to 1.8.4. 2022-05-09 19:25:56 +03:00
levlam
8a0f1dd730 Update TDLib and version to 6.0.2. 2022-05-04 20:12:23 +03:00
levlam
0dfcb6153a Update TDLib and version to 6.0.1. 2022-04-18 01:23:20 +03:00
levlam
31d947e971 Update version to 6.0. 2022-04-16 06:13:09 +03:00
levlam
7a2f3715f9 Add setChatMenuButton. 2022-04-08 04:12:22 +03:00
levlam
84199e5328 Add getChatMenuButton. 2022-04-08 03:07:52 +03:00
levlam
2989274f1f Add getMyDefaultAdministratorRights. 2022-04-03 13:29:57 +03:00
levlam
ee9dcde37b Add setMyDefaultAdministratorRights. 2022-04-03 09:33:40 +03:00
levlam
c278251d8f Add web_app_data messages. 2022-03-28 17:15:39 +03:00
levlam
3252809448 Unify message content variable names. 2022-03-28 17:10:49 +03:00
levlam
defcb52571 Support WebApp buttons. 2022-03-25 01:00:48 +03:00
levlam
8bc5730532 Add answerWebAppQuery method. 2022-03-24 12:02:15 +03:00
levlam
58e6248874 Update TDLib to 1.8.3. 2022-03-24 11:49:55 +03:00
levlam
3c99f26824 Rename voice chats to video chats. 2022-03-22 17:25:59 +03:00
levlam
afaa577b1a Add "last_synchronization_error_date" to getWebhookInfo. 2022-03-18 14:03:14 +03:00
levlam
b4f0ebbaab Store full chatPhoto and compare it with chatPhotoInfo. 2022-03-16 14:49:38 +03:00
levlam
4925532c25 Use td::unique_ptr instead of std::unique_ptr. 2022-03-16 12:52:34 +03:00
levlam
3e9da68537 Use td::FlatHashTable instead of std::unordered_map/set. 2022-03-16 12:41:12 +03:00
levlam
d8166a558d Update TDLib to 1.8.2. 2022-03-15 20:28:51 +03:00
levlam
c57b04c4c8 Update version to 5.7. 2022-01-31 22:49:25 +03:00
levlam
1851ba7eb5 Update TDLib to 1.8.1. 2022-01-31 22:32:10 +03:00
levlam
208fd70d58 Minor improvements. 2022-01-25 18:18:44 +03:00
levlam
93ccd2a145 Update version to 5.6.1. 2022-01-01 12:45:09 +03:00
levlam
9be6413e5c Improve logging. 2021-12-31 08:20:44 +03:00
levlam
b75e6b43cd Update version to 5.6. 2021-12-30 21:09:17 +03:00
levlam
d95441a48d Allow all updateUser updates before authorization. 2021-12-30 21:01:14 +03:00
levlam
01ff608cfa Improve log message. 2021-12-30 17:18:30 +03:00
levlam
6b137be127 Add support for spoiler entities. 2021-12-30 14:44:21 +03:00
levlam
6ec2104b81 Add the ability to send messages with protected content. 2021-12-30 14:41:30 +03:00
levlam
8e637b482a Update TDLib to 1.8.0. 2021-12-30 14:34:39 +03:00
levlam
6abdb73512 Remove legacy message LRU deletion. 2021-12-18 23:26:05 +03:00
levlam
561119367a Update .clang-format. 2021-12-13 00:35:46 +03:00
levlam
90f5247781 Update version to 5.5.1. 2021-12-09 19:06:22 +03:00
levlam
3980748099 Use channel_bot as sender of channel messages. 2021-12-09 18:48:39 +03:00
levlam
df89ddf059 Fix Message.is_automatic_forward flag for automatically forwarded manually forwarded messages. 2021-12-08 14:04:49 +03:00
Harshil
04361155aa fix spelling 2021-12-07 17:50:33 +03:00
levlam
b440ade235 Update version to 5.5. 2021-12-07 14:43:39 +03:00
levlam
541126ead5 Add banChatSenderChat/unbanChatSenderChat methods. 2021-12-07 14:03:40 +03:00
levlam
052032ee8b Add field Chat.has_private_forwards. 2021-12-07 13:40:47 +03:00
levlam
9f8606b612 Add field Chat.has_protected_content. 2021-12-07 13:33:44 +03:00
levlam
5d118ebf6b Add field Message.has_protected_content. 2021-12-07 13:25:01 +03:00
levlam
f7e38e273c Update TDLib to 1.7.10. 2021-12-07 13:13:16 +03:00
levlam
824b23afc6 Add field Message.is_automatic_forward. 2021-12-07 12:56:22 +03:00
levlam
5491729a3c Assign a thread_id for main thread. 2021-11-17 13:24:19 +03:00
levlam
e9587a0083 Update TDLib and version to 5.4.1. 2021-11-07 04:23:28 +03:00
levlam
a838756c9a Update version to 5.4. 2021-11-04 15:51:16 +03:00
levlam
e2728cba7c Add approve/declineChatJoinRequest. 2021-11-04 14:08:17 +03:00
levlam
c9a2a62248 Add "chat_join_request" updates. 2021-11-04 13:35:43 +03:00
levlam
2fa32d7db7 Update TDLib to 1.7.9. 2021-11-04 13:02:05 +03:00
levlam
5130c52676 Add is_active to bot statistics. 2021-10-27 19:43:41 +03:00
levlam
6aa090a43a Improve MultiPromiseActorSafe usage. 2021-10-26 14:28:09 +03:00
levlam
380e65d47e Limit number of concurrently sent messages to a chat. 2021-10-01 14:52:47 +03:00
levlam
e715de9e1c Count number of active clients with a given tqueue_id. 2021-09-30 23:23:41 +03:00
levlam
9380c2a3d1 Log all responses with code < 200. 2021-09-29 20:40:18 +03:00
levlam
997a7408c7 Update TDLib. 2021-09-29 20:34:21 +03:00
levlam
36b0c4426a Update version to 5.3.3. 2021-09-20 23:56:53 +03:00
levlam
0034afbcba Update TDLib to 1.7.8. 2021-09-20 16:58:22 +03:00
levlam
87981c105d Print stack trace to stderr after receiving signal RTMIN+2. 2021-09-12 13:51:22 +03:00
levlam
0e1862d26d Update version to 5.3.2. 2021-09-08 17:22:40 +03:00
levlam
40ff6f637b Update TDLib to 1.7.7. 2021-09-08 17:21:28 +03:00
levlam
937fa526b9 Remove unused field. 2021-09-06 16:51:45 +03:00
levlam
d598402a3c Remove unneeded check for unavailable supergroup member count. 2021-08-13 19:36:11 +03:00
levlam
60acf1e402 Store separate size of query_list_. 2021-08-10 12:50:02 +03:00
levlam
eafb9375d2 Allow to change tag verbosity level. 2021-08-02 23:57:11 +03:00
levlam
05b3d5fcb1 Update version to 5.3.1. 2021-07-27 01:55:06 +03:00
levlam
0df68c6235 Remove debug logging for slow internal queries. 2021-07-27 01:54:11 +03:00
levlam
def3e84f12 Fix check for self-destructing messages. 2021-07-22 18:15:31 +03:00
levlam
7fd2c2a22d Replace error code 403 with 400 in server-side errors just in case. 2021-07-17 04:40:32 +03:00
levlam
8a3d43daa9 Output TQueue load time to log. 2021-06-26 04:22:29 +03:00
levlam
81f298361c Update version to 5.3. 2021-06-25 04:20:57 +03:00
levlam
b7af179809 Add logging on errors with non-positive error code. 2021-06-24 17:27:15 +03:00
levlam
b8693ae500 Support new bot command methods. 2021-06-23 06:48:24 +03:00
levlam
73b65fc99e Support input field placehoder in ReplyMarkup. 2021-06-23 03:38:17 +03:00
levlam
878a1e16a8 Update TDLib. 2021-06-23 03:34:31 +03:00
levlam
badeb9a7f0 Automatically detect whether colon can be used in a directory name. 2021-06-23 02:03:22 +03:00
levlam
08a92a2347 Use absolute file paths. 2021-06-22 21:26:41 +03:00
levlam
ad55377cba Allow to leave deactivated basic groups independently from supergroups. 2021-06-14 23:15:40 +03:00
levlam
ab8edb4de7 Log too old queries. 2021-06-14 22:58:23 +03:00
levlam
7de971ec20 Simplify Query creation and statistics. 2021-06-14 22:47:01 +03:00
levlam
54112379ff Check write access to temporary directory. 2021-06-14 21:24:20 +03:00
levlam
061c34749a Dump statistics additionally to log by signal. 2021-06-14 20:53:55 +03:00
levlam
084aa2a6f3 Ignore internal setWebhook queries in flood-control. 2021-06-14 04:11:15 +03:00
levlam
05bbc55569 Clamp default arg value just in case. 2021-06-14 04:07:37 +03:00
levlam
aa70087df4 Make bots online while logging in. 2021-06-14 03:45:44 +03:00
levlam
4eb391decd Dump memory statistics with other state. 2021-06-04 18:20:08 +03:00
levlam
19f9e1eff0 Output uptime and current state on closing. 2021-06-04 17:43:04 +03:00
levlam
6a7b2fd8a4 Don't store invalid callback_data in messages. 2021-06-03 19:26:19 +03:00
levlam
7f9e9fd809 Update TDLib. 2021-05-20 23:51:37 +03:00
levlam
72d8f73dbe Don't allow to access member list in deactivated groups. 2021-05-10 19:44:12 +03:00
levlam
f423f426a2 Improve handling of deleted group chats. 2021-05-10 19:02:49 +03:00
KnorpelSenf
bcd0c8eaa5
Add --version flag (#132) 2021-05-10 18:49:50 +03:00
levlam
90fed9b9a7 Update version to 5.2. 2021-04-13 19:33:50 +03:00
levlam
12a3240656 Add InputInvoiceMessageContent. 2021-04-08 18:38:05 +03:00
levlam
aa737b3dcf Support messageVoiceChatScheduled. 2021-04-08 17:49:53 +03:00
levlam
efaf601e85 Don't store empty chat_type. 2021-04-08 17:44:55 +03:00
levlam
b71e66003e Support new invoice fields. 2021-04-08 17:42:21 +03:00
levlam
39f96f93a9 Update TDLib to 1.7.4. 2021-04-08 17:17:05 +03:00
levlam
ef23b96c94 Improve log message. 2021-04-08 16:49:00 +03:00
levlam
d97045bc06 Add version to ClientParameters and log it on launch. 2021-03-14 05:28:30 +03:00
levlam
72171e5751 Improve log messages in fail_query_with_error. 2021-03-14 05:24:32 +03:00
levlam
a133545d4b Treat self as a member in deactivated basic groups. 2021-03-14 05:00:36 +03:00
levlam
202ddaffab Update version to 5.1. 2021-03-09 13:30:42 +03:00
levlam
fcfb194c54 Use "from" instead of "actor" for consistency with most other updates. 2021-03-09 13:24:17 +03:00
levlam
871cbcfeec Update TDLib and improve field names. 2021-03-05 23:48:13 +03:00
levlam
e128906890 Don't log "Request aborted" errors. 2021-03-03 19:32:08 +03:00
levlam
e6eda8c31d Add Client::get_input_entities function. 2021-02-27 22:32:50 +03:00
levlam
778c155b5c Add update "my_chat_member". 2021-02-27 03:40:58 +03:00
levlam
93158f05a7 Add Internal Server Error logging. 2021-02-26 03:50:42 +03:00
levlam
418946b0e1 Add update 'chat_member'. 2021-02-26 03:02:26 +03:00
levlam
8323701b27 Add can_manage_chat administrator privilege. 2021-02-25 22:40:54 +03:00
levlam
6ab61f2fed Add revokeChatInviteLink method. 2021-02-25 22:32:23 +03:00
levlam
c8bc4c9d3a Add editChatInviteLink method. 2021-02-25 22:25:33 +03:00
levlam
1db5521027 Add fast path in check_message. 2021-02-25 22:11:11 +03:00
levlam
90d29edcce Add Chat.message_auto_delete_time field. 2021-02-25 22:00:17 +03:00
levlam
685e6bf87d Update TDLib to 1.7.2. Add createChatInviteLink method. 2021-02-25 21:29:30 +03:00
levlam
ae56eee88f Avoid some string copies. 2021-02-18 22:41:59 +03:00
levlam
2ab19c5948 Support revoke_messages for groups in kickChatMember. 2021-02-17 20:43:55 +03:00
levlam
e605063da6 Update TDLib. 2021-02-17 17:23:58 +03:00
levlam
4bb09ffd63 Add message_auto_delete_time_changed service message. 2021-02-17 15:45:24 +03:00
levlam
35aa4d30a4 Add related to voice chat service messages. 2021-02-17 14:45:22 +03:00
levlam
a01c36ec1f Allow to change memory log verbosity level. 2021-02-15 01:23:18 +03:00
levlam
f781aab119 Add webhook response time to log. 2021-02-03 17:32:43 +03:00
levlam
8b2926a92f Improve error message on wrong API ID specified. 2021-02-01 15:44:32 +03:00
levlam
08ba28539f Return error 500 if sent message was immediately deleted and can't be returned. 2021-01-27 00:57:51 +03:00