이 문서에서는 JavaScript SDK(이하 "SDK")에 대한 질문을 정리합니다.


회원과 비회원을 구분하고 싶어요

boot할 때 부트 옵션으로 memberId를 전달하는지 여부에 따라 멤버 유저(회원)과 익명 유저(비회원)을 구분합니다.

더 자세한 내용은 부트하기를 참고합니다.


유저의 도움 없이 유저의 프로필 정보를 미리 등록하고 싶어요

부트하기에서 멤버 유저를 위한 부트 실행 코드를 참고합니다.


채널 버튼이 뜨는 위치를 조정하고 싶어요

데스크설정 > 일반 설정 > 버튼 설치 및 설정 > 웹 버튼 설정에서 채널 버튼의 위치를 조정할 수 있습니다.


채널 버튼에 사용되는 이미지를 변경하고 싶어요

데스크설정 > 일반 설정 > 버튼 설치 및 설정 > 웹 버튼 설정에서 채널 버튼에 사용되는 이미지를 변경할 수 있습니다.


직접 만든 HTML 엘리먼트를 채널 버튼으로 사용하고 싶어요

채널 버튼 커스터마이징을 참고합니다.


CSS 선택자로 SDK의 특정 HTML 요소를 선택하고 싶어요

SDK에서는 채널 버튼, 메신저 등의 엘리먼트를 선택할 수 있는 CSS 선택자를 제공하지 않습니다.

🚧

SDK 특정 요소가 사용하고 있는 id와 class 등의 속성을 CSS 선택자로 사용하지 않는 것을 권장합니다.

해당 값은 언제든지 변경될 수 있습니다.


채널 버튼, 메신저 등이 웹사이트의 특정 엘리먼트 뒤에 가려져서 보이지 않아요

부트 옵션의 zIndex를 전달하면 SDK 내부 HTML 엘리먼트의 z-index 값을 조정할 수 있습니다.


SPA 환경에서 워크플로우와 마케팅 기능을 활용하고 싶어요

SPA 환경에서 URL 변경 시 SDK와 채널톡 서버는 이를 자동으로 인지하지 못합니다. 워크플로우와 마케팅 기능을 제대로 활용하려면 setPagetrack 메서드를 함께 사용해야 합니다.

웹 어플리케이션의 URL이 변경될 때, 아래의 단계를 진행합니다.

  1. setPage를 사용하여 SDK에 현재 페이지 정보를 갱신합니다.
ChannelIO('setPage', 'CURRENT_PAGE');
  1. track을 사용하여 PageView 이벤트를 전송합니다. 이때, PageView 이벤트는 setPage에서 설정한 현재 페이지 정보를 포함합니다.
ChannelIO('track', 'PageView');

이 과정을 통해 SDK와 채널톡 서버는 사용자의 현재 페이지 위치를 정확히 인식하게 되며, 이에 맞는 마케팅 메시지와 워크플로우를 제공할 수 있습니다.

📘

이벤트와 페이지에 대한 더 자세한 내용은 이벤트 이해하기, Page 이해하기를 참고합니다.