From 5303570c7660ddd33d73de88205c0f5525174322 Mon Sep 17 00:00:00 2001 From: levlam Date: Mon, 29 Jul 2024 21:48:36 +0300 Subject: [PATCH] Add starSubscription.can_reuse. --- td/generate/scheme/td_api.tl | 5 +++-- td/telegram/StarSubscription.cpp | 5 +++-- td/telegram/StarSubscription.h | 1 + 3 files changed, 7 insertions(+), 4 deletions(-) diff --git a/td/generate/scheme/td_api.tl b/td/generate/scheme/td_api.tl index 88f16ee55..94ef06dc6 100644 --- a/td/generate/scheme/td_api.tl +++ b/td/generate/scheme/td_api.tl @@ -807,9 +807,10 @@ starSubscriptionPricing period:int32 star_count:int53 = StarSubscriptionPricing; //@id Unique identifier of the subscription //@chat_id Identifier of the channel chat that is subscribed //@expiration_date Point in time (Unix timestamp) when the subscription will expire or expired +//@can_reuse True, if the subscription is active and the user can use the method reuseStarSubscription to join the subscribed chat again //@is_canceled True, if the subscription was canceled //@pricing The subscription plan -starSubscription id:string chat_id:int53 expiration_date:int32 is_canceled:Bool pricing:starSubscriptionPricing = StarSubscription; +starSubscription id:string chat_id:int53 expiration_date:int32 can_reuse:Bool is_canceled:Bool pricing:starSubscriptionPricing = StarSubscription; //@description Represents a list of Telegram Star subscriptions //@star_count The amount of owned Telegram Stars @@ -1262,7 +1263,7 @@ inviteLinkChatTypeChannel = InviteLinkChatType; //@description Contains information about subscription plan that must be paid by the user to use a chat invite link //@pricing Information about subscription plan that must be paid by the user to use the link -//@can_reuse True, if the user has already paid for the subscription and can use the link to join the subscribed chat again +//@can_reuse True, if the user has already paid for the subscription and can use joinChatByInviteLink to join the subscribed chat again //@form_id Identifier of the payment form to use for subscription payment; 0 if the subscription can't be paid chatInviteLinkSubscriptionInfo pricing:starSubscriptionPricing can_reuse:Bool form_id:int64 = ChatInviteLinkSubscriptionInfo; diff --git a/td/telegram/StarSubscription.cpp b/td/telegram/StarSubscription.cpp index dd4770798..750c36079 100644 --- a/td/telegram/StarSubscription.cpp +++ b/td/telegram/StarSubscription.cpp @@ -15,6 +15,7 @@ StarSubscription::StarSubscription(telegram_api::object_ptrid_)) , dialog_id_(subscription->peer_) , until_date_(subscription->until_date_) + , can_reuse_(subscription->can_refulfill_) , is_canceled_(subscription->canceled_) , pricing_(std::move(subscription->pricing_)) { } @@ -22,8 +23,8 @@ StarSubscription::StarSubscription(telegram_api::object_ptr StarSubscription::get_star_subscription_object(Td *td) const { td->dialog_manager_->force_create_dialog(dialog_id_, "starSubscription", true); return td_api::make_object( - id_, td->dialog_manager_->get_chat_id_object(dialog_id_, "starSubscription"), until_date_, is_canceled_, - pricing_.get_star_subscription_pricing_object()); + id_, td->dialog_manager_->get_chat_id_object(dialog_id_, "starSubscription"), until_date_, can_reuse_, + is_canceled_, pricing_.get_star_subscription_pricing_object()); } StringBuilder &operator<<(StringBuilder &string_builder, const StarSubscription &subscription) { diff --git a/td/telegram/StarSubscription.h b/td/telegram/StarSubscription.h index 1632e5afe..80c8520f4 100644 --- a/td/telegram/StarSubscription.h +++ b/td/telegram/StarSubscription.h @@ -22,6 +22,7 @@ class StarSubscription { string id_; DialogId dialog_id_; int32 until_date_ = 0; + bool can_reuse_ = false; bool is_canceled_ = false; StarSubscriptionPricing pricing_;