Versions in this module Expand all Collapse all v1 v1.1.0 Dec 15, 2025 v1.0.0 Dec 13, 2025 Changes in this version type Dialog + GetStateData func() *T + type StepID string v0 v0.0.4 Dec 24, 2025 v0.0.3 Dec 20, 2025 v0.0.2 Dec 19, 2025 Changes in this version + const DialogStartActionArgKey v0.0.1 Dec 18, 2025 Changes in this version + const CloseButtonCallbackData + var ErrDialogQuestionNotFound = errors.New("Отсутствует вопрос для текущего шага.") + var ErrDialogStepNotFound = errors.New("Не удалось получить шаг диалога.") + var ErrMediaIsNotAllowed = errors.New(...) + var ErrMediaTypeIsNotAllowed = errors.New("Данный тип медиа-файла не поддерживается.") + var ErrOnlyCallbackData = errors.New("В ответе поддерживаются только кнопки.") + var ErrOnlyDialogButtons = errors.New(...) + var ErrOnlyMediaIsAllowed = errors.New(...) + var ErrOnlyText = errors.New("В ответе поддерживается только текст.") + func ConvertKeyboardToTelego(localKeyboard *InlineKeyboardMarkup) *telego.InlineKeyboardMarkup + func InlineKeyboardRows(rows int, btns ...InlineKeyboardButton) [][]InlineKeyboardButton + type CallbackData struct + Data string + DataArgs map[string]string + IsBack bool + IsCancel bool + IsDialog bool + IsDialogStartAction bool + IsDynamicListConfirmAction bool + IsDynamicListNavigationAction bool + Page int + Raw string + func (c *CallbackData) Unmarshal(data string) error + func (c CallbackData) JSON() string + type Dialog interface + AddStep func(params *StepParams) + DynamicListAll func(isMultipleSelect bool, buttonsPerRow int, maxButtonsInView int, ...) *Keyboard + DynamicListPage func(isMultipleSelect bool, buttonsPerRow int, itemsPerPage int, ...) *Keyboard + GetInitialCallbackDataArgs func() map[string]string + Router func(ctx context.Context, update any) *Response + func NewDialog() Dialog + type DynamicListButton struct + CallbackData string + Text string + type Entry interface + Router func(ctx context.Context, update any) *Response + type InlineKeyboardButton struct + CallbackData string + Text string + URL string + func InlineButtonWithCallbackData(text string, callbackData string) InlineKeyboardButton + func InlineButtonWithURL(text string, url string) InlineKeyboardButton + func SkipButton(toStepID int) InlineKeyboardButton + type InlineKeyboardMarkup struct + InlineKeyboard [][]InlineKeyboardButton + func InlineKeyboardGrid(rows [][]InlineKeyboardButton) *InlineKeyboardMarkup + type Input struct + Data string + EntitiesJSONString string + IsCallback bool + IsMessage bool + Media []Media + MultipleSelectData map[string]string + type Keyboard struct + InlineKeyboardMarkup *InlineKeyboardMarkup + func GetCloseButton() *Keyboard + func GetSkipButtonKeyboard(toStepID int) *Keyboard + func WithInlineKeyboard(inlineKeyboardMarkup *InlineKeyboardMarkup) *Keyboard + func (k *Keyboard) GetInlineKeyboardMarkup() *InlineKeyboardMarkup + type Media struct + Emoji string + FileID string + FileSize int64 + Type MediaType + TypeHuman string + func ParseTelegoMedia(update telego.Update) *Media + type MediaParams struct + AllowMedia bool + AllowedMediaTypes []MediaType + MaxMediaCount int + MaxMediaSizeKb int + func WithMedia() *MediaParams + func (smp *MediaParams) AllowAnimations() *MediaParams + func (smp *MediaParams) AllowAudios() *MediaParams + func (smp *MediaParams) AllowDocuments() *MediaParams + func (smp *MediaParams) AllowPhotos() *MediaParams + func (smp *MediaParams) AllowStickers() *MediaParams + func (smp *MediaParams) AllowVideoNotes() *MediaParams + func (smp *MediaParams) AllowVideos() *MediaParams + func (smp *MediaParams) AllowVoices() *MediaParams + func (smp *MediaParams) SetMaxMediaCount(count int) *MediaParams + func (smp *MediaParams) SetMaxMediaSizeKB(sizeKB int) *MediaParams + type MediaType string + type OnInputResponse struct + ForceNextStepID int + type Response struct + CurrentStepInt int + EndDialog bool + Error error + InitialMessageID int + IsCanceled bool + Keyboard *Keyboard + Text string + type StepParams struct + MediaParams *MediaParams + OnComplete func(ctx context.Context) (string, *Keyboard, error) + OnInput func(ctx context.Context, input *Input) (OnInputResponse, error) + OnStart func(ctx context.Context) (string, *Keyboard, error) + OnlyCallbackData bool + OnlyMedia bool + OnlyText bool + StepID int + type Update struct + CallbackData CallbackData + Context context.Context + EntitiesJSONString string + Media *Media + MessageID int + MessageText string + TelegramID int64 + func ParseUpdate(ctx context.Context, update any) (*Update, error)