From aa7f5c8e2c83db0b9aca1640b10608d66e1cfd37 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 19 Oct 2023 20:47:07 +0000 Subject: [PATCH] Update content of files --- .../corefork.telegram.org/api/action-bar.html | 188 ++++++++ .../web/corefork.telegram.org/api/config.html | 14 +- .../corefork.telegram.org/api/contacts.html | 238 ++++++++++ .../web/corefork.telegram.org/api/layers.html | 8 +- .../corefork.telegram.org/api/privacy.html | 192 ++++++++ .../corefork.telegram.org/api/stories.html | 131 +++++- data/web/corefork.telegram.org/api/story.html | 118 +++++ .../corefork.telegram.org/api/takeout.html | 156 +++++++ .../corefork.telegram.org/api/top-rating.html | 14 +- .../botInlineMessageMediaVenue.html | 2 +- .../decryptedMessageMediaVenue.html | 2 +- .../inputBotInlineMessageMediaVenue.html | 2 +- .../constructor/inputMediaVenue.html | 2 +- .../constructor/mediaAreaCoordinates.html | 57 +-- .../constructor/mediaAreaGeoPoint.html | 33 +- .../mediaAreaSuggestedReaction.html | 46 +- .../constructor/mediaAreaVenue.html | 53 +-- .../constructor/message.html | 2 +- .../constructor/messageMediaVenue.html | 2 +- .../constructor/storyItem.html | 39 +- .../method/contacts.addContact | 2 +- .../inputReportReasonGeoIrrelevant.html | 118 +++++ .../method/stories.editStory | 4 +- .../method/stories.sendStory | 12 +- .../mtproto/samples-auth_key.html | 410 +++++++++--------- .../type/InputPrivacyKey.html | 3 +- .../type/InputPrivacyRule.html | 3 +- .../corefork.telegram.org/type/MediaArea.html | 20 +- .../type/MediaAreaCoordinates.html | 17 +- .../type/PrivacyKey.html | 3 +- .../type/PrivacyRule.html | 3 +- data/web/fragment.com/css/auction.css | 237 +++++++++- data/web/fragment.com/js/auction.js | 346 ++++++++++++++- 33 files changed, 2020 insertions(+), 457 deletions(-) create mode 100644 data/web/corefork.telegram.org/api/action-bar.html create mode 100644 data/web/corefork.telegram.org/api/contacts.html create mode 100644 data/web/corefork.telegram.org/api/privacy.html create mode 100644 data/web/corefork.telegram.org/api/story.html create mode 100644 data/web/corefork.telegram.org/api/takeout.html create mode 100644 data/web/corefork.telegram.org/method/inputReportReasonGeoIrrelevant.html diff --git a/data/web/corefork.telegram.org/api/action-bar.html b/data/web/corefork.telegram.org/api/action-bar.html new file mode 100644 index 0000000000..6977d98184 --- /dev/null +++ b/data/web/corefork.telegram.org/api/action-bar.html @@ -0,0 +1,188 @@ + + + + + Action-bar + + + + + + + + + + + + + + + + +
+ +
+
+
+ +

Action-bar

+ +
+ +

Sometimes, when interacting with Telegram users via private or secret chats, an action bar must be shown on top of the chat, offering convenient action buttons or notices regarding the user.

+

Schema:

+
peerSettings#a518110d flags:# report_spam:flags.0?true add_contact:flags.1?true block_contact:flags.2?true share_contact:flags.3?true need_contacts_exception:flags.4?true report_geo:flags.5?true autoarchived:flags.7?true invite_members:flags.8?true request_chat_broadcast:flags.10?true geo_distance:flags.6?int request_chat_title:flags.9?string request_chat_date:flags.9?int = PeerSettings;
+
+userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+
+updatePeerSettings#6a7e7366 peer:Peer settings:PeerSettings = Update;
+
+messages.peerSettings#6880b94d settings:PeerSettings chats:Vector<Chat> users:Vector<User> = messages.PeerSettings;
+
+---functions---
+
+messages.getPeerSettings#efd9a6a2 peer:InputPeer = messages.PeerSettings;
+

The action bar is represented by the peerSettings constructor, fetchable using messages.getPeerSettings; it is also contained in the userFull constructor returned by users.getFullUser.

+

Changes to the chat bar may also be notified by the server using updatePeerSettings.

+

What follows is a list of the various (mutually exclusive) chat bar types, along with the condition used to identify each type, by checking the appropriate flags of peerSettings.

+

Report spam or unarchive

+
inputReportReasonSpam#58dbcab8 = ReportReason;
+
+---functions---
+
+account.reportPeer#c5ba3d86 peer:InputPeer reason:ReportReason message:string = Bool;
+

This action bar, associated to a private or secret chat, offers the user a button to report the chat for spam using account.reportPeer and inputReportReasonSpam.

+

Condition: the peerSettings.report_spam flag must be set.

+

Additionally, if the chat was automatically archived », an extra button can be shown to unarchive the chat as specified here » instead of reporting it.

+

Report spam, block or add contact

+

Add contact

+

Schema:

+
contacts.addContact#e8f463d0 flags:# add_phone_privacy_exception:flags.0?true id:InputUser first_name:string last_name:string phone:string = Updates;
+

This action bar, associated to a private or secret chat, offers the user a button to share their phone number with the other user using contacts.acceptContact.

+

Conditions:

+
    +
  • For secret chats, the peerSettings.add_contact flag must be set and the chat must not be archived.
  • +
  • For private chats, the peerSettings.add_contact flag must be set, and the block_contact and report_spam flags must not be set.
  • +
+

Optionally, the peerSettings.need_contacts_exception flag may also be set: if so, the add_phone_privacy_exception flag must be set if the user clicks on the add contact button, invoking contacts.acceptContact.

+

Share phone number

+

Schema:

+
contacts.acceptContact#f831a20f id:InputUser = Updates;
+

This action bar, associated to a private or secret chat, offers the user a button to share their phone number with the other user using contacts.acceptContact.

+

Condition: the peerSettings.share_contact flag must be set.

+

Report irrelevant geolocation

