> Discover all available pages from the documentation index: https://mastra.zisheng.pro/llms.txt # Voice 事件 Voice Provider 会在实时 Voice 交互期间发出事件。可以使用 [voice.on()](https://mastra.zisheng.pro/reference/voice/voice.on) 方法监听这些事件;在构建交互式 Voice 应用时,它们尤其重要。 ## 常见事件 实时 Voice Provider 通常都会实现以下事件: **error** (`Error`): 在 Voice 处理期间发生错误或音频数据格式不受支持时发出 **session.created** (`object`): 在 OpenAI 服务中创建新 session 时发出 **session.updated** (`object`): session 配置更新时发出 **response.created** (`object`): AI 助手创建新响应时发出 **response.done** (`object`): AI 助手完成响应时发出 **speaker** (`StreamWithId`): 随可输送到音频输出的新音频流一起发出 **writing** (`object`): 正在转录文本(用户)或生成文本(助手)时发出 **speaking** (`object`): Voice Provider 有音频数据可用时发出 **speaking.done** (`object`): Voice Provider 完成语音输出时发出 **tool-call-start** (`object`): AI 助手开始执行 Tool 时发出 **tool-call-result** (`object`): Tool 执行完毕并产生结果时发出 ## 注意事项 - 并非所有 Voice Provider 都支持全部事件 - payload 的确切结构可能因 Provider 而异 - 对于非实时 Provider,大多数此类事件不会发出 - 事件有助于构建能响应对话状态的交互式 UI - 不再需要事件监听器时,建议使用 [voice.off()](https://mastra.zisheng.pro/reference/voice/voice.off) 方法将其移除