Archived
1
This repository has been archived on 2022-11-04. You can view files and clone it, but cannot push or open issues or pull requests.
i2_bot/i2_bot.go

50 lines
838 B
Go
Raw Normal View History

2017-10-04 17:56:18 +04:00
// i2_bot Instinct PokememBro Bot
// Copyright (c) 2017 Vladimir "fat0troll" Hodakov
package main
import (
// stdlib
"time"
2017-10-18 07:03:34 +04:00
// 3rd-party
"github.com/go-telegram-bot-api/telegram-bot-api"
2017-10-18 07:03:34 +04:00
// local
2017-10-04 17:56:18 +04:00
"./lib/appcontext"
2017-10-13 00:31:12 +04:00
"./lib/getters"
"./lib/migrations"
"./lib/parsers"
2017-10-04 17:56:18 +04:00
"./lib/router"
"./lib/talkers"
2017-10-04 17:56:18 +04:00
)
var (
c *appcontext.Context
)
func main() {
c := appcontext.New()
c.Init()
router.New(c)
migrations.New(c)
c.RunDatabaseMigrations()
parsers.New(c)
talkers.New(c)
2017-10-13 00:31:12 +04:00
getters.New(c)
2017-10-04 17:56:18 +04:00
u := tgbotapi.NewUpdate(0)
u.Timeout = 60
updates, _ := c.Bot.GetUpdatesChan(u)
for update := range updates {
if update.Message == nil || update.Message.From == nil {
2017-10-04 17:56:18 +04:00
continue
} else if update.Message.Date < (int(time.Now().Unix()) - 1) {
// Ignore old messages
continue
}
2017-10-18 07:03:34 +04:00
c.Router.RouteRequest(update)
2017-10-04 17:56:18 +04:00
}
}