/* * @Author: Bartuccio Antoine * @Date: 2018-07-23 15:24:22 * @Last Modified by: klmp200 * @Last Modified time: 2018-07-26 18:59:19 */ package main import ( "./commands" "./settings" "./shared" tb "gopkg.in/tucnak/telebot.v2" "log" "time" ) func main() { registered_commands := map[string]func(*tb.Message){ tb.OnText: commands.OnText, "/hello": commands.Hello, "/sponge": commands.Sponge, "/git": commands.Git, "/framapad": commands.Framapad, "/setgender": commands.SetGender, "/gender": commands.Gender, "/roll": commands.Dice, "/trump": commands.LastTrumpTweet, "/trends": commands.TwitterTrends, } if err := settings.LoadSettings("settings.json", "settings_custom.json"); err != nil { log.Fatal(err) } log.Println("Initialize history") shared.InitHistory(int(settings.Settings["history size"].(float64)), settings.Settings["history file"].(string)) log.Println("Initialize users infos") shared.InitUsers(settings.Settings["users file"].(string)) log.Println("Bot initialisation") b, err := tb.NewBot(tb.Settings{ Token: settings.Settings["token"].(string), Poller: &tb.LongPoller{Timeout: 10 * time.Second}, }) if err != nil { log.Fatal(err) return } shared.Bot = b for key, value := range registered_commands { b.Handle(key, value) } log.Println("Starting bot") b.Start() }