1
bot/models/inline_query.go
Andrew Privalov 934a13aa87
api 8.2 (#144)
* api 8.2

* fix readme
2025-01-10 11:11:35 +03:00

687 lines
28 KiB
Go

package models
import (
"encoding/json"
)
// InlineQuery https://core.telegram.org/bots/api#inlinequery
type InlineQuery struct {
ID string `json:"id"`
From *User `json:"from"`
Query string `json:"query"`
Offset string `json:"offset"`
ChatType string `json:"chat_type,omitempty"`
Location *Location `json:"location,omitempty"`
}
// AnswerInlineQuery https://core.telegram.org/bots/api#answerinlinequery
type AnswerInlineQuery struct {
InlineQueryID string `json:"inline_query_id"`
Results []InlineQueryResult `json:"results"`
CacheTime int `json:"cache_time,omitempty"`
IsPersonal bool `json:"is_personal,omitempty"`
NextOffset string `json:"next_offset,omitempty"`
SwitchPmText string `json:"switch_pm_text,omitempty"`
SwitchPmParameter string `json:"switch_pm_parameter,omitempty"`
}
// InlineQueryResultsButton https://core.telegram.org/bots/api#inlinequeryresultsbutton
type InlineQueryResultsButton struct {
Text string `json:"text"`
WebApp *WebAppInfo `json:"web_app"`
StartParameter string `json:"start_parameter,omitempty"`
}
// InlineQueryResult https://core.telegram.org/bots/api#inlinequeryresult
type InlineQueryResult interface {
inlineQueryResultTag()
MarshalCustom() ([]byte, error)
}
// InlineQueryResultArticle https://core.telegram.org/bots/api#inlinequeryresultarticle
type InlineQueryResultArticle struct {
ID string `json:"id"`
Title string `json:"title,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
URL string `json:"url,omitempty"`
Description string `json:"description,omitempty"`
ThumbnailURL string `json:"thumbnail_url,omitempty"`
ThumbnailWidth int `json:"thumbnail_width,omitempty"`
ThumbnailHeight int `json:"thumbnail_height,omitempty"`
}
func (*InlineQueryResultArticle) inlineQueryResultTag() {}
func (m *InlineQueryResultArticle) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultArticle
}{
Type: "article",
InlineQueryResultArticle: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultPhoto https://core.telegram.org/bots/api#inlinequeryresultphoto
type InlineQueryResultPhoto struct {
ID string `json:"id"`
PhotoURL string `json:"photo_url"`
ThumbnailURL string `json:"thumbnail_url"`
PhotoWidth int `json:"photo_width,omitempty"`
PhotoHeight int `json:"photo_height,omitempty"`
Title string `json:"title,omitempty"`
Description string `json:"description,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultPhoto) inlineQueryResultTag() {}
func (m *InlineQueryResultPhoto) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultPhoto
}{
Type: "photo",
InlineQueryResultPhoto: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultGif https://core.telegram.org/bots/api#inlinequeryresultgif
type InlineQueryResultGif struct {
ID string `json:"id"`
GifURL string `json:"gif_url"`
GifWidth int `json:"gif_width,omitempty"`
GifHeight int `json:"gif_height,omitempty"`
GifDuration int `json:"gif_duration,omitempty"`
ThumbnailURL string `json:"thumbnail_url"`
ThumbnailMimeType string `json:"thumbnail_mime_type,omitempty"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultGif) inlineQueryResultTag() {}
func (m *InlineQueryResultGif) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultGif
}{
Type: "gif",
InlineQueryResultGif: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultMpeg4Gif https://core.telegram.org/bots/api#inlinequeryresultmpeg4gif
type InlineQueryResultMpeg4Gif struct {
ID string `json:"id"`
Mpeg4URL string `json:"mpeg4_url"`
Mpeg4Width int `json:"mpeg4_width,omitempty"`
Mpeg4Height int `json:"mpeg4_height,omitempty"`
Mpeg4Duration int `json:"mpeg4_duration,omitempty"`
ThumbnailURL string `json:"thumbnail_url"`
ThumbnailMimeType string `json:"thumbnail_mime_type,omitempty"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultMpeg4Gif) inlineQueryResultTag() {}
func (m *InlineQueryResultMpeg4Gif) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultMpeg4Gif
}{
Type: "mpeg4_gif",
InlineQueryResultMpeg4Gif: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultVideo https://core.telegram.org/bots/api#inlinequeryresultvideo
type InlineQueryResultVideo struct {
ID string `json:"id"`
VideoURL string `json:"video_url"`
MimeType string `json:"mime_type,omitempty"`
ThumbnailURL string `json:"thumbnail_url"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
VideoWidth int `json:"video_width,omitempty"`
VideoHeight int `json:"video_height,omitempty"`
VideoDuration int `json:"video_duration,omitempty"`
Description string `json:"description,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultVideo) inlineQueryResultTag() {}
func (m *InlineQueryResultVideo) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultVideo
}{
Type: "video",
InlineQueryResultVideo: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultAudio https://core.telegram.org/bots/api#inlinequeryresultaudio
type InlineQueryResultAudio struct {
ID string `json:"id"`
AudioURL string `json:"audio_url"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
Performer string `json:"performer,omitempty"`
AudioDuration int `json:"audio_duration,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultAudio) inlineQueryResultTag() {}
func (m *InlineQueryResultAudio) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultAudio
}{
Type: "audio",
InlineQueryResultAudio: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultVoice https://core.telegram.org/bots/api#inlinequeryresultvoice
type InlineQueryResultVoice struct {
ID string `json:"id"`
VoiceURL string `json:"voice_url"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
VoiceDuration int `json:"voice_duration,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultVoice) inlineQueryResultTag() {}
func (m *InlineQueryResultVoice) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultVoice
}{
Type: "voice",
InlineQueryResultVoice: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultDocument https://core.telegram.org/bots/api#inlinequeryresultdocument
type InlineQueryResultDocument struct {
ID string `json:"id"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
DocumentURL string `json:"document_url"`
MimeType string `json:"mime_type"`
Description string `json:"description,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
ThumbnailURL string `json:"thumbnail_url,omitempty"`
ThumbnailWidth int `json:"thumbnail_width,omitempty"`
ThumbnailHeight int `json:"thumbnail_height,omitempty"`
}
func (*InlineQueryResultDocument) inlineQueryResultTag() {}
func (m *InlineQueryResultDocument) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultDocument
}{
Type: "document",
InlineQueryResultDocument: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultLocation https://core.telegram.org/bots/api#inlinequeryresultlocation
type InlineQueryResultLocation struct {
ID string `json:"id"`
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
Title string `json:"title,omitempty"`
HorizontalAccuracy float64 `json:"horizontal_accuracy,omitempty"`
LivePeriod int `json:"live_period,omitempty"`
Heading int `json:"heading,omitempty"`
ProximityAlertRadius int `json:"proximity_alert_radius,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
ThumbnailURL string `json:"thumbnail_url,omitempty"`
ThumbnailWidth int `json:"thumbnail_width,omitempty"`
ThumbnailHeight int `json:"thumbnail_height,omitempty"`
}
func (*InlineQueryResultLocation) inlineQueryResultTag() {}
func (m *InlineQueryResultLocation) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultLocation
}{
Type: "location",
InlineQueryResultLocation: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultVenue https://core.telegram.org/bots/api#inlinequeryresultvenue
type InlineQueryResultVenue struct {
ID string `json:"id"`
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
Title string `json:"title,omitempty"`
Address string `json:"address"`
FoursquareID string `json:"foursquare_id,omitempty"`
FoursquareType string `json:"foursquare_type,omitempty"`
GooglePlaceID string `json:"google_place_id,omitempty"`
GooglePlaceType string `json:"google_place_type,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
ThumbnailURL string `json:"thumbnail_url,omitempty"`
ThumbnailWidth int `json:"thumbnail_width,omitempty"`
ThumbnailHeight int `json:"thumbnail_height,omitempty"`
}
func (*InlineQueryResultVenue) inlineQueryResultTag() {}
func (m *InlineQueryResultVenue) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultVenue
}{
Type: "venue",
InlineQueryResultVenue: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultContact https://core.telegram.org/bots/api#inlinequeryresultcontact
type InlineQueryResultContact struct {
ID string `json:"id"`
PhoneNumber string `json:"phone_number"`
FirstName string `json:"first_name"`
LastName string `json:"last_name,omitempty"`
VCard string `json:"vcard,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
ThumbnailURL string `json:"thumbnail_url,omitempty"`
ThumbnailWidth int `json:"thumbnail_width,omitempty"`
ThumbnailHeight int `json:"thumbnail_height,omitempty"`
}
func (*InlineQueryResultContact) inlineQueryResultTag() {}
func (m *InlineQueryResultContact) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultContact
}{
Type: "contact",
InlineQueryResultContact: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultGame https://core.telegram.org/bots/api#inlinequeryresultgame
type InlineQueryResultGame struct {
ID string `json:"id"`
GameShortName string `json:"game_short_name"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
}
func (*InlineQueryResultGame) inlineQueryResultTag() {}
func (m *InlineQueryResultGame) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultGame
}{
Type: "game",
InlineQueryResultGame: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedPhoto https://core.telegram.org/bots/api#inlinequeryresultcachedphoto
type InlineQueryResultCachedPhoto struct {
ID string `json:"id"`
PhotoFileID string `json:"photo_file_id"`
Title string `json:"title,omitempty"`
Description string `json:"description,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedPhoto) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedPhoto) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedPhoto
}{
Type: "photo",
InlineQueryResultCachedPhoto: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedGif https://core.telegram.org/bots/api#inlinequeryresultcachedgif
type InlineQueryResultCachedGif struct {
ID string `json:"id"`
GifFileID string `json:"gif_file_id"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedGif) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedGif) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedGif
}{
Type: "gif",
InlineQueryResultCachedGif: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedMpeg4Gif https://core.telegram.org/bots/api#inlinequeryresultcachedmpeg4gif
type InlineQueryResultCachedMpeg4Gif struct {
ID string `json:"id"`
Mpeg4FileID string `json:"mpeg4_file_id"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedMpeg4Gif) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedMpeg4Gif) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedMpeg4Gif
}{
Type: "mpeg4_gif",
InlineQueryResultCachedMpeg4Gif: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedSticker https://core.telegram.org/bots/api#inlinequeryresultcachedsticker
type InlineQueryResultCachedSticker struct {
ID string `json:"id"`
StickerFileID string `json:"sticker_file_id"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedSticker) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedSticker) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedSticker
}{
Type: "sticker",
InlineQueryResultCachedSticker: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedDocument https://core.telegram.org/bots/api#inlinequeryresultcacheddocument
type InlineQueryResultCachedDocument struct {
ID string `json:"id"`
Title string `json:"title,omitempty"`
DocumentFileID string `json:"document_file_id"`
Description string `json:"description,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedDocument) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedDocument) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedDocument
}{
Type: "document",
InlineQueryResultCachedDocument: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedVideo https://core.telegram.org/bots/api#inlinequeryresultcachedvideo
type InlineQueryResultCachedVideo struct {
ID string `json:"id"`
VideoFileID string `json:"video_file_id"`
Title string `json:"title,omitempty"`
Description string `json:"description,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ShowCaptionAboveMedia bool `json:"show_caption_above_media,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedVideo) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedVideo) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedVideo
}{
Type: "video",
InlineQueryResultCachedVideo: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedVoice https://core.telegram.org/bots/api#inlinequeryresultcachedvoice
type InlineQueryResultCachedVoice struct {
ID string `json:"id"`
VoiceFileID string `json:"voice_file_id"`
Title string `json:"title,omitempty"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedVoice) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedVoice) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedVoice
}{
Type: "voice",
InlineQueryResultCachedVoice: m,
}
return json.Marshal(&ret)
}
// InlineQueryResultCachedAudio https://core.telegram.org/bots/api#inlinequeryresultcachedaudio
type InlineQueryResultCachedAudio struct {
ID string `json:"id"`
AudioFileID string `json:"audio_file_id"`
Caption string `json:"caption,omitempty"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
CaptionEntities []MessageEntity `json:"caption_entities,omitempty"`
ReplyMarkup ReplyMarkup `json:"reply_markup,omitempty"`
InputMessageContent InputMessageContent `json:"input_message_content,omitempty"`
}
func (*InlineQueryResultCachedAudio) inlineQueryResultTag() {}
func (m *InlineQueryResultCachedAudio) MarshalCustom() ([]byte, error) {
ret := struct {
Type string `json:"type"`
*InlineQueryResultCachedAudio
}{
Type: "audio",
InlineQueryResultCachedAudio: m,
}
return json.Marshal(&ret)
}
// InputMessageContent https://core.telegram.org/bots/api#inputmessagecontent
type InputMessageContent interface {
inputMessageContentTag()
}
// InputTextMessageContent https://core.telegram.org/bots/api#inputtextmessagecontent
type InputTextMessageContent struct {
MessageText string `json:"message_text"`
ParseMode ParseMode `json:"parse_mode,omitempty"`
Entities []MessageEntity `json:"entities,omitempty"`
LinkPreviewOptions *LinkPreviewOptions `json:"link_preview_options,omitempty"`
}
func (InputTextMessageContent) inputMessageContentTag() {}
// InputLocationMessageContent https://core.telegram.org/bots/api#inputlocationmessagecontent
type InputLocationMessageContent struct {
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
HorizontalAccuracy float64 `json:"horizontal_accuracy,omitempty"`
LivePeriod int `json:"live_period,omitempty"`
Heading int `json:"heading,omitempty"`
ProximityAlertRadius int `json:"proximity_alert_radius,omitempty"`
}
func (InputLocationMessageContent) inputMessageContentTag() {}
// InputVenueMessageContent https://core.telegram.org/bots/api#inputvenuemessagecontent
type InputVenueMessageContent struct {
Latitude float64 `json:"latitude"`
Longitude float64 `json:"longitude"`
Title string `json:"title"`
Address string `json:"address"`
FoursquareID string `json:"foursquare_id,omitempty"`
FoursquareType string `json:"foursquare_type,omitempty"`
GooglePlaceID string `json:"google_place_id,omitempty"`
GooglePlaceType string `json:"google_place_type,omitempty"`
}
func (InputVenueMessageContent) inputMessageContentTag() {}
// InputContactMessageContent https://core.telegram.org/bots/api#inputcontactmessagecontent
type InputContactMessageContent struct {
PhoneNumber string `json:"phone_number"`
FirstName string `json:"first_name"`
LastName string `json:"last_name,omitempty"`
VCard string `json:"vcard,omitempty"`
}
func (InputContactMessageContent) inputMessageContentTag() {}
// LabeledPrice https://core.telegram.org/bots/api#labeledprice
type LabeledPrice struct {
Label string `json:"label"`
Amount int `json:"amount"`
}
// InputInvoiceMessageContent https://core.telegram.org/bots/api#inputinvoicemessagecontent
type InputInvoiceMessageContent struct {
Title string `json:"title"`
Description string `json:"description"`
Payload string `json:"payload"`
ProviderToken string `json:"provider_token,omitempty"`
Currency string `json:"currency"`
Prices []LabeledPrice `json:"prices"`
MaxTipAmount int `json:"max_tip_amount,omitempty"`
SuggestedTipAmounts []int `json:"suggested_tip_amounts,omitempty"`
ProviderData string `json:"provider_data,omitempty"`
PhotoURL string `json:"photo_url,omitempty"`
PhotoSize int `json:"photo_size,omitempty"`
PhotoWidth int `json:"photo_width,omitempty"`
PhotoHeight int `json:"photo_height,omitempty"`
NeedName bool `json:"need_name,omitempty"`
NeedPhoneNumber bool `json:"need_phone_number,omitempty"`
NeedEmail bool `json:"need_email,omitempty"`
NeedShippingAddress bool `json:"need_shipping_address,omitempty"`
SendPhoneNumberToProvider bool `json:"send_phone_number_to_provider,omitempty"`
SendEmailToProvider bool `json:"send_email_to_provider,omitempty"`
IsFlexible bool `json:"is_flexible,omitempty"`
}
func (InputInvoiceMessageContent) inputMessageContentTag() {}