From 88748a50f394aac64a07e348f9fd27186de273d2 Mon Sep 17 00:00:00 2001 From: levlam Date: Mon, 31 Oct 2022 19:16:14 +0300 Subject: [PATCH] Add deleteForumTopic method. --- telegram-bot-api/Client.cpp | 13 +++++++++++++ telegram-bot-api/Client.h | 1 + 2 files changed, 14 insertions(+) diff --git a/telegram-bot-api/Client.cpp b/telegram-bot-api/Client.cpp index a8d90d9..db4f63d 100644 --- a/telegram-bot-api/Client.cpp +++ b/telegram-bot-api/Client.cpp @@ -258,6 +258,7 @@ bool Client::init_methods() { methods_.emplace("editforumtopic", &Client::process_edit_forum_topic_query); methods_.emplace("closeforumtopic", &Client::process_close_forum_topic_query); methods_.emplace("reopenforumtopic", &Client::process_reopen_forum_topic_query); + methods_.emplace("deleteforumtopic", &Client::process_delete_forum_topic_query); methods_.emplace("getchatmember", &Client::process_get_chat_member_query); methods_.emplace("getchatadministrators", &Client::process_get_chat_administrators_query); methods_.emplace("getchatmembercount", &Client::process_get_chat_member_count_query); @@ -8206,6 +8207,18 @@ td::Status Client::process_reopen_forum_topic_query(PromisedQueryPtr &query) { return Status::OK(); } +td::Status Client::process_delete_forum_topic_query(PromisedQueryPtr &query) { + auto chat_id = query->arg("chat_id"); + auto message_thread_id = get_message_id(query.get(), "message_thread_id"); + + check_chat(chat_id, AccessRights::Write, std::move(query), + [this, message_thread_id](int64 chat_id, PromisedQueryPtr query) { + send_request(make_object(chat_id, message_thread_id), + td::make_unique(std::move(query))); + }); + return Status::OK(); +} + td::Status Client::process_get_chat_member_query(PromisedQueryPtr &query) { auto chat_id = query->arg("chat_id"); TRY_RESULT(user_id, get_user_id(query.get())); diff --git a/telegram-bot-api/Client.h b/telegram-bot-api/Client.h index 2a44c54..e283a69 100644 --- a/telegram-bot-api/Client.h +++ b/telegram-bot-api/Client.h @@ -543,6 +543,7 @@ class Client final : public WebhookActor::Callback { Status process_edit_forum_topic_query(PromisedQueryPtr &query); Status process_close_forum_topic_query(PromisedQueryPtr &query); Status process_reopen_forum_topic_query(PromisedQueryPtr &query); + Status process_delete_forum_topic_query(PromisedQueryPtr &query); Status process_get_chat_member_query(PromisedQueryPtr &query); Status process_get_chat_administrators_query(PromisedQueryPtr &query); Status process_get_chat_member_count_query(PromisedQueryPtr &query);