tgbotxx  1.0.6.9
Telegram Bot C++ Library
tgbotxx Namespace Reference

Namespaces

 DateTimeUtils
 Namespace contains useful Date Time related utility functions.
 
 FileUtils
 Namespace contains useful File related utility functions.
 
 StringUtils
 Namespace contains useful string related utility functions.
 

Classes

class  Api
 Api Methods https://core.telegram.org/bots/api#available-methods. More...
 
class  Bot
 
class  Exception
 tgbotxx::Exception More...
 
struct  Animation
 This object represents an animation file (GIF or H.264/MPEG-4 AVC video without sound). https://core.telegram.org/bots/api#animation. More...
 
struct  Audio
 This object represents an audio file to be treated as music by the Telegram clients. https://core.telegram.org/bots/api#audio. More...
 
struct  BotCommand
 This object represents a bot command. https://core.telegram.org/bots/api#botcommand. More...
 
struct  BotCommandScope
 Base class of all bot commands scopes This object represents the scope to which bot commands are applied. Currently, the following 7 scopes are supported: BotCommandScopeDefault BotCommandScopeAllPrivateChats BotCommandScopeAllGroupChats BotCommandScopeAllChatAdministrators BotCommandScopeChat BotCommandScopeChatAdministrators BotCommandScopeChatMember https://core.telegram.org/bots/api#botcommandscope. More...
 
struct  BotCommandScopeDefault
 Represents the default scope of bot commands. Default commands are used if no commands with a narrower scope are specified for the user. More...
 
struct  BotCommandScopeAllPrivateChats
 Represents the scope of bot commands, covering all private chats. More...
 
struct  BotCommandScopeAllGroupChats
 Represents the scope of bot commands, covering all group and supergroup chats. More...
 
struct  BotCommandScopeAllChatAdministrators
 Represents the scope of bot commands, covering all group and supergroup chat administrators. More...
 
struct  BotCommandScopeChat
 Represents the scope of bot commands, covering a specific chat. More...
 
struct  BotCommandScopeChatAdministrators
 Represents the scope of bot commands, covering all administrators of a specific group or supergroup chat. More...
 
struct  BotCommandScopeChatMember
 Represents the scope of bot commands, covering a specific member of a group or supergroup chat. More...
 
struct  BotDescription
 This object represents the bot's description. https://core.telegram.org/bots/api#botdescription. More...
 
struct  BotName
 This object represents the bot's name. https://core.telegram.org/bots/api#botname. More...
 
struct  BotShortDescription
 This object represents the bot's short description. https://core.telegram.org/bots/api#botshortdescription. More...
 
struct  CallbackGame
 A placeholder, currently holds no information. More...
 
struct  CallbackQuery
 This object represents an incoming callback query from a callback button in an inline keyboard. If the button that originated the query was attached to a message sent by the bot, the field message will be present. If the button was attached to a message sent via the bot (in inline mode), the field inline_message_id will be present. Exactly one of the fields data or game_short_name will be present. https://core.telegram.org/bots/api#callbackquery. More...
 
struct  Chat
 This object represents a chat. https://core.telegram.org/bots/api#chat. More...
 
struct  ChatAdministratorRights
 Represents the rights of an administrator in a chat. https://core.telegram.org/bots/api#chatadministratorrights. More...
 
struct  ChatBoost
 This object contains information about a chat boost. https://core.telegram.org/bots/api#chatboost. More...
 
struct  ChatBoostRemoved
 This object represents a boost removed from a chat. https://core.telegram.org/bots/api#chatboostremoved. More...
 
struct  ChatBoostSource
 This object describes the source of a chat boost. It can be one of: More...
 
struct  ChatBoostSourcePremium
 The boost was obtained by subscribing to Telegram Premium or by gifting a Telegram Premium subscription to another user. https://core.telegram.org/bots/api#chatboostsourcepremium. More...
 
struct  ChatBoostSourceGiftCode
 The boost was obtained by subscribing to Telegram Premium or by gifting a Telegram Premium subscription to another user. https://core.telegram.org/bots/api#chatboostsourcegiftcode. More...
 
