remake_bot/bot/tele.go

42 lines
654 B
Go

package bot
import (
"context"
"go.uber.org/fx"
"go.uber.org/zap"
tele "gopkg.in/telebot.v3"
"log"
"os"
"time"
)
func NewRemakeBot(lc fx.Lifecycle, logger *zap.Logger) *tele.Bot {
pref := tele.Settings{
Token: os.Getenv("TOKEN"),
Poller: &tele.LongPoller{Timeout: 10 * time.Second},
}
b, err := tele.NewBot(pref)
if err != nil {
log.Fatal(err)
return nil
}
lc.Append(fx.Hook{OnStart: func(ctx context.Context) error {
go b.Start()
logger.Info("remake Bot is now running...")
return nil
}, OnStop: func(ctx context.Context) error {
b.Stop()
logger.Info("remake Bot is now stopped")
return nil
}})
return b
}