voice.off()
off() メソッドは、on() メソッドで以前に登録したイベントリスナーを削除します。リアルタイム Voice 機能を備えた長時間実行アプリケーションで、リソースを解放しメモリリークを防ぐ際に特に役立ちます。
使用例使用例への直接リンク
import { OpenAIRealtimeVoice } from '@mastra/voice-openai-realtime'
import chalk from 'chalk'
// Initialize a real-time voice provider
const voice = new OpenAIRealtimeVoice({
realtimeConfig: {
model: 'gpt-5.1-realtime',
apiKey: process.env.OPENAI_API_KEY,
},
})
// Connect to the real-time service
await voice.connect()
// Define the callback function
const writingCallback = ({ text, role }) => {
if (role === 'user') {
process.stdout.write(chalk.green(text))
} else {
process.stdout.write(chalk.blue(text))
}
}
// Register event listener
voice.on('writing', writingCallback)
// Later, when you want to remove the listener
voice.off('writing', writingCallback)
パラメーターパラメーターへの直接リンク
event:
string
リッスンを停止するイベント名(例:'speaking'、'writing'、'error')
callback:
function
on() に渡したものと同じコールバック関数
戻り値戻り値への直接リンク
このメソッドは値を返しません。
注意事項注意事項への直接リンク
off()に渡すコールバックは、on()に渡したものと同じ関数参照である必要があります- コールバックが見つからない場合、このメソッドは何も実行しません
- 主に、イベントベースの通信をサポートするリアルタイム Voice Provider で使用します
- イベントをサポートしない Voice Provider で呼び出すと、警告を記録して何も実行しません
- 長時間実行アプリケーションでメモリリークを防ぐには、イベントリスナーの削除が重要です