feat(discord): add configurable presence (activity/status/type)

- Adds `activity`, `status`, `activityType`, and `activityUrl` to Discord provider config schema.
- Implements a `ReadyListener` in `DiscordProvider` to apply these settings on connection.
- Solves the issue where `@buape/carbon` ignores initial presence options in constructor.
- Validated manually and via existing test suite.
This commit is contained in:
h0tp
2026-02-07 03:00:22 +00:00
committed by Shadow
parent c801ffdf99
commit 5d8c6ef91c
3 changed files with 31 additions and 2 deletions

View File

@@ -332,6 +332,10 @@ export const DiscordAccountSchema = z
.strict()
.optional(),
responsePrefix: z.string().optional(),
activity: z.string().optional(),
status: z.enum(["online", "dnd", "idle", "invisible", "offline"]).optional(),
activityType: z.number().int().min(0).max(5).optional(),
activityUrl: z.string().optional(),
})
.strict();