package main

import (
	"log"
	"time"

	"mechanus.net/pgbot/config"
	"mechanus.net/pgbot/matcher"
	"mechanus.net/pgbot/responder"

	"gopkg.in/telebot.v4"
)

type ConfigSpec struct {
	Token string `yaml:"token"`
}

func main() {
	var conf ConfigSpec
	config.Parse("config.yml", &conf)

	pref := telebot.Settings{
		Token:  conf.Token,
		Poller: &telebot.LongPoller{Timeout: 10 * time.Second},
	}

	tokenMatcher := matcher.InitMatcher("tokens.yml")

	bot, err := telebot.NewBot(pref)
	if err != nil {
		log.Fatal(err)
		return
	}

	responder.InitResponder(bot, tokenMatcher)

	bot.Start()
}