group_helper/telegram/manager.go
2020-05-09 19:07:02 +02:00

38 lines
669 B
Go

package telegram
import (
tgbotapi "github.com/go-telegram-bot-api/telegram-bot-api"
"log"
)
type RoutineManager struct {
Routine []Routine
Bot *tgbotapi.BotAPI
}
func (rm RoutineManager) StartUpdates() {
u := tgbotapi.NewUpdate(0)
u.Timeout = 60
updates, _ := rm.Bot.GetUpdatesChan(u)
for update := range updates {
for _, routine := range rm.Routine {
err := routine.Update(&update)
if err != nil {
log.Printf("ERROR - Routine error")
log.Println(err)
}
}
}
}
func (rm *RoutineManager) RegisterRoutine(routine Routine) {
if rm.Routine == nil {
rm.Routine = make([]Routine, 0)
}
rm.Routine = append(rm.Routine, routine)
}