func (plotberry *PlotBerry) InitPlugin(bot *plotbot.Bot) { var conf struct { Plotberry PlotberryConf } err := bot.LoadConfig(&conf) if err != nil { log.Fatalln("Error loading PlotBerry config section: ", err) return } plotberry.bot = bot plotberry.pingTime = time.Duration(conf.Plotberry.PingTime) * time.Second plotberry.eraLength = conf.Plotberry.EraLength plotberry.endpoint = conf.Plotberry.EndPoint // if plotberry.eraLength is 0 we will get a divide by zero error - lets abort first if plotberry.eraLength == 0 { log.Fatal("Plotberry.eraLength may not be zero (divide by zero error), please set the configuration") return } statchan := make(chan TotalUsers, 100) go plotberry.launchWatcher(statchan) go plotberry.launchCounter(statchan) bot.ListenFor(&plotbot.Conversation{ HandlerFunc: plotberry.ChatHandler, }) }
func (totw *Totw) InitPlugin(bot *plotbot.Bot) { plotbot.RegisterStringList("useless techs", []string{ "http://i.minus.com/ib2bUNs2W1CI1V.gif", "http://media.giphy.com/media/anl0wydLNhKus/giphy.gif", "http://www.ptc.dcs.edu/Moody/comphistory/cavemanwriting.gif", "http://i.imgur.com/VbzhAbd.gif", "http://www.patrickcarrion.com/wp-content/uploads/2014/05/mowingdressgif.gif", "http://cdn.shopify.com/s/files/1/0243/7593/products/MKSB023_UselessMachine_Animation_grande.gif", "http://i.imgur.com/CRuLGek.gif", "http://i.imgur.com/EteBF9K.gif", "http://www.ohmagif.com/wp-content/uploads/2011/12/useless-invention.gif", "http://i3.kym-cdn.com/photos/images/original/000/495/044/9b8.gif", "http://uproxx.files.wordpress.com/2012/09/iron.gif", }) plotbot.RegisterStringList("tech adept", []string{ "you're a real tech adept", "what an investigator", "such deep search!", "a real innovator you are", "way to go, I'm impressed", "hope it's better than my own code", "noted, but are you sure it's good ?", "I'll take a look into this one", "you're generous!", "hurray!", }) totw.bot = bot go totw.ScheduleAlerts(bot.Config.GeneralChannel, time.Thursday, 16, 0) bot.ListenFor(&plotbot.Conversation{ HandlerFunc: totw.ChatHandler, }) }
func (vote *Vote) InitPlugin(bot *plotbot.Bot) { vote.bot = bot bot.ListenFor(&plotbot.Conversation{ PublicOnly: true, HandlerFunc: vote.voteHandler, }) }
func (standup *Standup) InitPlugin(bot *plotbot.Bot) { standup.bot = bot standup.sectionUpdates = make(chan sectionUpdate, 15) go standup.manageUpdatesInteraction() bot.ListenFor(&plotbot.Conversation{ HandlerFunc: standup.ChatHandler, }) }
func (healthy *Healthy) InitPlugin(bot *plotbot.Bot) { var conf struct { HealthCheck struct { Urls []string } } bot.LoadConfig(&conf) healthy.urls = conf.HealthCheck.Urls bot.ListenFor(&plotbot.Conversation{ MentionsMeOnly: true, ContainsAny: []string{"health", "healthy?", "health_check"}, HandlerFunc: healthy.ChatHandler, }) }
func (totw *Totw) InitPlugin(bot *plotbot.Bot) { plotbot.RegisterStringList("tech adept", []string{ "you're a real tech adept", "what an investigator", "such deep search!", "a real innovator you are", "way to go, I'm impressed", "I'll take a look into this one", "you're generous!", "hurray!", }) totw.bot = bot bot.ListenFor(&plotbot.Conversation{ HandlerFunc: totw.ChatHandler, }) }
func (bugger *Bugger) InitPlugin(bot *plotbot.Bot) { /* * Get an array of issues matching Filters */ bugger.bot = bot var conf struct { Github github.Conf } bot.LoadConfig(&conf) bugger.ghclient = github.Client{ Conf: conf.Github, } bot.ListenFor(&plotbot.Conversation{ HandlerFunc: bugger.ChatHandler, }) }
func (funny *Funny) InitPlugin(bot *plotbot.Bot) { plotbot.RegisterStringList("forcePush", []string{ "http://www.gifcrap.com/g2data/albums/TV/Star%20Wars%20-%20Force%20Push%20-%20Goats%20fall%20over.gif", "http://i.imgur.com/ZvZR6Ff.jpg", "http://i3.kym-cdn.com/photos/images/original/000/014/538/5FCNWPLR2O3TKTTMGSGJIXFERQTAEY2K.gif", "http://i167.photobucket.com/albums/u123/KevinB550/FORCEPUSH/starwarsagain.gif", "http://i.imgur.com/dqSIv6j.gif", "http://www.gifcrap.com/g2data/albums/TV/Star%20Wars%20-%20Force%20Push%20-%20Gun%20breaks.gif", "http://media0.giphy.com/media/qeWa5wV5aeEHC/giphy.gif", "http://img40.imageshack.us/img40/2529/obiwan20is20a20jerk.gif", "http://img856.imageshack.us/img856/2364/obiwanforcemove.gif", "http://img526.imageshack.us/img526/4750/bc6.gif", "http://img825.imageshack.us/img825/6373/tumblrluaj77qaoa1qzrlhg.gif", "http://img543.imageshack.us/img543/6222/basketballdockingbay101.gif", "http://img687.imageshack.us/img687/5711/frap.gif", "http://img96.imageshack.us/img96/812/starpigdockingbay101.gif", "http://img2.wikia.nocookie.net/__cb20131117184206/halo/images/2/2a/Xt0rt3r.gif", }) plotbot.RegisterStringList("robot jokes", []string{ "http://timmybeanbrain.files.wordpress.com/2012/05/05242012_02-01.jpg", "http://timmybeanbrain.files.wordpress.com/2012/05/05242012_01-01.jpg", "http://timmybeanbrain.files.wordpress.com/2012/05/05232012_01-01.jpg", "http://timmybeanbrain.files.wordpress.com/2012/05/05017012_01-01.jpg", "http://timmybeanbrain.files.wordpress.com/2012/07/07022012_04-01.jpg", }) plotbot.RegisterStringList("dishes", []string{ "http://stream1.gifsoup.com/view6/4703823/monkey-doing-dishes-o.gif", "http://s3-ec.buzzfed.com/static/enhanced/webdr06/2013/6/24/16/anigif_enhanced-buzz-9769-1372104764-13.gif", "http://i.imgur.com/WIL27Br.gif", }) bot.ListenFor(&plotbot.Conversation{ HandlerFunc: funny.ChatHandler, }) }
func (dep *Deployer) InitPlugin(bot *plotbot.Bot) { var conf struct { Deployer DeployerConfig } bot.LoadConfig(&conf) dep.bot = bot dep.progress = make(chan string, 1000) dep.config = &conf.Deployer dep.env = os.Getenv("PLOTLY_ENV") if dep.env == "" { dep.env = "debug" } dep.loadInternalAPI() go dep.forwardProgress() bot.ListenFor(&plotbot.Conversation{ HandlerFunc: dep.ChatHandler, MentionsMeOnly: true, }) }