示例#1
0
文件: main.go 项目: raindevteam/rain
func main() {
	conf, err := rbot.ReadConfig(config)
	if err != nil {
		panic(err)
	}

	bot := rbot.NewBot(rain.Version(), conf)

	setup.Default(bot)
	bot.DefaultConnect()

	// Logs privmsgs from connected channels
	bot.AddListener("PRIVMSG", func(msg *irc.Message) {
		fmt.Println(msg.Trailing)
	})

	reason, err := bot.WaitForQuit()

	if err != nil {
		fmt.Printf("Quit Error: %s\n", reason)
		os.Exit(1)
	}

	fmt.Printf("Quit: %s\n", reason)
}
示例#2
0
文件: main.go 项目: raindevteam/rain
func main() {
	if len(os.Args) < 2 {
		program := strings.TrimSuffix(filepath.Base(os.Args[0]), ".exe")
		fmt.Println("Usage: " + program + " config.json")
		os.Exit(1)
	}

	rconf, err := rbot.ReadConfig(os.Args[1])
	if err != nil {
		fmt.Println(err)
		os.Exit(1)
	}

	bot := rbot.NewBot(rain.Version(), rconf)
	setup.Default(bot)

	bot.EnableModules()
	bot.DefaultConnectWithMsg("Connecting...", "Done")

	reason, err := bot.WaitForQuit()
	if err != nil {
		fmt.Printf("Quit Error: %s\n", reason)
		os.Exit(1)
	}

	fmt.Printf("Quit: %s\n", reason)
}
示例#3
0
文件: main.go 项目: raindevteam/rain
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)
}