struct  ChatBoostSourceGiveaway
 The boost was obtained by the creation of a Telegram Premium giveaway. This boosts the chat 4 times for the duration of the corresponding Telegram Premium subscription. https://core.telegram.org/bots/api#chatboostsourcegiveaway. More...
 
struct  ChatBoostUpdated
 This object represents a boost added to a chat or changed. https://core.telegram.org/bots/api#chatboostupdated. More...
 
struct  ChatInviteLink
 Represents an invite link for a chat. https://core.telegram.org/bots/api#chatinvitelink. More...
 
struct  ChatJoinRequest
 Represents a join request sent to a chat. https://core.telegram.org/bots/api#chatjoinrequest. More...
 
struct  ChatLocation
 Represents a location to which a chat is connected. https://core.telegram.org/bots/api#chatlocation. More...
 
struct  ChatMember
 The base class of all chat members objects. This object contains information about one member of a chat. Currently, the following 6 types of chat members are supported: ChatMemberOwner ChatMemberAdministrator ChatMemberMember ChatMemberRestricted ChatMemberLeft ChatMemberBanned https://core.telegram.org/bots/api#chatmember. More...
 
struct  ChatMemberOwner
 Represents a chat member that owns the chat and has all administrator privileges. https://core.telegram.org/bots/api#chatmemberowner. More...
 
struct  ChatMemberAdministrator
 Represents a chat member that has some additional privileges. https://core.telegram.org/bots/api#chatmemberadministrator. More...
 
struct  ChatMemberMember
 Represents a chat member that has no additional privileges or restrictions. https://core.telegram.org/bots/api#chatmembermember. More...
 
struct  ChatMemberRestricted
 Represents a chat member that is under certain restrictions in the chat. Supergroups only. https://core.telegram.org/bots/api#chatmemberrestricted. More...
 
struct  ChatMemberLeft
 Represents a chat member that isn't currently a member of the chat, but may join it themselves. https://core.telegram.org/bots/api#chatmemberleft. More...
 
struct  ChatMemberBanned
 Represents a chat member that was banned in the chat and can't return to the chat or view chat messages. https://core.telegram.org/bots/api#chatmemberbanned. More...
 
struct  ChatMemberUpdated
 This object represents changes in the status of a chat member. https://core.telegram.org/bots/api#chatmemberupdated. More...
 
struct  ChatPermissions
 Describes actions that a non-administrator user is allowed to take in a chat. https://core.telegram.org/bots/api#chatpermissions. More...
 
struct  ChatPhoto
 This object represents a chat photo. https://core.telegram.org/bots/api#chatphoto. More...
 
struct  ChatShared
 This object contains information about the chat whose identifier was shared with the bot using a KeyboardButtonRequestChat button. https://core.telegram.org/bots/api#chatshared. More...
 
struct  ChosenInlineResult
 Represents a result of an inline query that was chosen by the user and sent to their chat partner. https://core.telegram.org/bots/api#choseninlineresult. More...
 
struct  Contact
 This object represents a phone contact. https://core.telegram.org/bots/api#contact. More...
 
struct  Dice
 This object represents an animated emoji that displays a random value. https://core.telegram.org/bots/api#dice. More...
 
struct  Document
 This object represents a general file (as opposed to photos, voice messages and audio files). https://core.telegram.org/bots/api#photosize voice messages https://core.telegram.org/bots/api#voice audio files https://core.telegram.org/bots/api#audio https://core.telegram.org/bots/api#document. More...
 
struct  EncryptedCredentials
 Describes data required for decrypting and authenticating EncryptedPassportElement. See the Telegram Passport Documentation for a complete description of the data decryption and authentication processes. https://core.telegram.org/bots/api#encryptedcredentials. More...
 
struct  EncryptedPassportElement
 Describes documents or other Telegram Passport elements shared with the bot by the user. https://core.telegram.org/bots/api#encryptedpassportelement. More...
 
struct  File
 This object represents a file ready to be downloaded. More...
 
