init()
SDK를 초기화하고 아바타 연결을 시작합니다.
사용법
js
await SDK.init(options);InitOption
| 파라미터 | 타입 | 필수 | 기본값 | 설명 |
|---|---|---|---|---|
sdk_key | string | O | - | SDK 인증 키 |
avatar_id | string | O | - | 아바타 ID |
log_level | LogLevel | X | "debug" | 로그 레벨 |
language | LanguageCode | X | "ko_kr" | 언어 코드 (TTS 음성 + 자막) |
enable_microphone | boolean | X | true | 마이크 활성화 (STT용) |
auto_send | boolean | X | false | false(Push to Send): startListening/endListening으로 수동 제어. true(Auto Send): STT 상시 활성, 서버 VAD가 발화를 감지하여 자동 응답. Auto Send는 아바타가 지원하는 경우에만 동작하므로, 사전에 해당 아바타의 지원 여부를 확인하세요. |
stt_only | boolean | X | false | STT 전용 모드. true이면 아바타가 응답하지 않고 STT 결과만 반환합니다. false이면 STT 결과를 반환하고, 해당 결과를 기반으로 아바타가 응답합니다. |
LogLevel
브라우저 콘솔에 출력되는 로그 수준을 제어합니다. 설정한 레벨 이상만 출력됩니다.
| 값 | 출력 범위 | 용도 |
|---|---|---|
"debug" | debug, info, warn, error | 개발 중 상세 디버깅 (기본값) |
"info" | info, warn, error | 주요 이벤트만 확인 (연결 완료, 초기화 등) |
"warn" | warn, error | 잠재적 문제만 확인 |
"error" | error | 에러만 출력 |
"silent" | 없음 | 콘솔 출력 완전 비활성화 |
LanguageCode
아바타의 TTS 음성 및 자막 언어를 지정합니다.
| 값 | 언어 |
|---|---|
"ko_kr" | 한국어 (기본값) |
"en_us" | 영어 |
"ja_jp" | 일본어 |
"id_id" | 인도네시아어 |
연결 흐름
에러 처리
실패 시 내부 cleanup 후 IDLE로 리셋하고 Error를 throw합니다.
js
try {
await SDK.init(options);
} catch (error) {
// error.message에 실패 원인 포함
// "Failed to connect: ..." → SDK 키 검증 또는 WebSocket 연결 실패
// "Failed to connect streaming: ..." → 스트리밍 연결 실패
console.error(error.message);
}- init/destroy 진행 중 재호출 시 이전 작업 완료를 기다린 후 실행됩니다 (Mutex 직렬화).