Skip to content

v1에서 v2 마이그레이션

CDN 경로 변경

diff
- <script src="https://web.sdk.klleon.io/1.3.0/klleon-chat.umd.js"></script>
+ <script src="https://klleon.k1.klleon.io/{VERSION}/klleon-sdk.umd.js"></script>

글로벌 변수 변경

diff
- window.KlleonChat
+ window.KlleonSDK

API 변경사항

호환 API (그대로 사용 가능)

  • <avatar-container>, <chat-container> — 동일

init(option) 변경사항

init() 호출 방식은 동일하지만, 옵션이 변경되었습니다.

v1 옵션v2 옵션비고
sdk_keysdk_key동일
avatar_idavatar_id동일
enable_microphoneenable_microphone동일
log_levellog_level"silent" 추가됨
voice_code제거됨
subtitle_code제거됨. language로 통합
language신규. TTS 음성 + 자막 언어 통합 ("ko_kr", "en_us", "ja_jp", "id_id")
auto_send신규. true 시 서버 VAD 자동 응답
stt_only신규. true 시 STT 결과만 반환

제거된 API

v1대체 방법
reconnect()await destroy()await init(options)
changeAvatar(option)제거됨
wakeUpAvatar()제거됨

변경된 API (이름 변경)

v1v2비고
onChatEvent(cb)onSignal(cb)모든 서버 시그널 수신
onStatusEvent(cb)onStatus(cb)
onErrorEvent(cb)onError(cb)
destroy() (sync)await destroy()async 변경
sendTextMessage(text)sendMessage(text)
echo(text)speak(text)
startAudioEcho(audio)sendSpeakAudio(audio)
endAudioEcho()endSpeakAudio()
startStt()startListening()
endStt()endListening()
cancelStt()cancelListening()
stopSpeech()stopSpeaking()
clearMessageList()clearMessages()

새로운 API

API설명
setVolume(volume)볼륨 제어 (0-100)
getStatus()현재 SDK 상태 조회

코드 변경 예시

diff
  // 글로벌 변수 변경
- const SDK = window.KlleonChat;
+ const SDK = window.KlleonSDK;

  // destroy가 async로 변경
- SDK.destroy();
+ await SDK.destroy();

  // 이벤트 이름 변경 + init 전에 등록
- SDK.onStatusEvent(cb);
+ SDK.onStatus(cb);
- SDK.onChatEvent(cb);
+ SDK.onSignal(cb);
- SDK.onErrorEvent(cb);
+ SDK.onError(cb);

  await SDK.init(option);

  // 메서드 이름 변경
- SDK.sendTextMessage('안녕하세요');
+ SDK.sendMessage('안녕하세요');
- SDK.echo('반복할 텍스트');
+ SDK.speak('반복할 텍스트');
- SDK.startStt();
+ SDK.startListening();
- SDK.endStt();
+ SDK.endListening();
- SDK.stopSpeech();
+ SDK.stopSpeaking();

주의사항

  • v2는 ES2018+ 환경이 필요합니다
  • IE11은 미지원입니다
  • destroy()에 반드시 await를 사용해야 합니다