entryManager

package
v1.0.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 8, 2025 License: GPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrEndGroups      = errors.New("end of groups")
	ErrContinueGroups = errors.New("continue groups")
)

error vars

Functions

This section is empty.

Types

type AllowableUserFilter

type AllowableUserFilter func(id int64) bool

type EntryManager

type EntryManager struct {
	// contains filtered or unexported fields
}

func NewManager

func NewManager(triggers []rune) *EntryManager

func (*EntryManager) AddEntry

func (m *EntryManager) AddEntry(name string, e *entry)

func (*EntryManager) AddHandlers

func (m *EntryManager) AddHandlers(name string, h ...MessageHandler) *entry

func (*EntryManager) AddTriggers

func (m *EntryManager) AddTriggers(t ...rune) []rune

func (*EntryManager) GetEntry

func (m *EntryManager) GetEntry(name string) *entry

func (*EntryManager) GetTriggers

func (m *EntryManager) GetTriggers() []rune

func (*EntryManager) Invoke

func (m *EntryManager) Invoke(container *WotoContainer) (next bool)

func (*EntryManager) IsEmpty

func (m *EntryManager) IsEmpty() bool

func (*EntryManager) RemoveEntry

func (m *EntryManager) RemoveEntry(name string)

func (*EntryManager) SetTriggers

func (m *EntryManager) SetTriggers(t []rune)

func (*EntryManager) ShouldInvoke

func (m *EntryManager) ShouldInvoke(message string) bool

type ManagerGroup

type ManagerGroup []*EntryManager

func (ManagerGroup) TryToRun

func (g ManagerGroup) TryToRun(container *WotoContainer)

type MessageFilter

type MessageFilter func(message *tg.Message) bool

type MessageHandler

type MessageHandler func(container *WotoContainer) error

type UploadDocumentOptions

type UploadDocumentOptions struct {
	ChatID           int64
	FileName         string
	Goroutines       int
	Caption          wotoStyle.WStyle
	ReplyToMessageId int
}

type UploadDocumentToChatsOptions

type UploadDocumentToChatsOptions struct {
	ChatIDs    []int64
	FileName   string
	Goroutines int
	Caption    wotoStyle.WStyle
}

type WotoContainer

type WotoContainer struct {
	TelegramClient *telegram.Client

	OriginMessage  tg.MessageClass
	ServiceMessage *tg.MessageService
	Message        *tg.Message

	//#region: Update fields
	Update                    tg.UpdateClass
	UpdateNewScheduledMessage *tg.UpdateNewScheduledMessage
	UpdateNewChannelMessage   *tg.UpdateNewChannelMessage
	UpdateNewMessage          *tg.UpdateNewMessage
	UpdateEditMessage         *tg.UpdateEditMessage

	Entities   *tg.Entities
	Answerable message.AnswerableMessageUpdate
}

func (*WotoContainer) API

func (c *WotoContainer) API() *tg.Client

func (*WotoContainer) Args

func (c *WotoContainer) Args() *argparser.EventArgs

func (*WotoContainer) Ctx

func (c *WotoContainer) Ctx() context.Context

func (*WotoContainer) EditBoldText

func (c *WotoContainer) EditBoldText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) EditCodeText

func (c *WotoContainer) EditCodeText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) EditItalicText

func (c *WotoContainer) EditItalicText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) EditMonoText

func (c *WotoContainer) EditMonoText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) EditStrikeText

func (c *WotoContainer) EditStrikeText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) EditStyledText

func (c *WotoContainer) EditStyledText(s wotoStyle.WStyle) (tg.UpdatesClass, error)

func (*WotoContainer) EditText

func (c *WotoContainer) EditText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) EditTextf

func (c *WotoContainer) EditTextf(format string, args ...interface{}) (tg.UpdatesClass, error)

func (*WotoContainer) GetAnswerable

func (c *WotoContainer) GetAnswerable() message.AnswerableMessageUpdate

func (*WotoContainer) GetArgs

func (c *WotoContainer) GetArgs() (*argparser.EventArgs, error)

func (*WotoContainer) GetClient

func (c *WotoContainer) GetClient() *telegram.Client

func (*WotoContainer) GetEditBuilder

func (c *WotoContainer) GetEditBuilder() *message.EditMessageBuilder

func (*WotoContainer) GetEffectiveUserID

func (c *WotoContainer) GetEffectiveUserID() int64

GetEffectiveUserID method returns the user-id of the effective user, (for example the person who sent the command/query, etc...)

func (*WotoContainer) GetFullUserById

func (c *WotoContainer) GetFullUserById(userId int64) (*tg.UsersUserFull, error)

func (*WotoContainer) GetMessageText

func (c *WotoContainer) GetMessageText() string

func (*WotoContainer) GetPrefixes

func (c *WotoContainer) GetPrefixes() []rune

func (*WotoContainer) GetReplyBuilder

func (c *WotoContainer) GetReplyBuilder() *message.Builder

func (*WotoContainer) GetSendBuilder

func (c *WotoContainer) GetSendBuilder() *message.RequestBuilder

func (*WotoContainer) GetSenderHelper

func (c *WotoContainer) GetSenderHelper() *message.Sender

func (*WotoContainer) ReplyBoldText

func (c *WotoContainer) ReplyBoldText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyCodeText

func (c *WotoContainer) ReplyCodeText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyError

func (c *WotoContainer) ReplyError(description string, err error) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyItalicText

func (c *WotoContainer) ReplyItalicText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyMonoText

func (c *WotoContainer) ReplyMonoText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyStrikeText

func (c *WotoContainer) ReplyStrikeText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyStyledText

func (c *WotoContainer) ReplyStyledText(s wotoStyle.WStyle) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyText

func (c *WotoContainer) ReplyText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) ReplyTextf

func (c *WotoContainer) ReplyTextf(format string, args ...interface{}) (tg.UpdatesClass, error)

func (*WotoContainer) ResolveUsername

func (c *WotoContainer) ResolveUsername(username string) (*tg.ContactsResolvedPeer, error)

func (*WotoContainer) ResolveUsernameToUser

func (c *WotoContainer) ResolveUsernameToUser(username string) *tg.User

func (*WotoContainer) SendBoldText

func (c *WotoContainer) SendBoldText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) SendCodeText

func (c *WotoContainer) SendCodeText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) SendItalicText

func (c *WotoContainer) SendItalicText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) SendMonoText

func (c *WotoContainer) SendMonoText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) SendSpoilerText

func (c *WotoContainer) SendSpoilerText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) SendStrikeText

func (c *WotoContainer) SendStrikeText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) SendStyledText

func (c *WotoContainer) SendStyledText(s wotoStyle.WStyle) (tg.UpdatesClass, error)

func (*WotoContainer) SendText

func (c *WotoContainer) SendText(text string) (tg.UpdatesClass, error)

func (*WotoContainer) SendTextf

func (c *WotoContainer) SendTextf(format string, args ...interface{}) (tg.UpdatesClass, error)

func (*WotoContainer) UploadFileToChatByPath

func (c *WotoContainer) UploadFileToChatByPath(filename string, opts *UploadDocumentOptions) error

func (*WotoContainer) UploadFileToChatsByPath

func (c *WotoContainer) UploadFileToChatsByPath(filename string, opts *UploadDocumentToChatsOptions) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL