From 81cebe39ebd0dc72e60efa191a7b5fa3d2be1f6d Mon Sep 17 00:00:00 2001 From: levlam Date: Tue, 21 Dec 2021 13:49:26 +0300 Subject: [PATCH] Improve naming of selected message sender in a chat. --- td/generate/scheme/td_api.tl | 12 ++++++------ td/telegram/MessagesManager.cpp | 32 +++++++++++++++++--------------- td/telegram/MessagesManager.h | 4 ++-- td/telegram/Td.cpp | 4 ++-- td/telegram/Td.h | 2 +- td/telegram/cli.cpp | 4 ++-- 6 files changed, 30 insertions(+), 28 deletions(-) diff --git a/td/generate/scheme/td_api.tl b/td/generate/scheme/td_api.tl index 004730735..3b835728d 100644 --- a/td/generate/scheme/td_api.tl +++ b/td/generate/scheme/td_api.tl @@ -968,7 +968,7 @@ videoChat group_call_id:int32 has_participants:Bool default_participant_id:Messa //@permissions Actions that non-administrator chat members are allowed to take in the chat //@last_message Last message in the chat; may be null //@positions Positions of the chat in chat lists -//@default_message_sender_id Default identifier of a user or chat that is chosen to send messages in the chat; may be null if the user can't change message sender +//@message_sender_id Identifier of a user or chat that is selected to send messages in the chat; may be null if the user can't change message sender //@has_protected_content True, if chat content can't be saved locally, forwarded, or copied //@is_marked_as_unread True, if the chat is marked as unread //@is_blocked True, if the chat is blocked by the current user and private messages from the chat can't be received @@ -990,7 +990,7 @@ videoChat group_call_id:int32 has_participants:Bool default_participant_id:Messa //@reply_markup_message_id Identifier of the message from which reply markup needs to be used; 0 if there is no default custom reply markup in the chat //@draft_message A draft of a message in the chat; may be null //@client_data Application-specific data associated with the chat. (For example, the chat scroll position or local chat notification settings can be stored here.) Persistent if the message database is used -chat id:int53 type:ChatType title:string photo:chatPhotoInfo permissions:chatPermissions last_message:message positions:vector default_message_sender_id:MessageSender has_protected_content:Bool is_marked_as_unread:Bool is_blocked:Bool has_scheduled_messages:Bool can_be_deleted_only_for_self:Bool can_be_deleted_for_all_users:Bool can_be_reported:Bool default_disable_notification:Bool unread_count:int32 last_read_inbox_message_id:int53 last_read_outbox_message_id:int53 unread_mention_count:int32 notification_settings:chatNotificationSettings message_ttl_setting:int32 theme_name:string action_bar:ChatActionBar video_chat:videoChat pending_join_requests:chatJoinRequestsInfo reply_markup_message_id:int53 draft_message:draftMessage client_data:string = Chat; +chat id:int53 type:ChatType title:string photo:chatPhotoInfo permissions:chatPermissions last_message:message positions:vector message_sender_id:MessageSender has_protected_content:Bool is_marked_as_unread:Bool is_blocked:Bool has_scheduled_messages:Bool can_be_deleted_only_for_self:Bool can_be_deleted_for_all_users:Bool can_be_reported:Bool default_disable_notification:Bool unread_count:int32 last_read_inbox_message_id:int53 last_read_outbox_message_id:int53 unread_mention_count:int32 notification_settings:chatNotificationSettings message_ttl_setting:int32 theme_name:string action_bar:ChatActionBar video_chat:videoChat pending_join_requests:chatJoinRequestsInfo reply_markup_message_id:int53 draft_message:draftMessage client_data:string = Chat; //@description Represents a list of chats @total_count Approximate total count of chats found @chat_ids List of chat identifiers chats total_count:int32 chat_ids:vector = Chats; @@ -3725,8 +3725,8 @@ updateChatLastMessage chat_id:int53 last_message:message positions:vectordefault_send_message_as_dialog_id = DialogId(); LOG(INFO) << "Set message sender in " << d->dialog_id << " to " << d->default_send_message_as_dialog_id; on_dialog_updated(dialog_id, "open_dialog"); - send_update_chat_default_message_sender_id(d); + send_update_chat_message_sender(d); } switch (dialog_id.get_type()) { @@ -20324,10 +20324,11 @@ td_api::object_ptr MessagesManager::get_video_chat_object(con std::move(default_participant_alias)); } -td_api::object_ptr MessagesManager::get_default_sender_id_object(const Dialog *d) const { +td_api::object_ptr MessagesManager::get_default_message_sender_object(const Dialog *d) const { auto as_dialog_id = d->default_send_message_as_dialog_id; - return as_dialog_id.is_valid() ? get_message_sender_object_const(td_, as_dialog_id, "get_default_sender_id_object") - : nullptr; + return as_dialog_id.is_valid() + ? get_message_sender_object_const(td_, as_dialog_id, "get_default_message_sender_object") + : nullptr; } td_api::object_ptr MessagesManager::get_chat_object(const Dialog *d) const { @@ -20394,9 +20395,10 @@ td_api::object_ptr MessagesManager::get_chat_object(const Dialog * get_chat_photo_info_object(td_->file_manager_.get(), get_dialog_photo(d->dialog_id)), get_dialog_default_permissions(d->dialog_id).get_chat_permissions_object(), get_message_object(d->dialog_id, get_message(d, d->last_message_id), "get_chat_object"), - get_chat_positions_object(d), get_default_sender_id_object(d), get_dialog_has_protected_content(d->dialog_id), - d->is_marked_as_unread, d->is_blocked, get_dialog_has_scheduled_messages(d), can_delete_for_self, - can_delete_for_all_users, can_report_dialog(d->dialog_id), d->notification_settings.silent_send_message, + get_chat_positions_object(d), get_default_message_sender_object(d), + get_dialog_has_protected_content(d->dialog_id), d->is_marked_as_unread, d->is_blocked, + get_dialog_has_scheduled_messages(d), can_delete_for_self, can_delete_for_all_users, + can_report_dialog(d->dialog_id), d->notification_settings.silent_send_message, d->server_unread_count + d->local_unread_count, d->last_read_inbox_message_id.get(), d->last_read_outbox_message_id.get(), d->unread_mention_count, get_chat_notification_settings_object(&d->notification_settings), @@ -29582,13 +29584,13 @@ void MessagesManager::send_update_chat_video_chat(const Dialog *d) { td_api::make_object(d->dialog_id.get(), get_video_chat_object(d))); } -void MessagesManager::send_update_chat_default_message_sender_id(const Dialog *d) { +void MessagesManager::send_update_chat_message_sender(const Dialog *d) { CHECK(!td_->auth_manager_->is_bot()); CHECK(d != nullptr); - LOG_CHECK(d->is_update_new_chat_sent) << "Wrong " << d->dialog_id << " in send_update_chat_default_message_sender_id"; - send_closure(G()->td(), &Td::send_update, - td_api::make_object(d->dialog_id.get(), - get_default_sender_id_object(d))); + LOG_CHECK(d->is_update_new_chat_sent) << "Wrong " << d->dialog_id << " in send_update_chat_message_sender"; + send_closure( + G()->td(), &Td::send_update, + td_api::make_object(d->dialog_id.get(), get_default_message_sender_object(d))); } void MessagesManager::send_update_chat_message_ttl_setting(const Dialog *d) { @@ -30998,7 +31000,7 @@ void MessagesManager::on_update_dialog_default_send_message_as_dialog_id(DialogI LOG(INFO) << "Set message sender in " << dialog_id << " to " << default_send_as_dialog_id; d->need_drop_default_send_message_as_dialog_id = false; d->default_send_message_as_dialog_id = default_send_as_dialog_id; - send_update_chat_default_message_sender_id(d); + send_update_chat_message_sender(d); } else { LOG(INFO) << "Postpone removal of message sender in " << dialog_id; d->need_drop_default_send_message_as_dialog_id = true; @@ -35099,7 +35101,7 @@ void MessagesManager::fix_new_dialog(Dialog *d, unique_ptr &&last_datab LOG(INFO) << "Set postponed message sender in " << pending_dialog_id << " to " << dialog_id; pending_d->need_drop_default_send_message_as_dialog_id = pending_dialog_id.second; pending_d->default_send_message_as_dialog_id = dialog_id; - send_update_chat_default_message_sender_id(pending_d); + send_update_chat_message_sender(pending_d); } } } @@ -35214,7 +35216,7 @@ void MessagesManager::fix_new_dialog(Dialog *d, unique_ptr &&last_datab LOG(INFO) << "Set message sender in " << dialog_id << " to " << default_send_message_as_dialog_id; d->need_drop_default_send_message_as_dialog_id = need_drop_default_send_message_as_dialog_id; d->default_send_message_as_dialog_id = default_send_message_as_dialog_id; - send_update_chat_default_message_sender_id(d); + send_update_chat_message_sender(d); } } diff --git a/td/telegram/MessagesManager.h b/td/telegram/MessagesManager.h index 3080d4376..3f97da7e9 100644 --- a/td/telegram/MessagesManager.h +++ b/td/telegram/MessagesManager.h @@ -2398,7 +2398,7 @@ class MessagesManager final : public Actor { void send_update_chat_video_chat(const Dialog *d); - void send_update_chat_default_message_sender_id(const Dialog *d); + void send_update_chat_message_sender(const Dialog *d); void send_update_chat_message_ttl_setting(const Dialog *d); @@ -2599,7 +2599,7 @@ class MessagesManager final : public Actor { td_api::object_ptr get_video_chat_object(const Dialog *d) const; - td_api::object_ptr get_default_sender_id_object(const Dialog *d) const; + td_api::object_ptr get_default_message_sender_object(const Dialog *d) const; td_api::object_ptr get_chat_object(const Dialog *d) const; diff --git a/td/telegram/Td.cpp b/td/telegram/Td.cpp index 7066b47c7..5201e1b24 100644 --- a/td/telegram/Td.cpp +++ b/td/telegram/Td.cpp @@ -5298,11 +5298,11 @@ void Td::on_request(uint64 id, const td_api::getChatAvailableMessageSenders &req messages_manager_->get_dialog_send_message_as_dialog_ids(DialogId(request.chat_id_), std::move(promise)); } -void Td::on_request(uint64 id, const td_api::setChatDefaultMessageSender &request) { +void Td::on_request(uint64 id, const td_api::setChatMessageSender &request) { CHECK_IS_USER(); CREATE_OK_REQUEST_PROMISE(); TRY_RESULT_PROMISE(promise, message_sender_dialog_id, - get_message_sender_dialog_id(this, request.default_message_sender_id_, true, false)); + get_message_sender_dialog_id(this, request.message_sender_id_, true, false)); messages_manager_->set_dialog_default_send_message_as_dialog_id(DialogId(request.chat_id_), message_sender_dialog_id, std::move(promise)); } diff --git a/td/telegram/Td.h b/td/telegram/Td.h index 2010b66b0..c19d40f1d 100644 --- a/td/telegram/Td.h +++ b/td/telegram/Td.h @@ -661,7 +661,7 @@ class Td final : public Actor { void on_request(uint64 id, const td_api::getChatAvailableMessageSenders &request); - void on_request(uint64 id, const td_api::setChatDefaultMessageSender &request); + void on_request(uint64 id, const td_api::setChatMessageSender &request); void on_request(uint64 id, td_api::sendMessage &request); diff --git a/td/telegram/cli.cpp b/td/telegram/cli.cpp index a2a5a89bc..b32dd4ce6 100644 --- a/td/telegram/cli.cpp +++ b/td/telegram/cli.cpp @@ -3261,12 +3261,12 @@ class CliClient final : public Actor { message_thread_id_ = std::move(args); } else if (op == "gcams") { send_request(td_api::make_object(as_chat_id(args))); - } else if (op == "scdms") { + } else if (op == "scmsr") { string chat_id; string sender_id; get_args(args, chat_id, sender_id); send_request( - td_api::make_object(as_chat_id(chat_id), as_message_sender(sender_id))); + td_api::make_object(as_chat_id(chat_id), as_message_sender(sender_id))); } else if (op == "sm" || op == "sms" || op == "smr" || op == "smf") { string chat_id; string reply_to_message_id;