diff options
| author | levlam <levlam@telegram.org> | 2026-07-03 22:18:02 +0300 |
|---|---|---|
| committer | levlam <levlam@telegram.org> | 2026-07-03 22:18:02 +0300 |
| commit | 643f0ffdea033914dfebbb1211294059ef905605 (patch) | |
| tree | 72125fd1182c99ad789a862f4c2fd10a3dd642d7 | |
| parent | 868f71c068b24946ee2b8d139d437666eb7cab9c (diff) | |
Add Client::get_page_block_caption.
| -rw-r--r-- | telegram-bot-api/Client.cpp | 15 | ||||
| -rw-r--r-- | telegram-bot-api/Client.h | 2 |
2 files changed, 17 insertions, 0 deletions
diff --git a/telegram-bot-api/Client.cpp b/telegram-bot-api/Client.cpp index 965c437..11e22b1 100644 --- a/telegram-bot-api/Client.cpp +++ b/telegram-bot-api/Client.cpp @@ -11981,6 +11981,21 @@ td::Result<td_api::object_ptr<td_api::inputMessageText>> Client::get_input_messa return make_object<td_api::inputMessageText>(std::move(formatted_text), std::move(link_preview_options), false); } +td::Result<td_api::object_ptr<td_api::pageBlockCaption>> Client::get_page_block_caption(td::JsonValue &&value) { + switch (value.type()) { + case td::JsonValue::Type::Null: + return nullptr; + case td::JsonValue::Type::Object: { + auto &object = value.get_object(); + TRY_RESULT(text, get_rich_text(object.extract_field("text"))); + TRY_RESULT(credit, get_rich_text(object.extract_field("credit"))); + return make_object<td_api::pageBlockCaption>(std::move(text), std::move(credit)); + } + default: + return td::Status::Error(400, "RichBlockCaption must be an object"); + } +} + td::Result<td_api::object_ptr<td_api::RichText>> Client::get_rich_text(td::JsonValue &&value) { switch (value.type()) { case td::JsonValue::Type::Null: diff --git a/telegram-bot-api/Client.h b/telegram-bot-api/Client.h index c5bdf03..7a896a3 100644 --- a/telegram-bot-api/Client.h +++ b/telegram-bot-api/Client.h @@ -664,6 +664,8 @@ class Client final : public WebhookActor::Callback { td::string text, object_ptr<td_api::linkPreviewOptions> link_preview_options, td::string parse_mode, td::JsonValue &&input_entities); + static td::Result<object_ptr<td_api::pageBlockCaption>> get_page_block_caption(td::JsonValue &&value); + static td::Result<object_ptr<td_api::RichText>> get_rich_text(td::JsonValue &&value); td::Result<object_ptr<td_api::inputRichMessage>> get_input_rich_message(const Query *query) const; |
