メインコンテンツへ移動

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 で呼び出すと、警告を記録して何も実行しません
  • 長時間実行アプリケーションでメモリリークを防ぐには、イベントリスナーの削除が重要です