Create discord package and connect/disconnect handlers
This change moves the discord session singleton to the internal/discord package, and implements basic Connect/Disconnect handlers.
This commit is contained in:
parent
5e4662c8b0
commit
bbcf6ef6cf
5 changed files with 93 additions and 24 deletions
23
main.go
23
main.go
|
|
@ -6,25 +6,19 @@ import (
|
|||
"os"
|
||||
"os/signal"
|
||||
|
||||
"github.com/bwmarrin/discordgo"
|
||||
"gitlab.com/whom/bingobot/internal/config"
|
||||
"gitlab.com/whom/bingobot/internal/discord"
|
||||
"gitlab.com/whom/bingobot/internal/logging"
|
||||
"gitlab.com/whom/bingobot/internal/state"
|
||||
)
|
||||
|
||||
var (
|
||||
Token = flag.String("token", "", "Bot authentication token")
|
||||
App = flag.String("app", "", "Application ID")
|
||||
Guild = flag.String("guild", "", "Guild ID") // Do we want it to be tied to one server?
|
||||
token = flag.String("token", "", "Bot authentication token")
|
||||
|
||||
appConfig *config.AppConfig
|
||||
)
|
||||
|
||||
func main() {
|
||||
flag.Parse()
|
||||
if *App == "" {
|
||||
log.Fatal("application id is not set")
|
||||
}
|
||||
|
||||
var err error
|
||||
|
||||
|
|
@ -44,27 +38,18 @@ func main() {
|
|||
}
|
||||
|
||||
func startBot() error {
|
||||
state.DiscordSession, _ = discordgo.New("Bot " + *Token)
|
||||
err := discord.Connect(*token)
|
||||
|
||||
err := state.DiscordSession.Open()
|
||||
if err != nil {
|
||||
logging.Error("could not open discord session", "type", "error", "error", err)
|
||||
return err
|
||||
}
|
||||
|
||||
logging.Info("shutting down gracefully", "type", "shutdown")
|
||||
|
||||
sigch := make(chan os.Signal, 1)
|
||||
signal.Notify(sigch, os.Interrupt)
|
||||
<-sigch
|
||||
|
||||
logging.Info("shutting down gracefully", "type", "shutdown")
|
||||
|
||||
err = state.DiscordSession.Close()
|
||||
if err != nil {
|
||||
logging.Error("could not close discord session gracefully", "type", "error", "error", err)
|
||||
return err
|
||||
}
|
||||
discord.Close()
|
||||
|
||||
return nil
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue