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’utilisationLien 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ètresLien direct vers Paramètres
Cette méthode n’accepte aucun paramètre.
Valeur renvoyéeLien direct vers Valeur renvoyée
Cette méthode ne renvoie aucune valeur.
RemarquesLien 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 nouveauconnect()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