Feature description
Make the Discord voice-channel inactivity timeout configurable.
Motivation
The Discord adapter currently has a hardcoded voice inactivity timeout (VOICE_TIMEOUT = 300), so Hermes leaves a voice channel after 5 minutes of inactivity. For persistent voice workflows, this is too aggressive and requires maintaining a local patch.
Proposed solution
Add a config/env setting such as:
gateway:
platforms:
discord:
voice_timeout_seconds: 0
and/or:
HERMES_DISCORD_VOICE_TIMEOUT_SECONDS=0
Suggested behavior:
- Default remains
300 seconds to preserve current behavior.
- Positive integer sets the inactivity timeout in seconds.
0 disables automatic voice-channel leave due to inactivity.
- Invalid values fall back to the default and log a warning.
Why this should be configurable by design
Some Discord deployments use Hermes like a standing voice assistant in a server. In that mode, auto-leaving after 5 minutes breaks the workflow, but disabling/extending the timeout should not require patching gateway/platforms/discord.py.
Feature description
Make the Discord voice-channel inactivity timeout configurable.
Motivation
The Discord adapter currently has a hardcoded voice inactivity timeout (
VOICE_TIMEOUT = 300), so Hermes leaves a voice channel after 5 minutes of inactivity. For persistent voice workflows, this is too aggressive and requires maintaining a local patch.Proposed solution
Add a config/env setting such as:
and/or:
Suggested behavior:
300seconds to preserve current behavior.0disables automatic voice-channel leave due to inactivity.Why this should be configurable by design
Some Discord deployments use Hermes like a standing voice assistant in a server. In that mode, auto-leaving after 5 minutes breaks the workflow, but disabling/extending the timeout should not require patching
gateway/platforms/discord.py.