Fix post-to-discord checkbox: pass skip_post flag to bot, skip posting when unchecked

This commit is contained in:
2026-06-08 03:24:20 -05:00
parent 579c4c0a9f
commit ee3c452670
2 changed files with 9 additions and 6 deletions
+8 -6
View File
@@ -3096,8 +3096,9 @@ class TtsToy(Cog):
mode_override = payload.get("mode_override") # per-request mode from web UI
voice_override = payload.get("voice_override") # per-request voice from web UI
skip_vc = payload.get("skip_vc", False)
skip_post = payload.get("skip_post", False)
guild_id_str = payload.get("guild_id", "")
log.info(f"[WebUI] speak_in_vc: user={user} job={job_id} guild={guild_id_str} mode_override={mode_override} voice_override={voice_override} skip_vc={skip_vc} text={text[:60]!r}")
log.info(f"[WebUI] speak_in_vc: user={user} job={job_id} guild={guild_id_str} mode_override={mode_override} voice_override={voice_override} skip_vc={skip_vc} skip_post={skip_post} text={text[:60]!r}")
webui_url = self._get_webui_url()
secret = self._get_internal_secret()
@@ -3211,11 +3212,12 @@ class TtsToy(Cog):
# Post transcript to Discord channel and mark job done
# Resolve the best guild ID for posting: login guild > VC guild > empty
post_guild_id = guild_id_str or (str(member_guild.id) if member_guild else "")
await self._handle_webui_post({
"job_id": job_id, "path": audio_path,
"text": text, "user": discord_name, "engine": mode,
"guild_id": post_guild_id,
})
if not skip_post:
await self._handle_webui_post({
"job_id": job_id, "path": audio_path,
"text": text, "user": discord_name, "engine": mode,
"guild_id": post_guild_id,
})
await asyncio.to_thread(_update_job, "done", path=audio_path)
async def _handle_webui_post(self, post: dict):
+1
View File
@@ -442,6 +442,7 @@ def api_tts_generate():
"mode_override": mode,
"voice_override": voice,
"skip_vc": True,
"skip_post": not data.get("post_to_discord", True),
"guild_id": _resolve_guild_id(),
})