feat(bot+dashboard): bot info, server/voice-channel picker, participants, speaker
Adds a dashboard<->bot control plane (bot pushes state + polls commands, keeping the bot's single outbound-HTTP direction): - New bot_control.BotControl + endpoints: GET /api/bot/state, /api/bot/commands; POST /api/bot/report, /api/bot/select. - Dashboard header bar: bot identity/connection, server dropdown (top "없음"), voice-channel dropdown (top "없음"), and live participant list. - Turns record who spoke (Turn.speaker, via X-User-Name on the voice-turn POST). - dave/bot.mjs: reports identity/guilds/voice-channels/members, polls join/leave commands and joins dynamically, and sends the speaker's display name. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -80,6 +80,7 @@ class Turn:
|
||||
self._monitor = monitor
|
||||
self.id = turn_id
|
||||
self.source = source
|
||||
self.speaker = "" # who spoke (Discord display name), when known
|
||||
self.wall = _now_wall()
|
||||
self._t0 = _now_mono()
|
||||
self.heard_text = ""
|
||||
@@ -137,6 +138,7 @@ class Turn:
|
||||
return {
|
||||
"id": self.id,
|
||||
"source": self.source,
|
||||
"speaker": self.speaker,
|
||||
"wall": self.wall,
|
||||
"heard": self.heard_text,
|
||||
"thought": self.thought_text,
|
||||
|
||||
Reference in New Issue
Block a user