Aller au contenu principal

voice.close()

La méthode close() se déconnecte d’un service vocal en temps réel et libère les ressources. Cela est important pour terminer correctement les sessions vocales et prévenir les fuites de ressources.

Exemple d’utilisation
Lien direct vers Exemple d’utilisation

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

Paramètres
Lien direct vers Paramètres

Cette méthode n’accepte aucun paramètre.

Valeur renvoyée
Lien direct vers Valeur renvoyée

Cette méthode ne renvoie aucune valeur.

Remarques
Lien direct vers Remarques

  • Appelez toujours close() lorsque vous avez terminé une session vocale en temps réel afin de libérer les ressources
  • Après avoir appelé close(), vous devrez appeler de nouveau connect() pour commencer une nouvelle session
  • Cette méthode est principalement utilisée avec les fournisseurs Voice en temps réel qui maintiennent des connexions persistantes
  • Si elle est appelée sur un fournisseur Voice qui ne prend pas en charge les connexions en temps réel, elle consigne un avertissement et ne fait rien
  • Ne pas fermer les connexions peut entraîner des fuites de ressources et des problèmes de facturation potentiels avec les fournisseurs de services vocaux