+
inputReportReasonGeoIrrelevant#dbd4feed = ReportReason;
+
+---functions---
+
+account.reportPeer#c5ba3d86 peer:InputPeer reason:ReportReason message:string = Bool;
+

This bar indicates that the associated location-based supergroup can be reported for having an unrelated location using a bar button that invokes account.reportPeer with reason inputReportReasonGeoIrrelevant.

+

Condition: the peerSettings.report_geo flag must be set.

+

Invite new members

+

Schema:

+
---functions---
+
+messages.addChatUser#f24753e3 chat_id:long user_id:InputUser fwd_limit:int = Updates;
+
+channels.inviteToChannel#199f3a6c channel:InputChannel users:Vector<InputUser> = Updates;
+

This bar indicates that the associated group was created recently, and it offers a bar button to invite new members using messages.addChatUser or channels.inviteToChannel, depending on whether the associated peer is a group or a supergroup.

+

Condition: the peerSettings.invite_members flag must be set.

+

An admin from a recent join request is contacting you

+

This bar indicates that the associated private or secret chat is a chat with an administrator of a group or channel to which the user sent a join request, see here for more info on join requests ».

+

Condition: the request_chat_title and request_chat_date fields of peerSettings must both be set; optionally request_chat_broadcast may also be set:

+
    +
  • request_chat_title - Contains the group/channel's title.
  • +
  • request_chat_date - Contains the timestamp indicating when the join request was sent.
  • +
  • request_chat_broadcast - This flag is set if the join request is related to a channel (otherwise, the join request is related to a group).
  • +
+ +
+ +
+
+ +
+ + + + + + + + diff --git a/data/web/corefork.telegram.org/api/config.html b/data/web/corefork.telegram.org/api/config.html index 690d4e381f..847f8ed96b 100644 --- a/data/web/corefork.telegram.org/api/config.html +++ b/data/web/corefork.telegram.org/api/config.html @@ -284,7 +284,6 @@ While help.getConfig returns MTProto-specif "chatlist_update_period": 300, "small_queue_max_active_operations_count": 5, "large_queue_max_active_operations_count": 2, - "story_expire_period": 86400, "story_viewers_expire_period": 86400, "story_expiring_limit_default": 3, "story_expiring_limit_premium": 100, @@ -461,14 +460,16 @@ Note that the stickerset can be fetched using large_queue_max_active_operations_count

A soft limit, specifying the maximum number of files that should be downloaded in parallel from the same DC, for files bigger than 20MB. (integer)

authorization_autoconfirm_period

-

story_expire_period

story_viewers_expire_period

+

The exact list of users that viewed the story will be hidden from the poster this many seconds after the story expires. (integer)

+

This limit applies only to non-Premium users, Premium users can always access the viewer list.

story_expiring_limit_default

+

The maximum number of active stories

story_expiring_limit_premium

story_caption_length_limit_premium

-

The maximum UTF-8 length of story captions for Premium users (integer)

+

The maximum UTF-8 length of story captions for Premium users. (integer)

story_caption_length_limit_default

-

The maximum UTF-8 length of story captions for non-Premium users (integer)

+

The maximum UTF-8 length of story captions for non-Premium users. (integer)

stories_posting

Indicates whether users can post stories. (string)

One of:

@@ -484,10 +485,15 @@ Note that the stickerset can be fetched using stories_stealth_cooldown_period

After enabling stories stealth mode, this many seconds must elapse before the user is allowed to enable it again. (integer)

stories_sent_weekly_limit_default

+

Maximum number of stories that can be sent in a week by non-Premium users. (integer)

stories_sent_weekly_limit_premium

+

Maximum number of stories that can be sent in a week by Premium users. (integer)

stories_sent_monthly_limit_default

+

Maximum number of stories that can be sent in a month by non-Premium users. (integer)

stories_sent_monthly_limit_premium

+

Maximum number of stories that can be sent in a month by Premium users. (integer)

stories_venue_search_username

+

Username of the inline bot to use to generate venue location tags for stories, see here » for more info. (string)

stories_all_hidden

stories_entities

stories_export_nopublic_link

diff --git a/data/web/corefork.telegram.org/api/contacts.html b/data/web/corefork.telegram.org/api/contacts.html new file mode 100644 index 0000000000..d8dcc4a94a --- /dev/null +++ b/data/web/corefork.telegram.org/api/contacts.html @@ -0,0 +1,238 @@ + + + + + Contacts + + + + + + + + + + + + + + + + +
+ +
+
+
+ +

Contacts

+ +
+ +

Working with contacts.

+

Importing phone contacts

+

Schema:

+
inputPhoneContact#f392b7f4 client_id:long phone:string first_name:string last_name:string = InputContact;
+
+importedContact#c13e3c50 user_id:long client_id:long = ImportedContact;
+popularContact#5ce14175 client_id:long importers:int = PopularContact;
+
+contacts.importedContacts#77d01c3b imported:Vector<ImportedContact> popular_invites:Vector<PopularContact> retry_contacts:Vector<long> users:Vector<User> = contacts.ImportedContacts;
+
+---functions---
+
+contacts.importContacts#2c800be5 contacts:Vector<InputContact> = contacts.ImportedContacts;
+

To upload the local contact list to Telegram and see which contacts are already signed up on telegram, use contacts.importContacts, passing an array of inputPhoneContact constructors, containing:

