メインコンテンツへ移動

voice.close()

close() メソッドは、リアルタイム Voice サービスから切断してリソースを解放します。Voice セッションを適切に終了し、リソースリークを防ぐために重要です。

使用例
使用例への直接リンク

import { OpenAIRealtimeVoice } from '@mastra/voice-openai-realtime'
import { getMicrophoneStream } from '@mastra/node-audio'

// 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()

// Start a conversation
voice.speak("Hello, I'm your AI assistant!")

// Stream audio from a microphone
const microphoneStream = getMicrophoneStream()
voice.send(microphoneStream)

// When the conversation is complete
setTimeout(() => {
// Close the connection and clean up resources
voice.close()
console.log('Voice session ended')
}, 60000) // End after 1 minute

パラメーター
パラメーターへの直接リンク

このメソッドはパラメーターを受け取りません。

戻り値
戻り値への直接リンク

このメソッドは値を返しません。

注意事項
注意事項への直接リンク

  • リソースを解放するため、リアルタイム Voice セッションの終了時は必ず close() を呼び出してください
  • close() の呼び出し後に新しいセッションを開始するには、connect() をもう一度呼び出す必要があります
  • 主に、持続的な接続を維持するリアルタイム Voice Provider で使用します
  • リアルタイム接続をサポートしない Voice Provider で呼び出すと、警告を記録して何も実行しません
  • 接続を閉じないと、リソースリークや Voice サービス Provider での意図しない課金につながる可能性があります