package main import ( "bot/src/controllers" "bot/src/models" "log" "os" "time" tele "gopkg.in/telebot.v4" ) // ////////////////////// var isTest bool = true //////////////////////// func config() models.Config { return models.Config{ Token: os.Getenv("BOT_TOKEN"), HostName: os.Getenv("DB_HOST"), DbName: os.Getenv("DB_NAME"), UserName: os.Getenv("DB_USER"), Password: os.Getenv("DB_PASS"), } } func testConfig() models.Config { return models.Config{ Token: "7757765456:AAFpFXhbi9XCfgRt7P3OT3F_jrBBplubWZA", HostName: "217.12.40.237", DbName: "test", UserName: "root", Password: "12641264", } } func main() { var cfg models.Config if isTest { cfg = testConfig() } else { cfg = config() } pref := tele.Settings{ Token: cfg.Token, Poller: &tele.LongPoller{Timeout: 10 * time.Second}, } b, err := tele.NewBot(pref) if err != nil { log.Fatal(err) return } dc := controllers.NewDB(cfg) dickController := controllers.NewDick(dc) duelController := controllers.NewDuel(b, dc) bonusController := controllers.NewBonusController(b, dc) b.Handle("/dick", dickController.Dick) b.Handle("/top_dick", dickController.TopDick) b.Handle("/duel", duelController.StartMatch) b.Handle("/accept", duelController.AcceptMatch) b.Handle("/clear", duelController.ClearMatch) b.Handle("/b", bonusController.Bonus) b.Start() }