+
    +
  • phone - The phone number in international format
  • +
  • first_name - First name
  • +
  • last_name - Last name, can be empty
  • +
  • client_id - An arbitrary 64-bit integer (not the contact's Telegram user ID, since we do not have it yet); make sure there are no collisions between the client_ids passed to a single contacts.importContacts call (for example, use a simple incremental ID starting from 0)
  • +
+

The method will return a contacts.importedContacts constructor, containing the following fields:

+
    +
  • imported - A list of successfully imported contacts that have an associated Telegram account as importedContact constructors.
    +user_id is the Telegram user ID, client_id is the client_id associated to the contact, passed during the method call. +Note that according to the user's privacy settings, not all contacts which have an associated Telegram account may be returned here.
  • +
  • users - Contains info about the Telegram users mentioned in imported
  • +
  • popular_invites - Contains info about popular contacts: each popularContact constructor indicates that the contact with the specified client_id was imported imported times by that many Telegram users.
  • +
  • retry_contacts - List of contact ids that could not be imported due to a server-side system limitation and have to be reimported with another call to contacts.importedContacts.
  • +
+

Adding Telegram users as contacts

+

Schema:

+
users.userFull#3b6d152e full_user:UserFull chats:Vector<Chat> users:Vector<User> = users.UserFull;
+
+inputUser#f21158c6 user_id:long access_hash:long = InputUser;
+
+user#abb5f120 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int = User;
+
+peerSettings#a518110d flags:# report_spam:flags.0?true add_contact:flags.1?true block_contact:flags.2?true share_contact:flags.3?true need_contacts_exception:flags.4?true report_geo:flags.5?true autoarchived:flags.7?true invite_members:flags.8?true request_chat_broadcast:flags.10?true geo_distance:flags.6?int request_chat_title:flags.9?string request_chat_date:flags.9?int = PeerSettings;
+
+userFull#b9b12c6c flags:# blocked:flags.0?true phone_calls_available:flags.4?true phone_calls_private:flags.5?true can_pin_message:flags.7?true has_scheduled:flags.12?true video_calls_available:flags.13?true voice_messages_forbidden:flags.20?true translations_disabled:flags.23?true stories_pinned_available:flags.26?true blocked_my_stories_from:flags.27?true id:long about:flags.1?string settings:PeerSettings personal_photo:flags.21?Photo profile_photo:flags.2?Photo fallback_photo:flags.22?Photo notify_settings:PeerNotifySettings bot_info:flags.3?BotInfo pinned_msg_id:flags.6?int common_chats_count:int folder_id:flags.11?int ttl_period:flags.14?int theme_emoticon:flags.15?string private_forward_name:flags.16?string bot_group_admin_rights:flags.17?ChatAdminRights bot_broadcast_admin_rights:flags.18?ChatAdminRights premium_gifts:flags.19?Vector<PremiumGiftOption> wallpaper:flags.24?WallPaper stories:flags.25?PeerStories = UserFull;
+
+updatePeerSettings#6a7e7366 peer:Peer settings:PeerSettings = Update;
+
+---functions---
+
+users.getFullUser#b60f5918 id:InputUser = users.UserFull;
+
+contacts.addContact#e8f463d0 flags:# add_phone_privacy_exception:flags.0?true id:InputUser first_name:string last_name:string phone:string = Updates;
+contacts.acceptContact#f831a20f id:InputUser = Updates;
+

Telegram users may also be added to the contact list (even if we do not have access to their phone number!) using contacts.addContact.

+

Set the add_phone_privacy_exception flag if we wish to allow the other user to see our phone number: this flag must be set if the need_contacts_exception flag of [peerSettings] is set (see the action bar documentation »).

+

Fetching the contact list

+

Schema:

+
contact#145ade0b user_id:long mutual:Bool = Contact;
+
+user#abb5f120 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int = User;
+
+contacts.contacts#eae87e42 contacts:Vector<Contact> saved_count:int users:Vector<User> = contacts.Contacts;
+contacts.contactsNotModified#b74ba9d2 = contacts.Contacts;
+
+savedPhoneContact#1142bd56 phone:string first_name:string last_name:string date:int = SavedContact;
+
+---functions---
+
+contacts.getContacts#5dd69e12 hash:long = contacts.Contacts;
+
+contacts.getSaved#82f1e39f = Vector<SavedContact>;
+

Use contacts.getContacts to obtain all members of the contact list that have an associated Telegram account.

+

To obtain the full contact list, including contacts which do not have an associated Telegram account, use contacts.getSaved in combination with a takeout session ».

+

Getting contact statuses

+

Schema:

+
userStatusEmpty#9d05049 = UserStatus;
+userStatusOnline#edb93949 expires:int = UserStatus;
+userStatusOffline#8c703f was_online:int = UserStatus;
+userStatusRecently#e26f42f1 = UserStatus;
+userStatusLastWeek#7bf09fc = UserStatus;
+userStatusLastMonth#77ebc742 = UserStatus;
+
+contactStatus#16d9703b user_id:long status:UserStatus = ContactStatus;
+
+---functions---
+
+contacts.getStatuses#c4a353ee = Vector<ContactStatus>;
+

Use contacts.getStatuses to obtain the online statuses of all contacts with a phone number.

+

Searching for contacts

+

Schema:

+
contacts.found#b3134d9d my_results:Vector<Peer> results:Vector<Peer> chats:Vector<Chat> users:Vector<User> = contacts.Found;
+
+---functions---
+
+contacts.search#11f812d8 q:string limit:int = contacts.Found;
+

Deleting contacts

+

Schema:

+
---functions---
+
+contacts.deleteContacts#96a0e00 id:Vector<InputUser> = Updates;
+
+contacts.deleteByPhones#1013fd9e phones:Vector<string> = Bool;
+

Use contacts.deleteContacts to delete contacts with an associated Telegram account; the returned Updates will contain updated user information.

+

Use contacts.deleteByPhones to delete contacts by their phone number, even if they don't have an associated Telegram account.

+

Blocking users

+
contacts.block#2e2e8734 flags:# my_stories_from:flags.0?true id:InputPeer = Bool;
+contacts.unblock#b550d328 flags:# my_stories_from:flags.0?true id:InputPeer = Bool;
+contacts.setBlocked#94c65c76 flags:# my_stories_from:flags.0?true id:Vector<InputPeer> limit:int = Bool;
+contacts.getBlocked#9a868f80 flags:# my_stories_from:flags.0?true offset:int limit:int = contacts.Blocked;
+

+
contacts.getContactIDs#7adc669d hash:long = Vector<int>;
+contacts.resetSaved#879537f1 = Bool;
+contacts.getLocated#d348bc44 flags:# background:flags.1?true geo_point:InputGeoPoint self_expires:flags.0?int = Updates;
+contacts.blockFromReplies#29a8962c flags:# delete_message:flags.0?true delete_history:flags.1?true report_spam:flags.2?true msg_id:int = Updates;
+ +
+ +
+
+ +
+ + + + + + + + diff --git a/data/web/corefork.telegram.org/api/layers.html b/data/web/corefork.telegram.org/api/layers.html index b124d0dd71..cc016e8acc 100644 --- a/data/web/corefork.telegram.org/api/layers.html +++ b/data/web/corefork.telegram.org/api/layers.html @@ -99,12 +99,12 @@
  • Added updateNewAuthorization - Authorized to the current user's account through an unknown device.
  • Added storiesStealthMode - Information about the current stealth mode session.
  • Added updateStoriesStealthMode - Indicates that stories stealth mode was activated.
  • -
  • Added mediaAreaCoordinates -
  • -
  • Added mediaAreaVenue -
  • +
  • Added mediaAreaCoordinates - Coordinates and size of a clicable rectangular area on top of a story.
  • +
  • Added mediaAreaVenue - Represents a location tag attached to a story, with additional venue information.
  • Added inputMediaAreaVenue -
  • -
  • Added mediaAreaGeoPoint -
  • +
  • Added mediaAreaGeoPoint - Represents a geolocation tag attached to a story.
  • Added updateSentStoryReaction -
  • -
  • Added mediaAreaSuggestedReaction -
  • +
  • Added mediaAreaSuggestedReaction - Represents a reaction bubble.
  • Added peerStories -
  • Added stories.peerStories -
  • Added stories.boostsStatus - The current boost status » of a channel.
  • diff --git a/data/web/corefork.telegram.org/api/privacy.html b/data/web/corefork.telegram.org/api/privacy.html new file mode 100644 index 0000000000..131504dccb --- /dev/null +++ b/data/web/corefork.telegram.org/api/privacy.html @@ -0,0 +1,192 @@ + + + + + Privacy + + + + + + + + + + + + + + + + +
    + +
    +
    +
    + +

    Privacy

    + +
    + +

    Telegram allows users to specify granular privacy settings, choosing which users can or can't interact with them in certain ways.

    +

    Privacy rules

    +

    Schema:

    +
    inputPrivacyValueAllowContacts#d09e07b = InputPrivacyRule;
    +inputPrivacyValueAllowAll#184b35ce = InputPrivacyRule;
    +inputPrivacyValueAllowUsers#131cc67f users:Vector<InputUser> = InputPrivacyRule;
    +inputPrivacyValueDisallowContacts#ba52007 = InputPrivacyRule;
    +inputPrivacyValueDisallowAll#d66b66c9 = InputPrivacyRule;
    +inputPrivacyValueDisallowUsers#90110467 users:Vector<InputUser> = InputPrivacyRule;
    +inputPrivacyValueAllowChatParticipants#840649cf chats:Vector<long> = InputPrivacyRule;
    +inputPrivacyValueDisallowChatParticipants#e94f0f86 chats:Vector<long> = InputPrivacyRule;
    +inputPrivacyValueAllowCloseFriends#2f453e49 = InputPrivacyRule;
    +
    +privacyValueAllowContacts#fffe1bac = PrivacyRule;
    +privacyValueAllowAll#65427b82 = PrivacyRule;
    +privacyValueAllowUsers#b8905fb2 users:Vector<long> = PrivacyRule;
    +privacyValueDisallowContacts#f888fa1a = PrivacyRule;
    +privacyValueDisallowAll#8b73e763 = PrivacyRule;
    +privacyValueDisallowUsers#e4621141 users:Vector<long> = PrivacyRule;
    +privacyValueAllowChatParticipants#6b134e8e chats:Vector<long> = PrivacyRule;
    +privacyValueDisallowChatParticipants#41c87565 chats:Vector<long> = PrivacyRule;
    +privacyValueAllowCloseFriends#f7e8d89b = PrivacyRule;
    +
    +user#abb5f120 flags:# self:flags.10?true contact:flags.11?true mutual_contact:flags.12?true deleted:flags.13?true bot:flags.14?true bot_chat_history:flags.15?true bot_nochats:flags.16?true verified:flags.17?true restricted:flags.18?true min:flags.20?true bot_inline_geo:flags.21?true support:flags.23?true scam:flags.24?true apply_min_photo:flags.25?true fake:flags.26?true bot_attach_menu:flags.27?true premium:flags.28?true attach_menu_enabled:flags.29?true flags2:# bot_can_edit:flags2.1?true close_friend:flags2.2?true stories_hidden:flags2.3?true stories_unavailable:flags2.4?true id:long access_hash:flags.0?long first_name:flags.1?string last_name:flags.2?string username:flags.3?string phone:flags.4?string photo:flags.5?UserProfilePhoto status:flags.6?UserStatus bot_info_version:flags.14?int restriction_reason:flags.18?Vector<RestrictionReason> bot_inline_placeholder:flags.19?string lang_code:flags.22?string emoji_status:flags.30?EmojiStatus usernames:flags2.0?Vector<Username> stories_max_id:flags2.5?int = User;
    +
    +---functions---
    +
    +contacts.editCloseFriends#ba6705f0 id:Vector<long> = Bool;
    +

    Privacy rules indicate who can or can't do something and are specified by a PrivacyRule, and its input counterpart InputPrivacyRule.
    +InputPrivacyRule constructors are passed as input to methods that accept privacy rules, while PrivacyRules are contained in constructors returned by the API.

    +

    See the type page » for a full list of privacy rules and their descriptions.

    +

    One privacy rule in particular should be mentioned separately, (input)privacyValueAllowCloseFriends: this privacy rule, which can be used only when posting stories, refers exclusively to a list of "close friends", that can be modified using contacts.editCloseFriends, passing the full close friend list as a list of user IDs: note that only users in the contact list (even without a phone number) » can be added to the close friends list.

    +

    The current list of close friends can be checking which users in our contact list have the close_friend flag set in the associated user constructor, see here » for more info on how to fetch the contact list.

    +

    Privacy keys

    +

    Schema:

    +
    inputPrivacyKeyStatusTimestamp#4f96cb18 = InputPrivacyKey;
    +inputPrivacyKeyChatInvite#bdfb0426 = InputPrivacyKey;
    +inputPrivacyKeyPhoneCall#fabadc5f = InputPrivacyKey;
    +inputPrivacyKeyPhoneP2P#db9e70d2 = InputPrivacyKey;
    +inputPrivacyKeyForwards#a4dd4c08 = InputPrivacyKey;
    +inputPrivacyKeyProfilePhoto#5719bacc = InputPrivacyKey;
    +inputPrivacyKeyPhoneNumber#352dafa = InputPrivacyKey;
    +inputPrivacyKeyAddedByPhone#d1219bdd = InputPrivacyKey;
    +inputPrivacyKeyVoiceMessages#aee69d68 = InputPrivacyKey;
    +inputPrivacyKeyAbout#3823cc40 = InputPrivacyKey;
    +
    +privacyKeyStatusTimestamp#bc2eab30 = PrivacyKey;
    +privacyKeyChatInvite#500e6dfa = PrivacyKey;
    +privacyKeyPhoneCall#3d662b7b = PrivacyKey;
    +privacyKeyPhoneP2P#39491cc8 = PrivacyKey;
    +privacyKeyForwards#69ec56a3 = PrivacyKey;
    +privacyKeyProfilePhoto#96151fed = PrivacyKey;
    +privacyKeyPhoneNumber#d19ae46d = PrivacyKey;
    +privacyKeyAddedByPhone#42ffd42b = PrivacyKey;
    +privacyKeyVoiceMessages#697f414 = PrivacyKey;
    +privacyKeyAbout#a486b761 = PrivacyKey;
    +
    +account.privacyRules#50a04e45 rules:Vector<PrivacyRule> chats:Vector<Chat> users:Vector<User> = account.PrivacyRules;
    +
    +updatePrivacy#ee3b272a key:PrivacyKey rules:Vector<PrivacyRule> = Update;
    +
    +---functions---
    +
    +account.getPrivacy#dadbc950 key:InputPrivacyKey = account.PrivacyRules;
    +account.setPrivacy#c9f81ce8 key:InputPrivacyKey rules:Vector<InputPrivacyRule> = account.PrivacyRules;
    +

    Privacy keys together with privacy rules » indicate what can or can't someone do and are specified by a PrivacyKey constructor, and its input counterpart InputPrivacyKey.
    +InputPrivacyKey constructors are passed as input to methods that accept privacy keys, while PrivacyKeys are contained in constructors returned by the API.

    +

    See the type page » for a full list of privacy keys and their descriptions.

    +

    Use account.getPrivacy to obtain the current set of rules associated to a key, and account.setPrivacy to change it.

    +

    Changing the privacy settings will trigger an updatePrivacy, sent to all currently logged in sessions of the current account.

    + +
    + +
    +
    + +
    + + + + + + + + diff --git a/data/web/corefork.telegram.org/api/stories.html b/data/web/corefork.telegram.org/api/stories.html index 608137602d..ac151551e0 100644 --- a/data/web/corefork.telegram.org/api/stories.html +++ b/data/web/corefork.telegram.org/api/stories.html @@ -58,13 +58,126 @@ stories.canSendStory#c7dfdfdd peer:InputPeer = Bool; stories.sendStory#bcb73644 flags:# pinned:flags.2?true noforwards:flags.4?true peer:InputPeer media:InputMedia media_areas:flags.5?Vector<MediaArea> caption:flags.0?string entities:flags.1?Vector<MessageEntity> privacy_rules:Vector<InputPrivacyRule> random_id:long period:flags.3?int = Updates; stories.editStory#b583ba46 flags:# peer:InputPeer id:int media:flags.0?InputMedia media_areas:flags.3?Vector<MediaArea> caption:flags.1?string entities:flags.1?Vector<MessageEntity> privacy_rules:flags.2?Vector<InputPrivacyRule> = Updates; -stories.deleteStories#ae59db5f peer:InputPeer id:Vector<int> = Vector<int>; -

    Before posting a story, clients should invoke stories.canSendStory, to make sure

    + +contacts.getBlocked#9a868f80 flags:# my_stories_from:flags.0?true offset:int limit:int = contacts.Blocked; +contacts.block#2e2e8734 flags:# my_stories_from:flags.0?true id:InputPeer = Bool; +contacts.unblock#b550d328 flags:# my_stories_from:flags.0?true id:InputPeer = Bool; +

    Before posting a story, clients should invoke stories.canSendStory, to make sure they can send stories to the specified peer (which can be inputPeerSelf to send the story as a normal user and inputPeerChannel to send a story as a channel).

    This methods returns boolTrue only if:

    +

    After checking if a story can be posted, the client may invoke stories.sendStory to upload the story.
    +Note that if any of the conditions changes in the period between the call to stories.canSendStory and stories.sendStory (for example, the user uploads a story from another client, reaching the weekly limit), the same errors listed above for stories.canSendStory will be emitted by stories.sendStory.

    +

    The parameters of stories.sendStory are fully described on the method page », here are some of the most important ones:

    + +

    A story may also be edited using stories.editStory.

    +

    Pinned stories

    +
    ---functions---
    +
    +stories.togglePinned#9a75a1ef peer:InputPeer id:Vector<int> pinned:Bool = Vector<int>;
    +stories.getStoriesArchive#b4352016 peer:InputPeer offset_id:int limit:int = stories.Stories;
    +
    +stories.toggleAllStoriesHidden#7c2557c4 hidden:Bool = Bool;
    +stories.togglePeerStoriesHidden#bd0415c4 peer:InputPeer hidden:Bool = Bool;
    +

    Deleting stories

    +
    ---functions---
    +
    +stories.deleteStories#ae59db5f peer:InputPeer id:Vector<int> = Vector<int>;
    +

    Use the stories.deleteStories method to delete one or more stories by their IDs, passed in id.

    +

    Watching stories

    +
    ---functions---
    +
    +stories.getAllStories#eeb0d625 flags:# next:flags.1?true hidden:flags.2?true state:flags.0?string = stories.AllStories;
    +stories.getPinnedStories#5821a5dc peer:InputPeer offset_id:int limit:int = stories.Stories;
    +stories.getStoriesByID#5774ca74 peer:InputPeer id:Vector<int> = stories.Stories;
    +stories.readStories#a556dac8 peer:InputPeer max_id:int = Vector<int>;
    +stories.incrementStoryViews#b2028afb peer:InputPeer id:Vector<int> = Bool;
    +
    +stories.getStoryViewsList#7ed23c57 flags:# just_contacts:flags.0?true reactions_first:flags.2?true peer:InputPeer q:flags.1?string id:int offset:string limit:int = stories.StoryViewsList;
    +
    +stories.getStoriesViews#28e16cc8 peer:InputPeer id:Vector<int> = stories.StoryViews;
    +stories.exportStoryLink#7b8def20 peer:InputPeer id:int = ExportedStoryLink;
    +stories.report#1923fa8c peer:InputPeer id:Vector<int> reason:ReportReason message:string = Bool;
    +
    +stories.getPeerStories#2c4ada50 peer:InputPeer = stories.PeerStories;
    +stories.getAllReadPeerStories#9b5ae7f9 = Updates;
    +stories.getPeerMaxIDs#535983c3 id:Vector<InputPeer> = Vector<int>;
    +

    Media areas

    +

    Schema:

    +
    mediaAreaCoordinates#3d1ea4e x:double y:double w:double h:double rotation:double = MediaAreaCoordinates;
    +
    +mediaAreaVenue#be82db9c coordinates:MediaAreaCoordinates geo:GeoPoint title:string address:string provider:string venue_id:string venue_type:string = MediaArea;
    +inputMediaAreaVenue#b282217f coordinates:MediaAreaCoordinates query_id:long result_id:string = MediaArea;
    +mediaAreaGeoPoint#df8b3b22 coordinates:MediaAreaCoordinates geo:GeoPoint = MediaArea;
    +mediaAreaSuggestedReaction#14455871 flags:# dark:flags.0?true flipped:flags.1?true coordinates:MediaAreaCoordinates reaction:Reaction = MediaArea;
    +
    +storyItem#44c457ce flags:# pinned:flags.5?true public:flags.7?true close_friends:flags.8?true min:flags.9?true noforwards:flags.10?true edited:flags.11?true contacts:flags.12?true selected_contacts:flags.13?true out:flags.16?true id:int date:int expire_date:int caption:flags.0?string entities:flags.1?Vector<MessageEntity> media:MessageMedia media_areas:flags.14?Vector<MediaArea> privacy:flags.2?Vector<PrivacyRule> views:flags.3?StoryViews sent_reaction:flags.15?Reaction = StoryItem;
    +
    +---functions---
    +
    +stories.sendStory#bcb73644 flags:# pinned:flags.2?true noforwards:flags.4?true peer:InputPeer media:InputMedia media_areas:flags.5?Vector<MediaArea> caption:flags.0?string entities:flags.1?Vector<MessageEntity> privacy_rules:Vector<InputPrivacyRule> random_id:long period:flags.3?int = Updates;
    +stories.editStory#b583ba46 flags:# peer:InputPeer id:int media:flags.0?InputMedia media_areas:flags.3?Vector<MediaArea> caption:flags.1?string entities:flags.1?Vector<MessageEntity> privacy_rules:flags.2?Vector<InputPrivacyRule> = Updates;
    +

    Stories can have so-called "media areas": clickable rectangular areas with animated overlays on top of the story offering functionality like location tags or reactions.

    +

    The coordinates and size of each media area is specified in a mediaAreaCoordinates constructor attached to each MediaArea, see the constructor page » for more info.

    +

    After construction, the vector of MediaArea constructors can be passed to stories.sendStory or stories.editStory.

    +

    Location tags

    +

    Schema:

    +
    geoPoint#b2a2f663 flags:# long:double lat:double access_hash:long accuracy_radius:flags.0?int = GeoPoint;
    +
    +mediaAreaGeoPoint#df8b3b22 coordinates:MediaAreaCoordinates geo:GeoPoint = MediaArea;
    +mediaAreaVenue#be82db9c coordinates:MediaAreaCoordinates geo:GeoPoint title:string address:string provider:string venue_id:string venue_type:string = MediaArea;
    +
    +inputMediaAreaVenue#b282217f coordinates:MediaAreaCoordinates query_id:long result_id:string = MediaArea;
    +

    Location tags are represented by a mediaAreaVenue or mediaAreaGeoPoint, associated to a location sticker on top of the story media with an associated clickable media area.

    +

    Both constructors have an associated geolocation represented as a geoPoint, and information about the clickable media area on top of the story media as a mediaAreaCoordinates constructor.

    +

    mediaAreaGeoPoint is used to represent a simple geolocation without any extra information.
    +mediaAreaVenue is used to represent the location of a specific venue (i.e. a mall, a shop, a dance school et cetera), and apart from the venue's coordinates, it also contains a textual representation of the address, the venue name (title) and a venue type/ID (venue_id/venue_type) in a format supported by the venue provider specified in provider.

    +

    Currently, the only provider that needs to be supported is foursquare.

    +

    To send a mediaAreaVenue, clients should use inputMediaAreaVenue, constructed as follows:

    + +

    Clients may also re-use an existing mediaAreaVenue from a previously uploaded story.

    +

    Reactions

    +

    Schema:

    +
    reactionEmoji#1b2286b8 emoticon:string = Reaction;
    +reactionCustomEmoji#8935fc73 document_id:long = Reaction;
    +
    +mediaAreaSuggestedReaction#14455871 flags:# dark:flags.0?true flipped:flags.1?true coordinates:MediaAreaCoordinates reaction:Reaction = MediaArea;
    +
    +---functions---
    +
    +stories.sendReaction#7fd736b2 flags:# add_to_recent:flags.0?true peer:InputPeer story_id:int reaction:Reaction = Updates;
    +

    Story reactions are implemented using a simple in-UI button that allows the user to send any reaction using stories.sendReaction.

    +

    However, the poster of a story may also use mediaAreaSuggestedReaction media areas » to suggest some specific reactions as simple clickable buttons: they're rendered as a round comic-style thought bubble with its "tail" on the right, white background and the reaction » from the reaction field located in its center.
    +If the dark flag is set, the background should by black.
    +If the flipped flag is set, the "tail" should be located on the left.

    +

    Clicking it should invoke stories.sendReaction as usual.

    Stealth mode

    Premium users may enable stealth mode, erasing their views from any stories they opened in the past stories_stealth_past_period seconds », and hiding their views on stories for the next stories_stealth_future_period seconds », as specified by the client configuration ».

    Schema:

    @@ -119,13 +232,13 @@ A BOOST_NOT_MODIFIED RPC error will be returned when calling any of

    Posting stories as a channel

    inputPeerChannel#27bcbbfc channel_id:long access_hash:long = InputPeer;
     
    +messages.chats#64ff9fd5 chats:Vector<Chat> = messages.Chats;
    +
     ---functions---
     
    -stories.canSendStory#c7dfdfdd peer:InputPeer = Bool;
    -stories.sendStory#bcb73644 flags:# pinned:flags.2?true noforwards:flags.4?true peer:InputPeer media:InputMedia media_areas:flags.5?Vector<MediaArea> caption:flags.0?string entities:flags.1?Vector<MessageEntity> privacy_rules:Vector<InputPrivacyRule> random_id:long period:flags.3?int = Updates;
    -stories.editStory#b583ba46 flags:# peer:InputPeer id:int media:flags.0?InputMedia media_areas:flags.3?Vector<MediaArea> caption:flags.1?string entities:flags.1?Vector<MessageEntity> privacy_rules:flags.2?Vector<InputPrivacyRule> = Updates;
    -stories.deleteStories#ae59db5f peer:InputPeer id:Vector<int> = Vector<int>;
    -

    Everything works exactly the same as when posting stories as a user, with the only difference that clients should pass the appropriate inputPeerChannel instead of inputPeerSelf to stories.canSendStory, stories.sendStory and all the other story methods, see the main documentation » for more info.

    +stories.getChatsToSend#a56a8b60 = messages.Chats; +

    Everything works exactly the same as when posting stories as a user, with the only difference that clients should pass the appropriate inputPeerChannel instead of inputPeerSelf to stories.canSendStory, stories.sendStory and all the other story methods, see the main documentation » for more info.

    +

    Use stories.getChatsToSend to obtain a list of channels where the user can post stories; stories.canSendStory must still be used before uploading a story to make sure no other limit was reached, as described in the main documentation ».

    diff --git a/data/web/corefork.telegram.org/api/story.html b/data/web/corefork.telegram.org/api/story.html new file mode 100644 index 0000000000..3c174d560a --- /dev/null +++ b/data/web/corefork.telegram.org/api/story.html @@ -0,0 +1,118 @@ + + + + + Page not found + + + + + + + + + + + + + + + + +
    + +
    +
    +
    + +

    Page not found

    + +
    The page has not been saved
    + +
    + +
    +
    + +
    + + + + + + diff --git a/data/web/corefork.telegram.org/api/takeout.html b/data/web/corefork.telegram.org/api/takeout.html new file mode 100644 index 0000000000..beed9a0fad --- /dev/null +++ b/data/web/corefork.telegram.org/api/takeout.html @@ -0,0 +1,156 @@ + + + + + Takeout + + + + + + + + + + + + + + + + +
    + +
    +
    +
    + +

    Takeout

    + +
    + +

    Telegram's API allows users to export all of their information through the takeout API.

    +
    account.takeout#4dba4501 id:long = account.Takeout;
    +
    +inputTakeoutFileLocation#29be5899 = InputFileLocation;
    +
    +---functions---
    +
    +account.initTakeoutSession#8ef3eab0 flags:# contacts:flags.0?true message_users:flags.1?true message_chats:flags.2?true message_megagroups:flags.3?true message_channels:flags.4?true files:flags.5?true file_max_size:flags.5?long = account.Takeout;
    +
    +invokeWithTakeout#aca9fd2e {X:Type} takeout_id:long query:!X = X;
    +invokeWithMessagesRange#365275f2 {X:Type} range:MessageRange query:!X = X;
    +
    +account.finishTakeoutSession#1d2652ee flags:# success:flags.0?true = Bool;
    +

    Use account.initTakeoutSession to initialize a takeout session: pass the appropriate flags to enable usage of the corresponding methods, as described below.

    +

    When invoking the methods described below, each query must be wrapped using invokeWithTakeout, with the id returned by account.initTakeoutSession.

    +

    After finishing the export, terminate the session using account.finishTakeoutSession.

    +

    Contacts

    +
    savedPhoneContact#1142bd56 phone:string first_name:string last_name:string date:int = SavedContact;
    +
    +---functions---
    +
    +contacts.getSaved#82f1e39f = Vector<SavedContact>;
    +

    Use contacts.getSaved to export the full contact list, see here » for another alternative method that may be used to fetch the full list of all contacts with a Telegram account, without using a takeout session.

    +

    Left channels

    +
    messages.chats#64ff9fd5 chats:Vector<Chat> = messages.Chats;
    +messages.chatsSlice#9cd81144 count:int chats:Vector<Chat> = messages.Chats;
    +
    +---functions---
    +
    +channels.getLeftChannels#8341ecc0 offset:int = messages.Chats;
    +

    Use channels.getLeftChannels to get a list of channels or supergroups we left.

    +

    + +
    + +
    +
    + +
    + + + + + + + + diff --git a/data/web/corefork.telegram.org/api/top-rating.html b/data/web/corefork.telegram.org/api/top-rating.html index 85c95d29c3..1a9bcecfb4 100644 --- a/data/web/corefork.telegram.org/api/top-rating.html +++ b/data/web/corefork.telegram.org/api/top-rating.html @@ -44,9 +44,7 @@

    If enabled, the rating of top peers indicates the relevance of a frequently used peer in a certain category (frequently messaged users, frequently used bots, inline bots, frequently visited channels and so on).

    Schema:

    -
    topPeer#edcdc05b peer:Peer rating:double = TopPeer;
    -
    -topPeerCategoryBotsPM#ab661b5b = TopPeerCategory;
    +
    topPeerCategoryBotsPM#ab661b5b = TopPeerCategory;
     topPeerCategoryBotsInline#148677e2 = TopPeerCategory;
     topPeerCategoryCorrespondents#637b7ed = TopPeerCategory;
     topPeerCategoryGroups#bd17a14a = TopPeerCategory;
    @@ -55,6 +53,8 @@
     topPeerCategoryForwardUsers#a8406ca9 = TopPeerCategory;
     topPeerCategoryForwardChats#fbeec0f0 = TopPeerCategory;
     
    +topPeer#edcdc05b peer:Peer rating:double = TopPeer;
    +
     topPeerCategoryPeers#fb834291 category:TopPeerCategory count:int peers:Vector<TopPeer> = TopPeerCategoryPeers;
     
     contacts.topPeersNotModified#de266ef5 = contacts.TopPeers;
    @@ -63,7 +63,10 @@
     
     ---functions---
     
    -contacts.getTopPeers#973478b6 flags:# correspondents:flags.0?true bots_pm:flags.1?true bots_inline:flags.2?true phone_calls:flags.3?true forward_users:flags.4?true forward_chats:flags.5?true groups:flags.10?true channels:flags.15?true offset:int limit:int hash:long = contacts.TopPeers;
    +contacts.toggleTopPeers#8514bdda enabled:Bool = Bool; +contacts.getTopPeers#973478b6 flags:# correspondents:flags.0?true bots_pm:flags.1?true bots_inline:flags.2?true phone_calls:flags.3?true forward_users:flags.4?true forward_chats:flags.5?true groups:flags.10?true channels:flags.15?true offset:int limit:int hash:long = contacts.TopPeers; +contacts.resetTopPeerRating#1ae373ac category:TopPeerCategory peer:InputPeer = Bool;
    +

    Use contacts.toggleTopPeers to enable or disable top peer ratings.

    The rate delta is computed by taking the time delta between the last time the user used a certain peer and the last time the rating for that peer was received and dividing it by the exponential decay from config.

    Example: Client-side, every time a user opens chat 123456789 the following operation must be done on the cached top peer info.

    @@ -72,7 +75,8 @@ Client-side, every time a user opens chat 123456789 the following o
  • normalizeRate is an arbitrary time in the recent past. When ratings are received from the server using contacts.getTopPeers and the schema described above, it is the time when they were received.
  • -
    topPeer.rating += e^((dateOpened - normalizeRate) / config.rating_e_decay)
    +
    topPeer.rating += e^((dateOpened - normalizeRate) / config.rating_e_decay)
    +

    Use contacts.resetTopPeerRating to reset the top peer rating of a certain peer, in a certain category.

    diff --git a/data/web/corefork.telegram.org/constructor/botInlineMessageMediaVenue.html b/data/web/corefork.telegram.org/constructor/botInlineMessageMediaVenue.html index 6b69f38072..ed3a116501 100644 --- a/data/web/corefork.telegram.org/constructor/botInlineMessageMediaVenue.html +++ b/data/web/corefork.telegram.org/constructor/botInlineMessageMediaVenue.html @@ -89,7 +89,7 @@ provider string -Venue provider: currently only "foursquare" needs to be supported +Venue provider: currently only "foursquare" and "gplaces" (Google Places) need to be supported venue_id diff --git a/data/web/corefork.telegram.org/constructor/decryptedMessageMediaVenue.html b/data/web/corefork.telegram.org/constructor/decryptedMessageMediaVenue.html index eaea9adadf..ae44b70013 100644 --- a/data/web/corefork.telegram.org/constructor/decryptedMessageMediaVenue.html +++ b/data/web/corefork.telegram.org/constructor/decryptedMessageMediaVenue.html @@ -90,7 +90,7 @@ provider string -Venue provider: currently only "foursquare" needs to be supported +Venue provider: currently only "foursquare" and "gplaces" (Google Places) need to be supported venue_id diff --git a/data/web/corefork.telegram.org/constructor/inputBotInlineMessageMediaVenue.html b/data/web/corefork.telegram.org/constructor/inputBotInlineMessageMediaVenue.html index 3f7b62c06d..344824df62 100644 --- a/data/web/corefork.telegram.org/constructor/inputBotInlineMessageMediaVenue.html +++ b/data/web/corefork.telegram.org/constructor/inputBotInlineMessageMediaVenue.html @@ -89,7 +89,7 @@ provider string -Venue provider: currently only "foursquare" needs to be supported +Venue provider: currently only "foursquare" and "gplaces" (Google Places) need to be supported venue_id diff --git a/data/web/corefork.telegram.org/constructor/inputMediaVenue.html b/data/web/corefork.telegram.org/constructor/inputMediaVenue.html index 3ee57980b4..443447ed14 100644 --- a/data/web/corefork.telegram.org/constructor/inputMediaVenue.html +++ b/data/web/corefork.telegram.org/constructor/inputMediaVenue.html @@ -84,7 +84,7 @@ provider string -Venue provider: currently only "foursquare" needs to be supported +Venue provider: currently only "foursquare" and "gplaces" (Google Places) need to be supported venue_id diff --git a/data/web/corefork.telegram.org/constructor/mediaAreaCoordinates.html b/data/web/corefork.telegram.org/constructor/mediaAreaCoordinates.html index 3b1c57f072..701f001f87 100644 --- a/data/web/corefork.telegram.org/constructor/mediaAreaCoordinates.html +++ b/data/web/corefork.telegram.org/constructor/mediaAreaCoordinates.html @@ -4,50 +4,10 @@ mediaAreaCoordinates - + - + @@ -82,7 +42,8 @@ MediaAreaCoordinates">

    mediaAreaCoordinates

    -

    +

    Coordinates and size of a clicable rectangular area on top of a story.

    +