diff --git a/internal/discord/bot.go b/internal/discord/bot.go index b64efe0..446e79b 100644 --- a/internal/discord/bot.go +++ b/internal/discord/bot.go @@ -43,6 +43,8 @@ func NewBot(token string, groupSvc GroupService, monitorSvc MonitorService, clie return nil, fmt.Errorf("discordgo.New: %w", err) } + s.Identify.Intents = discordgo.IntentsNone + b := &Bot{ s: s, c: cron.New( @@ -56,6 +58,8 @@ func NewBot(token string, groupSvc GroupService, monitorSvc MonitorService, clie choiceSvc: client, } + b.s.AddHandler(b.handleSessionReady) + return b, nil } @@ -113,6 +117,10 @@ func (b *Bot) initCron() error { return nil } +func (b *Bot) handleSessionReady(s *discordgo.Session, _ *discordgo.Ready) { + _ = s.UpdateGameStatus(0, "Tribal Wars") +} + func (b *Bot) Close() error { <-b.c.Stop().Done() return b.s.Close() diff --git a/internal/discord/command_group.go b/internal/discord/command_group.go index aaba6c7..d5d5256 100644 --- a/internal/discord/command_group.go +++ b/internal/discord/command_group.go @@ -35,11 +35,13 @@ func (c *groupCommand) create(s *discordgo.Session) error { } var perm int64 = discordgo.PermissionAdministrator + dm := false _, err = s.ApplicationCommandCreate(s.State.User.ID, "", &discordgo.ApplicationCommand{ Name: c.name(), Description: "Manages groups on this server", DefaultMemberPermissions: &perm, + DMPermission: &dm, Options: []*discordgo.ApplicationCommandOption{ { Name: "create", diff --git a/internal/discord/command_monitor.go b/internal/discord/command_monitor.go index 9082337..e3e0c20 100644 --- a/internal/discord/command_monitor.go +++ b/internal/discord/command_monitor.go @@ -33,11 +33,13 @@ func (c *monitorCommand) register(s *discordgo.Session) error { func (c *monitorCommand) create(s *discordgo.Session) error { var perm int64 = discordgo.PermissionAdministrator + dm := false _, err := s.ApplicationCommandCreate(s.State.User.ID, "", &discordgo.ApplicationCommand{ Name: c.name(), Description: "Manages monitors", DefaultMemberPermissions: &perm, + DMPermission: &dm, Options: []*discordgo.ApplicationCommandOption{ { Name: "create",