tgbotxx 1.1.9.2
Telegram Bot C++ Library
Loading...
Searching...
No Matches
tgbotxx::InlineKeyboardButton Struct Reference

This object represents one button of an inline keyboard. Exactly one of the optional fields must be used to specify the type of the button. https://core.telegram.org/bots/api#inlinekeyboardbutton. More...

#include <InlineKeyboardButton.hpp>

Public Member Functions

 InlineKeyboardButton ()=default
 
 InlineKeyboardButton (const nl::json &json)
 
nl::json toJson () const
 Serializes this object to JSON.
 
void fromJson (const nl::json &json)
 Deserializes this object from JSON.
 

Public Attributes

std::string text
 Label text on the button.
 
std::string url
 Optional. HTTP or tg:// URL to be opened when the button is pressed. Links tg://user?id=<user_id> can be used to mention a user by their identifier without using a username, if this is allowed by their privacy settings.
 
std::string callbackData
 Optional. Data to be sent in a callback query to the bot when the button is pressed, 1-64 bytes.
 
Ptr< WebAppInfowebApp
 Optional. Description of the Web App that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery. Available only in private chats between a user and the bot. Not supported for messages sent on behalf of a Telegram Business account.
 
Ptr< LoginUrlloginUrl
 Optional. An HTTPS URL used to automatically authorize the user. Can be used as a replacement for the Telegram Login Widget.
 
std::string switchInlineQuery
 Optional. If set, 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. May be empty, in which case just the bot's username will be inserted. Not supported for messages sent in channel direct messages chats and on behalf of a Telegram Business account.
 
std::string switchInlineQueryCurrentChat
 Optional. If set, pressing the button will insert the bot's username and the specified inline query in the current chat's input field. May be empty, in which case only the bot's username will be inserted. This offers a quick way for the user to open your bot in inline mode in the same chat - good for selecting something from multiple options. Not supported in channels and for messages sent in channel direct messages chats and on behalf of a Telegram Business account.
 
Ptr< SwitchInlineQueryChosenChatswitchInlineQueryChosenChat
 Optional. If set, pressing the button will prompt the user to select one of their chats of the specified type, open that chat and insert the bot's username and the specified inline query in the input field. Not supported for messages sent in channel direct messages chats and on behalf of a Telegram Business account.
 
Ptr< CopyTextButtoncopyText
 Optional. Description of the button that copies the specified text to the clipboard.
 
Ptr< CallbackGamecallbackGame
 Optional. Description of the game that will be launched when the user presses the button.
 
bool pay {}
 Optional. Specify True, to send a Pay button. Substrings “⭐” and “XTR” in the buttons's text will be replaced with a Telegram Star icon.
 

Detailed Description

This object represents one button of an inline keyboard. Exactly one of the optional fields must be used to specify the type of the button. https://core.telegram.org/bots/api#inlinekeyboardbutton.

Definition at line 13 of file InlineKeyboardButton.hpp.

Constructor & Destructor Documentation

◆ InlineKeyboardButton() [1/2]

tgbotxx::InlineKeyboardButton::InlineKeyboardButton ( )
default

◆ InlineKeyboardButton() [2/2]

tgbotxx::InlineKeyboardButton::InlineKeyboardButton ( const nl::json &  json)
inlineexplicit

Definition at line 15 of file InlineKeyboardButton.hpp.

Member Function Documentation

◆ fromJson()

void tgbotxx::InlineKeyboardButton::fromJson ( const nl::json &  json)
inline

Deserializes this object from JSON.

Definition at line 86 of file InlineKeyboardButton.hpp.

◆ toJson()

nl::json tgbotxx::InlineKeyboardButton::toJson ( ) const
inline

Serializes this object to JSON.

Returns
JSON representation of this object

Definition at line 69 of file InlineKeyboardButton.hpp.

Member Data Documentation

◆ callbackData

std::string tgbotxx::InlineKeyboardButton::callbackData

Optional. Data to be sent in a callback query to the bot when the button is pressed, 1-64 bytes.

Definition at line 28 of file InlineKeyboardButton.hpp.

◆ callbackGame

Ptr<CallbackGame> tgbotxx::InlineKeyboardButton::callbackGame

Optional. Description of the game that will be launched when the user presses the button.

Note
: This type of button must always be the first button in the first row.

Definition at line 61 of file InlineKeyboardButton.hpp.

◆ copyText

Ptr<CopyTextButton> tgbotxx::InlineKeyboardButton::copyText

Optional. Description of the button that copies the specified text to the clipboard.

Definition at line 57 of file InlineKeyboardButton.hpp.

◆ loginUrl

Ptr<LoginUrl> tgbotxx::InlineKeyboardButton::loginUrl

Optional. An HTTPS URL used to automatically authorize the user. Can be used as a replacement for the Telegram Login Widget.

Definition at line 37 of file InlineKeyboardButton.hpp.

◆ pay

bool tgbotxx::InlineKeyboardButton::pay {}

Optional. Specify True, to send a Pay button. Substrings “⭐” and “XTR” in the buttons's text will be replaced with a Telegram Star icon.

Note
: This type of button must always be the first button in the first row and can only be used in invoice messages.

Definition at line 65 of file InlineKeyboardButton.hpp.

◆ switchInlineQuery

std::string tgbotxx::InlineKeyboardButton::switchInlineQuery

Optional. If set, 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. May be empty, in which case just the bot's username will be inserted. Not supported for messages sent in channel direct messages chats and on behalf of a Telegram Business account.

Definition at line 43 of file InlineKeyboardButton.hpp.

◆ switchInlineQueryChosenChat

Ptr<SwitchInlineQueryChosenChat> tgbotxx::InlineKeyboardButton::switchInlineQueryChosenChat

Optional. If set, pressing the button will prompt the user to select one of their chats of the specified type, open that chat and insert the bot's username and the specified inline query in the input field. Not supported for messages sent in channel direct messages chats and on behalf of a Telegram Business account.

Definition at line 54 of file InlineKeyboardButton.hpp.

◆ switchInlineQueryCurrentChat

std::string tgbotxx::InlineKeyboardButton::switchInlineQueryCurrentChat

Optional. If set, pressing the button will insert the bot's username and the specified inline query in the current chat's input field. May be empty, in which case only the bot's username will be inserted. This offers a quick way for the user to open your bot in inline mode in the same chat - good for selecting something from multiple options. Not supported in channels and for messages sent in channel direct messages chats and on behalf of a Telegram Business account.

Definition at line 49 of file InlineKeyboardButton.hpp.

◆ text

std::string tgbotxx::InlineKeyboardButton::text

Label text on the button.

Definition at line 20 of file InlineKeyboardButton.hpp.

◆ url

std::string tgbotxx::InlineKeyboardButton::url

Optional. HTTP or tg:// URL to be opened when the button is pressed. Links tg://user?id=<user_id> can be used to mention a user by their identifier without using a username, if this is allowed by their privacy settings.

Definition at line 25 of file InlineKeyboardButton.hpp.

◆ webApp

Ptr<WebAppInfo> tgbotxx::InlineKeyboardButton::webApp

Optional. Description of the Web App that will be launched when the user presses the button. The Web App will be able to send an arbitrary message on behalf of the user using the method answerWebAppQuery. Available only in private chats between a user and the bot. Not supported for messages sent on behalf of a Telegram Business account.

Definition at line 33 of file InlineKeyboardButton.hpp.


The documentation for this struct was generated from the following file: