func main() { flag.Usage = func() { program := strings.TrimSuffix(filepath.Base(os.Args[0]), ".exe") fmt.Println("Usage: " + program + " [-i | -h] config.json") flag.PrintDefaults() } if len(os.Args) < 2 { flag.Usage() os.Exit(1) } flag.Parse() confarg := 1 if *i { confarg = 2 } rconf, err := rbot.ReadConfigFile(os.Args[confarg]) if err != nil { panic(err) } var ( preConnectMsg, postConnectMsg string bot *rbot.Bot ) if *i { preConnectMsg, postConnectMsg = "", "" bot = cbot.NewCLIBot(rconf) } else { preConnectMsg, postConnectMsg = "Connecting... ", "Done" bot = rbot.NewBot(rain.Version(), rconf) } setup.Default(bot) bot.EnableModules() bot.DefaultConnectWithMsg(preConnectMsg, postConnectMsg) reason, err := bot.WaitForQuit() if err != nil { fmt.Printf("Quit Error: %s\n", reason) os.Exit(1) } fmt.Printf("Quit: %s\n", reason) }