KeyboardButton constructor
const
KeyboardButton({
- @JsonKey(name: 'text') required String text,
- @JsonKey(name: 'request_contact') bool? requestContact,
- @JsonKey(name: 'request_location') bool? requestLocation,
- @JsonKey(name: 'request_poll') KeyboardButtonPollType? requestPoll,
- @JsonKey(name: 'web_app') WebAppInfo? webApp,
- @JsonKey(name: 'request_user') KeyboardButtonRequestUsers? requestUsers,
- @JsonKey(name: 'request_chat') KeyboardButtonRequestChat? requestChat,
Creates a new KeyboardButton with the specified text
.
text
Text of the button. If none of the optional fields are used, it will be sent as a message when the button is pressedrequestContact
If True, the user's phone number will be sent as a contact when the button is pressed. Available in private chats onlyrequestLocation
If True, the user's current location will be sent when the button is pressed. Available in private chats only.requestPoll
If specified, the user will be asked to create a poll and send it to the bot when the button is pressed. Available in private chats only.webApp
If specified, the described Web App will be launched when the button is pressed. The Web App will be able to send a "web_app_data" service message. Available in private chats only.requestUsers
If specified, pressing the button will open a list of suitable users. Tapping on any user will send their identifier to the bot in a "user_shared" service message. Available in private chats only.requestChat
If specified, pressing the button will open a list of suitable chats. Tapping on a chat will send its identifier to the bot in a "chat_shared" service message. Available in private chats only.
Implementation
const factory KeyboardButton({
/// Text of the button. If none of the optional fields are used, it will be
/// sent as a message when the button is pressed
@JsonKey(name: 'text') required String text,
/// Optional. If True, the user's phone number will be sent as a contact
/// when the button is pressed. Available in private chats only
///
/// Note: request_contact and request_location options will only work in
/// Telegram versions released after 9 April, 2016. Older clients will
/// display unsupported message.
@JsonKey(name: 'request_contact') bool? requestContact,
/// Optional. If True, the user's current location will be sent when the
/// button is pressed. Available in private chats only.
@JsonKey(name: 'request_location') bool? requestLocation,
/// Optional. If specified, the user will be asked to create a poll and send
/// it to the bot when the button is pressed. Available in private chats
/// only.
///
/// Note: request_poll option will only work in Telegram versions released
/// after 23 January, 2020. Older clients will display unsupported message.
@JsonKey(name: 'request_poll') KeyboardButtonPollType? requestPoll,
/// Optional. If specified, the described Web App will be launched when the
/// button is pressed. The Web App will be able to send a "web_app_data"
/// service message. Available in private chats only.
///
/// Note: web_app option will only work in Telegram versions released after
/// 16 April, 2022. Older clients will display unsupported message.
@JsonKey(name: 'web_app') WebAppInfo? webApp,
/// Optional. If specified, pressing the button will open a list of suitable
/// users. Tapping on any user will send their identifier to the bot in a
/// "user_shared" service message. Available in private chats only.
///
/// Since: Bot API 6.5
@JsonKey(name: 'request_user') KeyboardButtonRequestUsers? requestUsers,
/// Optional. If specified, pressing the button will open a list of suitable
/// chats. Tapping on a chat will send its identifier to the bot in a
/// "chat_shared" service message. Available in private chats only.
///
/// Since: Bot API 6.5
@JsonKey(name: 'request_chat') KeyboardButtonRequestChat? requestChat,
}) = _KeyboardButton;