From 4038b1ab55644df27f53112d63cabcea4f28e7c9 Mon Sep 17 00:00:00 2001 From: levlam Date: Thu, 2 Apr 2026 17:54:09 +0300 Subject: [PATCH] Add "managed_bot" updates. --- telegram-bot-api/Client.cpp | 27 +++++++++++++++++++++++++++ telegram-bot-api/Client.h | 4 ++++ 2 files changed, 31 insertions(+) diff --git a/telegram-bot-api/Client.cpp b/telegram-bot-api/Client.cpp index f35f0e4..f93a411 100644 --- a/telegram-bot-api/Client.cpp +++ b/telegram-bot-api/Client.cpp @@ -3444,6 +3444,22 @@ class Client::JsonManagedBotCreated final : public td::Jsonable { const Client *client_; }; +class Client::JsonManagedBotUpdated final : public td::Jsonable { + public: + JsonManagedBotUpdated(const td_api::updateManagedBot *update_managed_bot, const Client *client) + : update_managed_bot_(update_managed_bot), client_(client) { + } + void store(td::JsonValueScope *scope) const { + auto object = scope->enter_object(); + object("user", JsonUser(update_managed_bot_->user_id_, client_)); + object("bot", JsonUser(update_managed_bot_->bot_user_id_, client_)); + } + + private: + const td_api::updateManagedBot *update_managed_bot_; + const Client *client_; +}; + class Client::JsonGiveawayCreated final : public td::Jsonable { public: explicit JsonGiveawayCreated(const td_api::messageGiveawayCreated *giveaway_created) @@ -9119,6 +9135,9 @@ void Client::on_update(object_ptr result) { case td_api::updatePaidMediaPurchased::ID: add_update_purchased_paid_media(move_object_as(result)); break; + case td_api::updateManagedBot::ID: + add_update_managed_bot(move_object_as(result)); + break; case td_api::updateNewCustomEvent::ID: add_new_custom_event(move_object_as(result)); break; @@ -16449,6 +16468,8 @@ td::Slice Client::get_update_type_name(UpdateType update_type) { return td::Slice("deleted_business_messages"); case UpdateType::PurchasedPaidMedia: return td::Slice("purchased_paid_media"); + case UpdateType::ManagedBot: + return td::Slice("managed_bot"); default: UNREACHABLE(); return td::Slice(); @@ -16778,6 +16799,12 @@ void Client::add_update_purchased_paid_media(object_ptruser_id_ + (static_cast(12) << 33)); } +void Client::add_update_managed_bot(object_ptr &&query) { + CHECK(query != nullptr); + add_update(UpdateType::ManagedBot, JsonManagedBotUpdated(query.get(), this), 86400, + query->user_id_ + (static_cast(13) << 33)); +} + void Client::add_new_custom_event(object_ptr &&event) { CHECK(event != nullptr); add_update(UpdateType::CustomEvent, JsonCustomJson(event->event_), 600, 0); diff --git a/telegram-bot-api/Client.h b/telegram-bot-api/Client.h index fb4e179..b4ce795 100644 --- a/telegram-bot-api/Client.h +++ b/telegram-bot-api/Client.h @@ -230,6 +230,7 @@ class Client final : public WebhookActor::Callback { class JsonUsersShared; class JsonChatShared; class JsonManagedBotCreated; + class JsonManagedBotUpdated; class JsonGiveawayCreated; class JsonGiveaway; class JsonGiveawayWinners; @@ -1313,6 +1314,8 @@ class Client final : public WebhookActor::Callback { void add_update_purchased_paid_media(object_ptr &&query); + void add_update_managed_bot(object_ptr &&query); + void add_new_custom_event(object_ptr &&event); void add_new_custom_query(object_ptr &&query); @@ -1358,6 +1361,7 @@ class Client final : public WebhookActor::Callback { EditedBusinessMessage, BusinessMessagesDeleted, PurchasedPaidMedia, + ManagedBot, Size };