From 8909975cce5699d71b5cb41c7640c11bd8c2b8ee Mon Sep 17 00:00:00 2001 From: Brian Buller Date: Thu, 21 Nov 2019 11:09:06 -0600 Subject: [PATCH] Working on things... Considering a slack library change --- .gitignore | 1 + cmd/app.go | 9 +++++++-- cmd/helper_plugin.go | 5 +++-- cmd/main.go | 6 ------ cmd/model_slack.go | 2 ++ 5 files changed, 13 insertions(+), 10 deletions(-) diff --git a/.gitignore b/.gitignore index 40e193b..d16fb86 100644 --- a/.gitignore +++ b/.gitignore @@ -1,4 +1,5 @@ cmd/plugins/* cmd/helperbot cmd/*.db +cmd/cmd helperbot.tgz diff --git a/cmd/app.go b/cmd/app.go index 6f38f50..5cfd92c 100644 --- a/cmd/app.go +++ b/cmd/app.go @@ -23,11 +23,12 @@ func NewApp() (*App, error) { } a.DebugMode = DebugMode + a.running = true err := a.initialize() if err != nil { + a.running = false return nil, err } - a.running = true go a.MonitorSlackMessages() return a, nil @@ -64,10 +65,12 @@ func (a *App) initialize() error { a.m.setSlackAdminDMId(strings.TrimSpace(slackDMid)) } + fmt.Println("Creating Slack Model") if err = a.m.NewSlack(); err != nil { return err } + fmt.Println("Starting gofunc watchMessageChannel") go a.watchMessageChannel() return nil } @@ -76,6 +79,9 @@ func (a *App) watchMessageChannel() { for a.running { msg := <-a.m.messages slackMsg := msg.GetMessage() + if slackMsg.Type != "user_typing" { + fmt.Println(slackMsg) + } if slackMsg.Type == "control" && slackMsg.Name == "quit" { a.running = false break @@ -89,5 +95,4 @@ func (a *App) watchMessageChannel() { v.State.ProcessMessage(msg) } } - close(a.m.messages) } diff --git a/cmd/helper_plugin.go b/cmd/helper_plugin.go index ffdcaa7..400a51c 100644 --- a/cmd/helper_plugin.go +++ b/cmd/helper_plugin.go @@ -26,19 +26,20 @@ func (a *App) LoadPluginsFromDirectory(dir string) error { for _, f := range files { p, err := plugin.Open(dir + f.Name()) if err != nil { - fmt.Println(fmt.Sprintf("Error loading plugin (%s)\n", f.Name())) + fmt.Printf("Error loading plugin (%s)\n", f.Name()) fmt.Println(err.Error()) os.Exit(1) } hp, err := NewHelperPlugin(p) if err != nil { - fmt.Println(fmt.Sprintf("Error loading plugin (%s)\n", f.Name())) + fmt.Printf("Error loading plugin (%s)\n", f.Name()) fmt.Println(err.Error()) os.Exit(1) } hp.State.Initialize(a.m) hp.State.Run() a.plugins = append(a.plugins, *hp) + fmt.Printf("Plugin loaded: %s\n", f.Name()) } return nil } diff --git a/cmd/main.go b/cmd/main.go index 0999ab1..60cd2c2 100644 --- a/cmd/main.go +++ b/cmd/main.go @@ -26,11 +26,6 @@ func main() { os.Exit(1) } - // Monitor the Advent of Code Boards - //go m.MonitorAoCBoards() - // Monitor incoming Slack messages - //go m.MonitorSlackMessages() - // Set up a channel to intercept Ctrl+C for graceful shutdowns c := make(chan os.Signal, 1) signal.Notify(c, os.Interrupt, syscall.SIGTERM) @@ -43,7 +38,6 @@ func main() { for a.running { time.Sleep(time.Second * 2) } - fmt.Println("Model has stopped running") fmt.Println("Done") os.Exit(0) } diff --git a/cmd/model_slack.go b/cmd/model_slack.go index 40136f8..87ebcc5 100644 --- a/cmd/model_slack.go +++ b/cmd/model_slack.go @@ -4,6 +4,8 @@ import ( slack "git.bullercodeworks.com/brian/go-slack" ) +// TODO: Look into switching to: https://github.com/nlopes/slack + /* DB Functions */ func (m *BotModel) setSlackToken(token string) error { return m.SetBytes([]string{"slack", "config", "token"}, []byte(token))