Documentation
¶
Index ¶
- func CalcNextTimeFromMidnight(now time.Time, fromMidnight time.Duration) time.Time
- func GetAllKeys(conn *redis.Client, matchPattern string) ([]string, error)
- type BackgroundMessageDealer
- type BackgroundMessageHandler
- type BaseHandler
- type Bot
- type ChatID
- type Config
- type Cron
- type CronJob
- type EngagementHandler
- type EngagementMessageDealer
- type HandlerTrigger
- type IncomingMessageDealer
- type IncomingMessageHandler
- type MessageDealer
- type PropertyStorage
- type PropertyValue
- type RedisConfig
- type RedisPool
- type RedisPoolImpl
- type RedisPropertyStorage
- func (r *RedisPropertyStorage) GetEveryHavingProperty(name string) ([]PropertyValue, error)
- func (r *RedisPropertyStorage) GetProperty(name string, user UserID, chat ChatID) (string, error)
- func (r *RedisPropertyStorage) SetPropertyForChat(name string, chat ChatID, value interface{}) error
- func (r *RedisPropertyStorage) SetPropertyForUser(name string, user UserID, value interface{}) error
- func (r *RedisPropertyStorage) SetPropertyForUserInChat(name string, user UserID, chat ChatID, value interface{}) error
- type ServiceMsg
- type UserID
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
Types ¶
type BackgroundMessageDealer ¶
type BackgroundMessageDealer struct {
// contains filtered or unexported fields
}
type BackgroundMessageHandler ¶
type BackgroundMessageHandler interface { Init(chan<- tgbotapi.Chattable, chan<- ServiceMsg) Run() Name() string }
type BaseHandler ¶
type BaseHandler struct { OutMsgCh chan<- tgbotapi.Chattable SrvCh chan<- ServiceMsg }
type Bot ¶
type Bot struct {
// contains filtered or unexported fields
}
func (*Bot) AddHandler ¶
func (b *Bot) AddHandler(d MessageDealer)
type EngagementHandler ¶ added in v0.0.2
type EngagementMessageDealer ¶ added in v0.0.2
type EngagementMessageDealer struct {
// contains filtered or unexported fields
}
type HandlerTrigger ¶
type HandlerTrigger struct {
// contains filtered or unexported fields
}
func NewHandlerTrigger ¶
func NewHandlerTrigger(re *regexp.Regexp, cmds []string) HandlerTrigger
type IncomingMessageDealer ¶
type IncomingMessageDealer struct {
// contains filtered or unexported fields
}
func NewIncomingMessageDealer ¶
func NewIncomingMessageDealer(h IncomingMessageHandler) *IncomingMessageDealer
type IncomingMessageHandler ¶
type IncomingMessageHandler interface { Init(chan<- tgbotapi.Chattable, chan<- ServiceMsg) HandlerTrigger HandleOne(tgbotapi.Message) Name() string }
type MessageDealer ¶
type MessageDealer interface {
// contains filtered or unexported methods
}
func NewBackgroundMessageDealer ¶
func NewBackgroundMessageDealer(h BackgroundMessageHandler) MessageDealer
func NewEngagementMessageDealer ¶ added in v0.0.3
func NewEngagementMessageDealer(h EngagementHandler) MessageDealer
type PropertyStorage ¶
type PropertyStorage interface { GetProperty(name string, user UserID, chat ChatID) (string, error) SetPropertyForUser(name string, user UserID, value interface{}) error SetPropertyForChat(name string, chat ChatID, value interface{}) error SetPropertyForUserInChat(name string, user UserID, chat ChatID, value interface{}) error GetEveryHavingProperty(name string) ([]PropertyValue, error) }
type PropertyValue ¶
type RedisConfig ¶
type RedisPool ¶
type RedisPool interface { GetConnByID(dbID int) *redis.Client GetConnByName(dbName string) *redis.Client }
func NewRedisPool ¶
func NewRedisPool(cfg RedisConfig) RedisPool
type RedisPoolImpl ¶
type RedisPoolImpl struct {
// contains filtered or unexported fields
}
func (*RedisPoolImpl) GetConnByID ¶
func (pool *RedisPoolImpl) GetConnByID(dbID int) *redis.Client
func (*RedisPoolImpl) GetConnByName ¶
func (pool *RedisPoolImpl) GetConnByName(dbName string) *redis.Client
type RedisPropertyStorage ¶
type RedisPropertyStorage struct {
// contains filtered or unexported fields
}
func NewRedisPropertyStorage ¶
func NewRedisPropertyStorage(pool RedisPool) *RedisPropertyStorage
func (*RedisPropertyStorage) GetEveryHavingProperty ¶
func (r *RedisPropertyStorage) GetEveryHavingProperty(name string) ([]PropertyValue, error)
func (*RedisPropertyStorage) GetProperty ¶
func (*RedisPropertyStorage) SetPropertyForChat ¶
func (r *RedisPropertyStorage) SetPropertyForChat(name string, chat ChatID, value interface{}) error
func (*RedisPropertyStorage) SetPropertyForUser ¶
func (r *RedisPropertyStorage) SetPropertyForUser(name string, user UserID, value interface{}) error
func (*RedisPropertyStorage) SetPropertyForUserInChat ¶
func (r *RedisPropertyStorage) SetPropertyForUserInChat(name string, user UserID, chat ChatID, value interface{}) error
type ServiceMsg ¶
type ServiceMsg struct {
// contains filtered or unexported fields
}
Source Files
¶
Click to show internal directories.
Click to hide internal directories.