You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
telebot/options.go

77 lines
2.5 KiB
Go

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

package telebot
// Option is a shorcut flag for certain SendOptions.
type Option int
const (
// SendOptions.DisableWebPagePreview
NoPreview Option = iota
// SendOptions.DisableNotification
Silent
// ReplyMarkup.ForceReply
ForceReply
// ReplyMarkup.OneTimeKeyboard
OneTimeKeyboard
)
// SendOptions represents a set of custom options that could
// be appled to messages sent.
type SendOptions struct {
// If the message is a reply, original message.
ReplyTo *Message `json:"omitempty"`
// See ReplyMarkup struct definition.
ReplyMarkup *ReplyMarkup `json:"omitempty"`
// For text messages, disables previews for links in this message.
DisableWebPagePreview bool `json:"omitempty"`
// Sends the message silently. iOS users will not receive a notification, Android users will receive a notification with no sound.
DisableNotification bool `json:"omitempty"`
// ParseMode controls how client apps render your message.
ParseMode ParseMode `json:"omitempty"`
}
// ReplyMarkup specifies convenient options for bot-user communications.
type ReplyMarkup struct {
// ForceReply forces Telegram clients to display
// a reply interface to the user (act as if the user
// has selected the bots message and tapped "Reply").
ForceReply bool `json:"force_reply,omitempty"`
// InlineKeyboard is a grid of InlineButtons displayed in the message.
//
// Note: DO NOT confuse with ReplyKeyboard and other keyboard properties!
InlineKeyboard [][]InlineButton `json:"inline_keyboard,omitempty"`
// ReplyKeyboard is a grid, consisting of keyboard buttons.
//
// Note: you don't need to set HideCustomKeyboard field to show custom keyboard.
ReplyKeyboard [][]KeyboardButton `json:"keyboard,omitempty"`
// Requests clients to resize the keyboard vertically for optimal fit
// (e.g. make the keyboard smaller if there are just two rows of buttons).
//
// Defaults to false, in which case the custom keyboard is always of the
// same height as the app's standard keyboard.
ResizeReplyKeyboard bool `json:"resize_keyboard,omitempty"`
// Requests clients to hide the reply keyboard as soon as it's been used.
//
// Defaults to false.
OneTimeKeyboard bool `json:"one_time_keyboard,omitempty"`
// Use this param if you want to force reply from
// specific users only.
//
// Targets:
// 1) Users that are @mentioned in the text of the Message object;
// 2) If the bot's message is a reply (has SendOptions.ReplyTo),
// sender of the original message.
Selective bool `json:"selective,omitempty"`
}