struct  ForceReply
 Upon receiving a message with this object, Telegram clients will display a reply interface to the user (act as if the user has selected the bot's message and tapped 'Reply'). This can be extremely useful if you want to create user-friendly step-by-step interfaces without having to sacrifice privacy mode. https://core.telegram.org/bots/features#privacy-mode Example. A poll bot for groups runs in privacy mode (only receives commands, replies to its messages and mentions). There could be two ways to create a new poll: More...
 
struct  ForumTopic
 This object represents a forum topic. https://core.telegram.org/bots/api#forumtopic. More...
 
struct  ForumTopicClosed
 This object represents a service message about a forum topic closed in the chat. Currently holds no information. https://core.telegram.org/bots/api#forumtopicclosed. More...
 
struct  ForumTopicCreated
 This object represents a service message about a new forum topic created in the chat. https://core.telegram.org/bots/api#forumtopiccreated. More...
 
struct  ForumTopicEdited
 This object represents a service message about an edited forum topic. https://core.telegram.org/bots/api#forumtopicedited. More...
 
struct  ForumTopicReopened
 This object represents a service message about a forum topic reopened in the chat. Currently holds no information. https://core.telegram.org/bots/api#forumtopicreopened. More...
 
struct  Game
 This object represents a game. Use BotFather to create and edit games, their short names will act as unique identifiers. https://core.telegram.org/bots/api#game. More...
 
struct  GameHighScore
 This object represents one row of the high scores table for a game. https://core.telegram.org/bots/api#gamehighscore. More...
 
struct  GeneralForumTopicHidden
 This object represents a service message about General forum topic hidden in the chat. Currently holds no information. https://core.telegram.org/bots/api#generalforumtopichidden. More...
 
struct  GeneralForumTopicUnhidden
 This object represents a service message about General forum topic unhidden in the chat. Currently holds no information. https://core.telegram.org/bots/api#generalforumtopicunhidden. More...
 
struct  InlineKeyboardButton
 This object represents one button of an inline keyboard. You must use exactly one of the optional fields. https://core.telegram.org/bots/api#inlinekeyboardbutton. More...
 
struct  InlineKeyboardMarkup
 This object represents an inline keyboard that appears right next to the message it belongs to. https://core.telegram.org/bots/api#inlinekeyboardmarkup. More...
 
struct  InlineQuery
 This object represents an incoming inline query. When the user sends an empty query, your bot could return some default or trending results. https://core.telegram.org/bots/api#inlinequery. More...
 
struct  InlineQueryResult
 Base class of all inline query results This object represents one result of an inline query. Telegram clients currently support results of the following 20 types: More...
 
struct  InlineQueryResultArticle
 Represents a link to an article or web page. https://core.telegram.org/bots/api#inlinequeryresultarticle. More...
 
struct  InlineQueryResultPhoto
 Represents a link to a photo. By default, this photo will be sent by the user with optional caption. Alternatively, you can use input_message_content to send a message with the specified content instead of the photo. https://core.telegram.org/bots/api#inlinequeryresultphoto. More...
 
struct  InlineQueryResultGif
 Represents a link to an animated GIF file. By default, this animated GIF file will be sent by the user with optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the animation. https://core.telegram.org/bots/api#inlinequeryresultgif. More...
 
struct  InlineQueryResultMpeg4Gif
 Represents a link to a video animation (H.264/MPEG-4 AVC video without sound). By default, this animated MPEG-4 file will be sent by the user with optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the animation. https://core.telegram.org/bots/api#inlinequeryresultmpeg4gif. More...
 
struct  InlineQueryResultVideo
 Represents a link to a page containing an embedded video player or a video file. By default, this video file will be sent by the user with an optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the video. https://core.telegram.org/bots/api#inlinequeryresultvideo. More...
 
struct  InlineQueryResultAudio
 Represents a link to an MP3 audio file. By default, this audio file will be sent by the user. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the audio. More...
 
struct  InlineQueryResultVoice
 Represents a link to a voice recording in an .OGG container encoded with OPUS. By default, this voice recording will be sent by the user. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the voice message. More...
 
struct  InlineQueryResultDocument
 Represents a link to a file. By default, this file will be sent by the user with an optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the file. Currently, only .PDF and .ZIP files can be sent using this method. More...
 
struct  InlineQueryResultLocation
 Represents a location on a map. By default, the location will be sent by the user. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the location. More...
 
struct  InlineQueryResultVenue
 Represents a venue. By default, the venue will be sent by the user. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the venue. More...
 
struct  InlineQueryResultContact
 Represents a venue. By default, the venue will be sent by the user. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the venue. More...
 
struct  InlineQueryResultGame
 Represents a Game. More...
 
struct  InlineQueryResultCachedPhoto
 Represents a link to a photo stored on the Telegram servers. By default, this photo will be sent by the user with an optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the photo. More...
 
struct  InlineQueryResultCachedGif
 Represents a link to an animated GIF file stored on the Telegram servers. By default, this animated GIF file will be sent by the user with an optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the photo. More...
 
struct  InlineQueryResultCachedMpeg4Gif
 Represents a link to a video animation (H.264/MPEG-4 AVC video without sound) stored on the Telegram servers. By default, this animated MPEG-4 file will be sent by the user with an optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the photo. More...
 
struct  InlineQueryResultCachedSticker
 Represents a link to a sticker stored on the Telegram servers. By default, this sticker will be sent by the user. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the photo. More...
 
struct  InlineQueryResultCachedDocument
 Represents a link to a file stored on the Telegram servers. By default, this file will be sent by the user with an optional caption. Alternatively, you can use inputMessageContent to send a message with the specified content instead of the photo. More...
 
struct  InlineQueryResultCachedVideo
 Represents a link to a video file stored on the Telegram servers. By default, this video file will be sent by the user with an optional caption. More...
 
struct  InlineQueryResultCachedVoice
 Represents a link to a voice message stored on the Telegram servers. By default, this voice message will be sent by the user. More...
 
struct  InlineQueryResultCachedAudio
 Represents a link to an MP3 audio file stored on the Telegram servers. By default, this audio file will be sent by the user. More...
 
struct  InlineQueryResultsButton
 This object represents a button to be shown above inline query results. You must use exactly one of the optional fields. https://core.telegram.org/bots/api#inlinequeryresultsbutton. More...
 
struct  InputMedia
 This object represents the content of a media message to be sent. It should be one of: More...
 
struct  InputMediaAnimation
 Represents an animation file (GIF or H.264/MPEG-4 AVC video without sound) to be sent. https://core.telegram.org/bots/api#inputmediaanimation. More...
 
struct  InputMediaDocument
 Represents a general file to be sent. https://core.telegram.org/bots/api#inputmediadocument. More...
 
struct  InputMediaAudio
 Represents an audio file to be treated as music to be sent. https://core.telegram.org/bots/api#inputmediaaudio. More...
 
struct  InputMediaPhoto
 Represents a photo to be sent. https://core.telegram.org/bots/api#inputmediaphoto. More...
 
struct  InputMediaVideo
 Represents a video to be sent. https://core.telegram.org/bots/api#inputmediavideo. More...
 
struct  InputMessageContent
 Base class of all inline query results This object represents the content of a message to be sent as a result of an inline query. Telegram clients currently support the following 5 types: More...
 
struct  InputTextMessageContent
 Represents the content of a text message to be sent as the result of an inline query. https://core.telegram.org/bots/api#inputtextmessagecontent. More...
 
struct  InputLocationMessageContent
 Represents the content of a location message to be sent as the result of an inline query. https://core.telegram.org/bots/api#inputlocationmessagecontent. More...
 
struct  InputVenueMessageContent
 Represents the content of a venue message to be sent as the result of an inline query. https://core.telegram.org/bots/api#inputvenuemessagecontent. More...
 
struct  InputContactMessageContent
 Represents the content of a contact message to be sent as the result of an inline query. https://core.telegram.org/bots/api#inputcontactmessagecontent. More...
 
struct  InputInvoiceMessageContent
 Represents the content of a invoice message to be sent as the result of an inline query. https://core.telegram.org/bots/api#inputinvoicemessagecontent. More...
 
struct  InputSticker
 This object describes a sticker to be added to a sticker set. https://core.telegram.org/bots/api#inputsticker. More...
 
struct  Invoice
 This object contains basic information about an invoice. https://core.telegram.org/bots/api#invoice. More...
 
struct  IReplyMarkup
 The interface of reply markup objects InlineKeyboardMarkup, ReplyKeyboardMarkup, ReplyKeyboardRemove and ForceReply. https://core.telegram.org/bots/api#sendmessage reply_markup param. More...
 
struct  KeyboardButton
 This object represents one button of the reply keyboard. For simple text buttons, String can be used instead of this object to specify the button text. The optional fields web_app, request_user, request_chat, request_contact, request_location, and request_poll are mutually exclusive. https://core.telegram.org/bots/api#keyboardbutton. More...
 
struct  KeyboardButtonPollType
 This object represents type of a poll, which is allowed to be created and sent when the corresponding button is pressed. https://core.telegram.org/bots/api#keyboardbuttonpolltype. More...
 
struct  KeyboardButtonRequestChat
 This object defines the criteria used to request a suitable chat. The identifier of the selected chat will be shared with the bot when the corresponding button is pressed. More about requesting chats ยป https://core.telegram.org/bots/features#chat-and-user-selection https://core.telegram.org/bots/api#keyboardbuttonrequestchat. More...
 
struct  KeyboardButtonRequestUser
 This object defines the criteria used to request a suitable user. The identifier of the selected user will be shared with the bot when the corresponding button is pressed. More about requesting users ยป https://core.telegram.org/bots/features#chat-and-user-selection https://core.telegram.org/bots/api#keyboardbuttonrequestuser. More...
 
struct  LabeledPrice
 This object represents a portion of the price for goods or services. https://core.telegram.org/bots/api#labeledprice. More...
 
struct  Location
 This object represents a point on the map. https://core.telegram.org/bots/api#location. More...
 
struct  LoginUrl
 This object represents a parameter of the inline keyboard button used to automatically authorize a user. Serves as a great replacement for the Telegram Login Widget when the user is coming from Telegram. All the user needs to do is tap/click a button and confirm that they want to log in: More...
 
struct  MaskPosition
 This object describes the position on faces where a mask should be placed by default. https://core.telegram.org/bots/api#maskposition. More...
 
struct  MenuButton
 This object describes the bot's menu button in a private chat. It should be one of: More...
 
struct  MenuButtonDefault
 Describes that no specific value for the menu button was set. https://core.telegram.org/bots/api#menubuttondefault. More...
 
struct  MenuButtonWebApp
 Represents a menu button, which launches a Web App. https://core.telegram.org/bots/webapps https://core.telegram.org/bots/api#menubuttonwebapp. More...
 
struct  MenuButtonCommands
 Represents a menu button, which opens the bot's list of commands. https://core.telegram.org/bots/api#menubuttoncommands. More...
 
struct  Message
 This object represents a message. https://core.telegram.org/bots/api#message. More...
 
struct  MessageAutoDeleteTimerChanged
 This object represents a service message about a change in auto-delete timer settings. https://core.telegram.org/bots/api#messageautodeletetimerchanged. More...
 
struct  MessageEntity
 This object represents one special entity in a text message. For example, hashtags, usernames, URLs, etc. https://core.telegram.org/bots/api#messageentity. More...
 
struct  MessageId
 This object represents a unique message identifier. https://core.telegram.org/bots/api#messageid. More...
 
struct  MessageReactionCountUpdated
 This object represents reaction changes on a message with anonymous reactions. https://core.telegram.org/bots/api#messagereactioncountupdated. More...
 
struct  MessageReactionUpdated
 This object represents a change of a reaction on a message performed by a user. https://core.telegram.org/bots/api#messagereactionupdated. More...
 
struct  OrderInfo
 This object represents information about an order. https://core.telegram.org/bots/api#orderinfo. More...
 
struct  PassportData
 Describes Telegram Passport data shared with the bot by the user. https://core.telegram.org/bots/api#passportdata. More...
 
struct  PassportElementError
 This object represents an error in the Telegram Passport element which was submitted that should be resolved by the user. It should be one of: More...
 
struct  PassportElementErrorDataField
 Represents an issue in one of the data fields that was provided by the user. The error is considered resolved when the field's value changes. https://core.telegram.org/bots/api#passportelementerrordatafield. More...
 
struct  PassportElementErrorFrontSide
 Represents an issue with the front side of a document. The error is considered resolved when the file with the front side of the document changes. https://core.telegram.org/bots/api#passportelementerrorfrontside. More...
 
struct  PassportElementErrorReverseSide
 Represents an issue with the reverse side of a document. The error is considered resolved when the file with reverse side of the document changes. https://core.telegram.org/bots/api#passportelementerrorreverseside. More...
 
struct  PassportElementErrorSelfie
 Represents an issue with the selfie with a document. The error is considered resolved when the file with the selfie changes. https://core.telegram.org/bots/api#passportelementerrorselfie. More...
 
struct  PassportElementErrorFile
 Represents an issue with a document scan. The error is considered resolved when the file with the document scan changes. https://core.telegram.org/bots/api#passportelementerrorfile. More...
 
struct  PassportElementErrorFiles
 Represents an issue with a list of scans. The error is considered resolved when the list of files containing the scans changes. https://core.telegram.org/bots/api#passportelementerrorfiles. More...
 
struct  PassportElementErrorTranslationFile
 Represents an issue with one of the files that constitute the translation of a document. The error is considered resolved when the file changes. https://core.telegram.org/bots/api#passportelementerrortranslationfile. More...
 
struct  PassportElementErrorTranslationFiles
 Represents an issue with the translated version of a document. The error is considered resolved when a file with the document translation change. https://core.telegram.org/bots/api#passportelementerrortranslationfiles. More...
 
struct  PassportElementErrorUnspecified
 Represents an issue in an unspecified place. The error is considered resolved when new data is added. https://core.telegram.org/bots/api#passportelementerrorunspecified. More...
 
struct  PassportFile
 This object represents a file uploaded to Telegram Passport. Currently all Telegram Passport files are in JPEG format when decrypted and don't exceed 10MB. https://core.telegram.org/bots/api#passportfile. More...
 
struct  PhotoSize
 This object represents one size of a photo or a file / sticker thumbnail. https://core.telegram.org/bots/api#photosize. More...
 
struct  Poll
 This object contains information about a poll. https://core.telegram.org/bots/api#poll. More...
 
struct  PollAnswer
 This object represents an answer of a user in a non-anonymous poll. https://core.telegram.org/bots/api#pollanswer. More...
 
struct  PollOption
 This object contains information about one answer option in a poll. https://core.telegram.org/bots/api#polloption. More...
 
struct  PreCheckoutQuery
 This object contains information about an incoming pre-checkout query. https://core.telegram.org/bots/api#precheckoutquery. More...
 
struct  ProximityAlertTriggered
 This object represents the content of a service message, sent whenever a user in the chat triggers a proximity alert set by another user. https://core.telegram.org/bots/api#proximityalerttriggered. More...
 
struct  ReactionCount
 Represents a reaction added to a message along with the number of times it was added. https://core.telegram.org/bots/api#reactioncount. More...
 
struct  ReactionType
 This object describes the type of a reaction. Currently, it can be one of: More...
 
struct  ReactionTypeEmoji
 The reaction is based on an emoji. https://core.telegram.org/bots/api#reactiontypeemoji. More...
 
struct  ReactionTypeCustomEmoji
 The reaction is based on a custom emoji. https://core.telegram.org/bots/api#reactiontypecustomemoji. More...
 
struct  ReplyKeyboardMarkup
 This object represents a custom keyboard with reply options (see Introduction to bots for details and examples). https://core.telegram.org/bots/api#replykeyboardmarkup. More...
 
struct  ReplyKeyboardRemove
 Upon receiving a message with this object, Telegram clients will remove the current custom keyboard and display the default letter-keyboard. By default, custom keyboards are displayed until a new keyboard is sent by a bot. An exception is made for one-time keyboards that are hidden immediately after the user presses a button (see ReplyKeyboardMarkup). https://core.telegram.org/bots/api#replykeyboardremove. More...
 
struct  ReplyParameters
 Describes reply parameters for the message that is being sent. https://core.telegram.org/bots/api#replyparameters. More...
 
struct  SentWebAppMessage
 Describes an inline message sent by a Web App on behalf of a user. https://core.telegram.org/bots/api#story. More...
 
struct  ShippingAddress
 This object represents a shipping address. https://core.telegram.org/bots/api#shippingaddress. More...
 
struct  ShippingOption
 This object represents one shipping option. https://core.telegram.org/bots/api#shippingoption. More...
 
struct  ShippingQuery
 This object contains information about an incoming shipping query. https://core.telegram.org/bots/api#shippingquery. More...
 
struct  Sticker
 This object represents a sticker. https://core.telegram.org/bots/api#sticker. More...
 
struct  StickerSet
 This object represents a sticker set. https://core.telegram.org/bots/api#stickerset. More...
 
struct  Story
 This object represents a message about a forwarded story in the chat. Currently holds no information. https://core.telegram.org/bots/api#story. More...
 
struct  SuccessfulPayment
 This object contains basic information about a successful payment. https://core.telegram.org/bots/api#successfulpayment. More...
 
struct  SwitchInlineQueryChosenChat
 This object represents an inline button that switches the current user to inline mode in a chosen chat, with an optional default inline query. https://core.telegram.org/bots/api#switchinlinequerychosenchat. More...
 
struct  Update
 This object represents an incoming update. At most one of the optional parameters can be present in any given update. https://core.telegram.org/bots/api#update. More...
 
struct  User
 This object represents a Telegram user or bot. https://core.telegram.org/bots/api#user. More...
 
struct  UserProfilePhotos
 This object represent a user's profile pictures. https://core.telegram.org/bots/api#userprofilephotos. More...
 
struct  UserShared
 This object contains information about the user whose identifier was shared with the bot using a KeyboardButtonRequestUser button. https://core.telegram.org/bots/api#usershared. More...
 
struct  Venue
 This object represents a venue. https://core.telegram.org/bots/api#venue. More...
 
struct  Video
 This object represents a video file. https://core.telegram.org/bots/api#video. More...
 
struct  VideoChatEnded
 This object represents a service message about a video chat ended in the chat. https://core.telegram.org/bots/api#videochatended. More...
 
struct  VideoChatParticipantsInvited
 This object represents a service message about new members invited to a video chat. https://core.telegram.org/bots/api#videochatparticipantsinvited. More...
 
struct  VideoChatScheduled
 This object represents a service message about a video chat scheduled in the chat. https://core.telegram.org/bots/api#videochatscheduled. More...
 
struct  VideoChatStarted
 This object represents a service message about a video chat started in the chat. Currently holds no information. https://core.telegram.org/bots/api#videochatstarted. More...
 
struct  VideoNote
 This object represents a video message (available in Telegram apps as of v.4.0). https://core.telegram.org/bots/api#videonote. More...
 
struct  Voice
 This object represents a voice note. https://core.telegram.org/bots/api#voice. More...
 
struct  WebAppData
 Describes data sent from a Web App to the bot. https://core.telegram.org/bots/api#webappdata. More...
 
struct  WebAppInfo
 Describes a Web App. https://core.telegram.org/bots/api#webappinfo. More...
 
struct  WebhookInfo
 Describes the current status of a webhook. https://core.telegram.org/bots/api#webhookinfo. More...
 
struct  WriteAccessAllowed
 This object represents a service message about a user allowing a bot to write messages after adding it to the attachment menu, launching a Web App from a link, or accepting an explicit request from a Web App sent by the method requestWriteAccess. https://core.telegram.org/bots/api#writeaccessallowed. More...
 
struct  isPtr
 
struct  isPtr< Ptr< T > >
 
struct  isPtr< CPtr< T > >
 
struct  isPtr< PtrC< T > >
 
struct  isPtr< CPtrC< T > >
 

Typedefs

template<typename T >
using Ptr = std::shared_ptr< T >
 
template<typename T >
using CPtr = const std::shared_ptr< T >
 
template<typename T >
using PtrC = std::shared_ptr< const T >
 
template<typename T >
using CPtrC = const std::shared_ptr< const T >
 

Enumerations

enum class  ErrorCode : std::int32_t {
  OTHER = 0 , SEE_OTHER = cpr::status::HTTP_SEE_OTHER , BAD_REQUEST = cpr::status::HTTP_BAD_REQUEST , UNAUTHORIZED = cpr::status::HTTP_UNAUTHORIZED ,
  FORBIDDEN = cpr::status::HTTP_FORBIDDEN , NOT_FOUND = cpr::status::HTTP_NOT_FOUND , NOT_ACCEPTABLE = cpr::status::HTTP_NOT_ACCEPTABLE , FLOOD = 420 ,
  CONFLICT = cpr::status::HTTP_CONFLICT , TOO_MANY_REQUESTS = cpr::status::HTTP_TOO_MANY_REQUESTS , BAD_GATEWAY = cpr::status::HTTP_BAD_GATEWAY , INTERNAL = cpr::status::HTTP_INTERNAL_SERVER_ERROR
}
 https://core.telegram.org/api/errors More...
 

Functions

static std::ostream & operator<< (std::ostream &os, const ErrorCode &errorCode) noexcept
 
static bool isErrorCode (std::int32_t c) noexcept
 
template<typename T , typename ... Args>
static Ptr< T > makePtr (Args &&... args)
 

Typedef Documentation

◆ CPtr

template<typename T >
using tgbotxx::CPtr = typedef const std::shared_ptr<T>

Definition at line 9 of file Ptr.hpp.

◆ CPtrC

template<typename T >
using tgbotxx::CPtrC = typedef const std::shared_ptr<const T>

Definition at line 15 of file Ptr.hpp.

◆ Ptr

template<typename T >
using tgbotxx::Ptr = typedef std::shared_ptr<T>

Definition at line 6 of file Ptr.hpp.

◆ PtrC

template<typename T >
using tgbotxx::PtrC = typedef std::shared_ptr<const T>

Definition at line 12 of file Ptr.hpp.

Enumeration Type Documentation

◆ ErrorCode

enum tgbotxx::ErrorCode : std::int32_t
strong

https://core.telegram.org/api/errors

Enumerator
OTHER 

Other error codes non Telegram Api related (such as https requests failures, json parsing errors..) More information will be provided with Exception message

SEE_OTHER 

The request must be repeated, but directed to a different data center.

BAD_REQUEST 

The query contains errors. In the event that a request was created using a form and contains user generated data, the user should be notified that the data must be corrected before the query is repeated.

UNAUTHORIZED 

There was an unauthorized attempt to use functionality available only to authorized users.

FORBIDDEN 

Privacy violation. For example, an attempt to write a message to someone who has blacklisted the current user.

NOT_FOUND 

An attempt to invoke a non-existent object, such as a method.

NOT_ACCEPTABLE 

Similar to 400 BAD_REQUEST, but the app must display the error to the user a bit differently.

FLOOD 

The maximum allowed number of attempts to invoke the given method with the given input parameters has been exceeded. For example, in an attempt to request a large number of text messages (SMS) for the same phone number. Error Example: FLOOD_WAIT_X: A wait of X seconds is required (where X is a number)

CONFLICT 

Conflict: terminated by other long poll or webhook.

TOO_MANY_REQUESTS 

Too Many Requests: retry after X.

BAD_GATEWAY 

Bad Gateway.

INTERNAL 

An internal server error occurred while a request was being processed; for example, there was a disruption while accessing a database or file storage. If a client receives a 500 error, or you believe this error should not have occurred, please collect as much information as possible about the query and error and send it to the developers.

Definition at line 8 of file Exception.hpp.

Function Documentation

◆ isErrorCode()

static bool tgbotxx::isErrorCode ( std::int32_t  c)
staticnoexcept

Definition at line 70 of file Exception.hpp.

◆ makePtr()

template<typename T , typename ... Args>
static Ptr<T> tgbotxx::makePtr ( Args &&...  args)
static

Definition at line 31 of file Ptr.hpp.

◆ operator<<()

static std::ostream& tgbotxx::operator<< ( std::ostream &  os,
const ErrorCode errorCode 
)
staticnoexcept

Definition at line 52 of file Exception.hpp.