fix tool_call tts

This commit is contained in:
Huaaudio 2026-03-21 18:31:15 +01:00
parent e9cd7d9526
commit 324956216b
2 changed files with 13 additions and 5 deletions

View file

@ -30,10 +30,11 @@ type InboundMessage struct {
} }
type OutboundMessage struct { type OutboundMessage struct {
Channel string `json:"channel"` Channel string `json:"channel"`
ChatID string `json:"chat_id"` ChatID string `json:"chat_id"`
Content string `json:"content"` Content string `json:"content"`
ReplyToMessageID string `json:"reply_to_message_id,omitempty"` ReplyToMessageID string `json:"reply_to_message_id,omitempty"`
Metadata map[string]string `json:"metadata,omitempty"`
} }
// MediaPart describes a single media attachment to send. // MediaPart describes a single media attachment to send.

View file

@ -154,7 +154,14 @@ func (c *DiscordChannel) Send(ctx context.Context, msg bus.OutboundMessage) erro
return nil return nil
} }
if c.tts != nil { isToolCall := false
if msg.Metadata != nil {
if val, ok := msg.Metadata["is_tool_call"]; ok && val == "true" {
isToolCall = true
}
}
if c.tts != nil && !isToolCall {
if ch, err := c.session.State.Channel(channelID); err == nil && ch.GuildID != "" { if ch, err := c.session.State.Channel(channelID); err == nil && ch.GuildID != "" {
if vc, ok := c.session.VoiceConnections[ch.GuildID]; ok && vc != nil { if vc, ok := c.session.VoiceConnections[ch.GuildID]; ok && vc != nil {
// Cancel any previous TTS playback // Cancel any previous TTS playback