diff --git a/data/corefork.telegram.org/api/passport.html b/data/corefork.telegram.org/api/passport.html index 0189667ff9..f8cc577d02 100644 --- a/data/corefork.telegram.org/api/passport.html +++ b/data/corefork.telegram.org/api/passport.html @@ -41,7 +41,7 @@
Telegram Passport is a unified authorization method for services that require personal identification. Users can upload their documents once, then instantly share their data with services that require real-world ID (finance, ICOs, etc.). Telegram doesn‘t have access to the users' personal information thanks to end-to-end encryption.
+Telegram Passport is a unified authorization method for services that require personal identification. Users can upload their documents once, then instantly share their data with services that require real-world ID (finance, ICOs, etc.). Telegram doesn't have access to the users' personal information thanks to end-to-end encryption.
This page describes the request flow that client apps must used to send the requested data to the service.
From the perspective of a service that requires real-world ID, the process looks like this:
diff --git a/data/corefork.telegram.org/api/payments.html b/data/corefork.telegram.org/api/payments.html index 0dbfe07823..79a8383f3e 100644 --- a/data/corefork.telegram.org/api/payments.html +++ b/data/corefork.telegram.org/api/payments.html @@ -261,7 +261,7 @@ Once the user finishes working with the webpage, the client can updateBotPrecheckoutQuery constructor that contains all the available information about the order to the bot. The bot must reply using messages.setBotPrecheckoutResults within 10 seconds after receiving this update or the transaction is canceled. -The bot may return an error if it can‘t process the order for any reason. We highly recommend specifying a reason for failure to complete the order in human readable form (e.g. "Sorry, we're all out of rubber ducks! Would you be interested in a steel bear instead?"). Telegram will display this reason to the user.
+The bot may return an error if it can't process the order for any reason. We highly recommend specifying a reason for failure to complete the order in human readable form (e.g. "Sorry, we're all out of rubber ducks! Would you be interested in a steel bear instead?"). Telegram will display this reason to the user.
keyboardButtonBuy#afd93fbb text:string = KeyboardButton;
diff --git a/data/corefork.telegram.org/bots.html b/data/corefork.telegram.org/bots.html
index 65c1449731..63254b11f3 100644
--- a/data/corefork.telegram.org/bots.html
+++ b/data/corefork.telegram.org/bots.html
@@ -291,7 +291,7 @@
/setdescription — change the bot's description, a short text of up to 512 characters, describing your bot. Users will see this text at the beginning of the conversation with the bot, titled 'What can this bot do?'.
/setabouttext — change the bot's about info, an even shorter text of up to 120 characters. Users will see this text on the bot's profile page. When they share your bot with someone, this text is sent together with the link.
/setuserpic — change the bot's profile pictures. It's always nice to put a face to a name.
-/setcommands — change the list of commands supported by your bot. Users will see these commands as suggestions when they type /
in the chat with your bot. Each command has a name (must start with a slash ‘/', alphanumeric plus underscores, no more than 32 characters, case-insensitive), parameters, and a text description. Users will see the list of commands whenever they type '/' in a conversation with your bot.
+/setcommands — change the list of commands supported by your bot. Users will see these commands as suggestions when they type /
in the chat with your bot. Each command has a name (must start with a slash '/', alphanumeric plus underscores, no more than 32 characters, case-insensitive), parameters, and a text description. Users will see the list of commands whenever they type '/' in a conversation with your bot.
/deletebot — delete your bot and free its username.
Edit settings
diff --git a/data/corefork.telegram.org/constructor/userFull.html b/data/corefork.telegram.org/constructor/userFull.html
index b35937812d..eb720056a0 100644
--- a/data/corefork.telegram.org/constructor/userFull.html
+++ b/data/corefork.telegram.org/constructor/userFull.html
@@ -81,7 +81,7 @@
phone_calls_private
flags.5?true
-Whether this user's privacy settings allow you to call him
+Whether this user's privacy settings allow you to call them
can_pin_message
diff --git a/data/corefork.telegram.org/method/contacts.acceptContact b/data/corefork.telegram.org/method/contacts.acceptContact
index 02ccbc8366..d00150456f 100644
--- a/data/corefork.telegram.org/method/contacts.acceptContact
+++ b/data/corefork.telegram.org/method/contacts.acceptContact
@@ -4,10 +4,10 @@
contacts.acceptContact
-
+
-
+
@@ -39,7 +39,7 @@
contacts.acceptContact
- If the peer settings of a new user allow us to add him as contact, add that user as contact
+ If the peer settings of a new user allow us to add them as contact, add that user as contact
-
diff --git a/data/corefork.telegram.org/method/messages.setInlineBotResults b/data/corefork.telegram.org/method/messages.setInlineBotResults
index fa5dfe162c..1d04c4d415 100644
--- a/data/corefork.telegram.org/method/messages.setInlineBotResults
+++ b/data/corefork.telegram.org/method/messages.setInlineBotResults
@@ -99,7 +99,7 @@
next_offset
flags.2?string
-Pass the offset that a client should send in the next query with the same text to receive more results. Pass an empty string if there are no more results or if you don‘t support pagination. Offset length can't exceed 64 bytes.
+Pass the offset that a client should send in the next query with the same text to receive more results. Pass an empty string if there are no more results or if you don't support pagination. Offset length can't exceed 64 bytes.
switch_pm
diff --git a/data/corefork.telegram.org/methods.html b/data/corefork.telegram.org/methods.html
index 78a149d86a..8bb1e2ddb9 100644
--- a/data/corefork.telegram.org/methods.html
+++ b/data/corefork.telegram.org/methods.html
@@ -1153,7 +1153,7 @@
contacts.acceptContact
-If the peer settings of a new user allow us to add him as contact, add that user as contact
+If the peer settings of a new user allow us to add them as contact, add that user as contact
contacts.addContact
diff --git a/data/corefork.telegram.org/mtproto/TL-polymorph.html b/data/corefork.telegram.org/mtproto/TL-polymorph.html
index c7e6052faf..4a2dbe8ca6 100644
--- a/data/corefork.telegram.org/mtproto/TL-polymorph.html
+++ b/data/corefork.telegram.org/mtproto/TL-polymorph.html
@@ -89,7 +89,7 @@ nil : forall (X:Type), X -> List X;
It was stated above that any subset of (the first few) parameters of any constructor can be identified as optional (by enclosing their declarations in curly brackets), but this is not actually entirely accurate. First, these optional parameters can only be of type Type
or #
(natural numbers). Second, optional parameters must share the return value's type, otherwise their value cannot be determined.
Note that @'''constr-id''' means the constructor's “full form” (in which all optional parameters become required), while '''constr-id'' denotes its abbreviated form (without the optional arguments). If there are no optional arguments, then these two forms are the same. Constructors' full forms are never used at present.
Bare polymorphic types
-There is a small problem: if we want to serialize the value of the bare type ‘%pair string int' or ‘%pair string Y' (which in TL is usually denoted simply as “pair”, though the form “%Pair” is preferable), we cannot simultaneously use both the full constructor @pair and the partial pair, because the constructor's name will not be serialized. Therefore, we must differentiate the bare types %@pair (type X, type Y, value x:X, and value y:Y are serialized) and %pair (only x:X and y:Y are serialized; types X and Y are known from the context). In practice, we nearly almost always need the bare type %pair, and this is precisely what “pair” means in the type's context in TL. Therefore,
+There is a small problem: if we want to serialize the value of the bare type '%pair string int' or '%pair string Y' (which in TL is usually denoted simply as “pair”, though the form “%Pair” is preferable), we cannot simultaneously use both the full constructor @pair and the partial pair, because the constructor's name will not be serialized. Therefore, we must differentiate the bare types %@pair (type X, type Y, value x:X, and value y:Y are serialized) and %pair (only x:X and y:Y are serialized; types X and Y are known from the context). In practice, we nearly almost always need the bare type %pair, and this is precisely what “pair” means in the type's context in TL. Therefore,
record name:string map:(List (pair int string)) = Record;
will be serialized approximately like we want it to be (the serialization of list elements will consist of the serialization of int and the serialization of string, without any additional headers, types, or combinator names).
Incidentally, when calculating the “record” combinator's name 'record' in the example given above, the CRC32 of record name:string map:List pair int string = Record
will be computed.
diff --git a/data/corefork.telegram.org/mtproto/serialize.html b/data/corefork.telegram.org/mtproto/serialize.html
index 5a3241c06b..fbf9ffc9d8 100644
--- a/data/corefork.telegram.org/mtproto/serialize.html
+++ b/data/corefork.telegram.org/mtproto/serialize.html
@@ -66,13 +66,13 @@ The TL language is used to describe the data types to
Combinator identifier is an identifier beginning with a lowercase Roman letter that uniquely identifies a combinator.
-
-
Combinator number or combinator name is a 32-bit number (i.e., an element of A) that uniquely identifies a combinator. Most often, it is CRC32 of the string containing the combinator description without the final semicolon, and with one space between contiguous lexemes. This always falls in the range from 0x01000000 to 0xffffff00. The highest 256 values are reserved for the so-called temporal-logic combinators used to transmit functions. We frequently denote as combinator the combinator name with single quotes: ‘combinator'.
+Combinator number or combinator name is a 32-bit number (i.e., an element of A) that uniquely identifies a combinator. Most often, it is CRC32 of the string containing the combinator description without the final semicolon, and with one space between contiguous lexemes. This always falls in the range from 0x01000000 to 0xffffff00. The highest 256 values are reserved for the so-called temporal-logic combinators used to transmit functions. We frequently denote as combinator the combinator name with single quotes: 'combinator'.
-
Combinator description is a string of format combinator_name type_arg_1 ... type_arg_N = type_res;
where N
stands for the arity of the combinator, type_arg_i
is the type of the i-th argument (or rather, a string with the combinator name), and type_res
is the combinator value type.
-
-
Constructor is a combinator that cannot be computed (reduced). This is used to represent composite data types. For example, combinator ‘int_tree' with description int_tree IntTree int IntTree = IntTree
, alongside combinator empty_tree = IntTree
, may be used to define a composite data type called “IntTree” that takes on values in the form of binary trees with integers as nodes.
+Constructor is a combinator that cannot be computed (reduced). This is used to represent composite data types. For example, combinator 'int_tree' with description int_tree IntTree int IntTree = IntTree
, alongside combinator empty_tree = IntTree
, may be used to define a composite data type called “IntTree” that takes on values in the form of binary trees with integers as nodes.
-
Function (functional combinator) is a combinator which may be computed (reduced) on condition that the requisite number of arguments of requisite types are provided. The result of the computation is an expression consisting of constructors and base type values only.
@@ -87,7 +87,7 @@ The TL language is used to describe the data types to
Type number or type name is a 32-bit number that uniquely identifies a type; it normally is the sum of the CRC32 values of the descriptions of the type constructors.
-
-
Description of (composite) Type T is a collection of the descriptions of all constructors that take on Type T values. This is normally written as text with each string containing the description of a single constructor. Here is a description of Type ‘IntTree', for example:
+Description of (composite) Type T is a collection of the descriptions of all constructors that take on Type T values. This is normally written as text with each string containing the description of a single constructor. Here is a description of Type 'IntTree', for example:
int_tree IntTree int IntTree = IntTree;
empty_tree = IntTree;
@@ -97,7 +97,7 @@ empty_tree = IntTree;
nil {alpha:Type} = List alpha;
-
-
Value of (composite) Type T is any sequence from A* in the format constr_num arg1 ... argN
, where constr_num is the index number of some Constructor C which takes on values of Type T, and arg_i is a value of Type T_i which is the type of the i-th argument to Constructor C. For example, let Combinator int_tree have the index number 17, whereas Combinator empty_tree has the index number 239. Then, the value of Type IntTree
is, for example, 17 17 239 1 239 2 239
which is more conveniently written as 'int_tree' 'int_tree' 'empty_tree' 1 'empty_tree' 2 ‘empty_tree'
. From the standpoint of a high-level language, this is int_tree (int_tree (empty_tree) 1 (empty_tree)) 2 (empty_tree): IntTree
.
+Value of (composite) Type T is any sequence from A* in the format constr_num arg1 ... argN
, where constr_num is the index number of some Constructor C which takes on values of Type T, and arg_i is a value of Type T_i which is the type of the i-th argument to Constructor C. For example, let Combinator int_tree have the index number 17, whereas Combinator empty_tree has the index number 239. Then, the value of Type IntTree
is, for example, 17 17 239 1 239 2 239
which is more conveniently written as 'int_tree' 'int_tree' 'empty_tree' 1 'empty_tree' 2 'empty_tree'
. From the standpoint of a high-level language, this is int_tree (int_tree (empty_tree) 1 (empty_tree)) 2 (empty_tree): IntTree
.
-
Schema is a collection of all the (composite) data type descriptions. This is used to define some agreed-to system of types.
diff --git a/data/corefork.telegram.org/type/KeyboardButton.html b/data/corefork.telegram.org/type/KeyboardButton.html
index afb00424ab..ce3cd7717e 100644
--- a/data/corefork.telegram.org/type/KeyboardButton.html
+++ b/data/corefork.telegram.org/type/KeyboardButton.html
@@ -96,7 +96,7 @@
keyboardButtonSwitchInline
-Button to force a user to switch to inline mode Pressing the button will prompt the user to select one of their chats, open that chat and insert the bot‘s username and the specified inline query in the input field.
+Button to force a user to switch to inline mode Pressing the button will prompt the user to select one of their chats, open that chat and insert the bot's username and the specified inline query in the input field.
keyboardButtonGame
diff --git a/data/corefork.telegram.org/type/Update.html b/data/corefork.telegram.org/type/Update.html
index 78e3203fe3..4a3d2b8fe9 100644
--- a/data/corefork.telegram.org/type/Update.html
+++ b/data/corefork.telegram.org/type/Update.html
@@ -171,11 +171,11 @@
updateUserTyping
-The user is preparing a message; typing, recording, uploading, etc. This update is valid for 6 seconds. If no repeated update received after 6 seconds, it should be considered that the user stopped doing whatever he's been doing.
+The user is preparing a message; typing, recording, uploading, etc. This update is valid for 6 seconds. If no further updates of this kind are received after 6 seconds, it should be considered that the user stopped doing whatever they were doing.
updateChatUserTyping
-The user is preparing a message in a group; typing, recording, uploading, etc. This update is valid for 6 seconds. If no repeated update received after 6 seconds, it should be considered that the user stopped doing whatever he's been doing.
+The user is preparing a message in a group; typing, recording, uploading, etc. This update is valid for 6 seconds. If no further updates of this kind are received after 6 seconds, it should be considered that the user stopped doing whatever they were doing.
updateChatParticipants
diff --git a/data/corefork.telegram.org/type/Updates.html b/data/corefork.telegram.org/type/Updates.html
index b19e186963..047dbad516 100644
--- a/data/corefork.telegram.org/type/Updates.html
+++ b/data/corefork.telegram.org/type/Updates.html
@@ -347,7 +347,7 @@
contacts.acceptContact
-If the peer settings of a new user allow us to add him as contact, add that user as contact
+If the peer settings of a new user allow us to add them as contact, add that user as contact
channels.editCreator