음성.오프()
그만큼off()메소드는 이전에 등록된 이벤트 리스너를 제거합니다.on()방법. 이는 실시간 음성 기능을 갖춘 장기 실행 애플리케이션에서 리소스를 정리하고 Memory 누수를 방지하는 데 특히 유용합니다.
사용예사용예에 대한 직접 링크
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()에 전달했던 것과 동일한 함수 참조여야 합니다.- 콜백을 찾을 수 없으면 메서드는 아무런 효과가 없습니다.
- 이 메서드는 주로 이벤트 기반 통신을 지원하는 실시간 음성 Provider와 함께 사용됩니다.
- 이벤트를 지원하지 않는 음성 Provider에서 호출하면 경고를 기록하고 아무 작업도 수행하지 않습니다.
- 장기 실행 애플리케이션에서 Memory 누수를 방지하려면 이벤트 리스너를 제거해야 합니다.