문서

JavaScript API

위젯 스크립트를 로드한 후 사용할 수 있는 전역 메서드입니다.

Respondo.init(config)#

위젯을 초기화하고 마운트합니다. 한 번만 호출해야 합니다. 위젯 인스턴스를 반환합니다.

const widget = Respondo.init({
  agentId: 'YOUR_AGENT_ID'
});

Respondo.identify(identity)#

현재 세션에 사용자 신원을 첨부합니다. 로그인 후에 호출하세요.

Respondo.identify({
  email: 'user@example.com',
  name: 'John Doe',
  userId: 'usr_123',
  userHash: 'hmac_sha256_signature', // 선택, 신원 확인용
  metadata: { plan: 'pro' },
  properties: {                      // 커스텀 연락처 속성
    account_type: 'enterprise',      // Agent Settings에서 정의한 키
    region: 'eu-west'
  }
});

Respondo.track(name, properties?)#

현재 방문자에 대한 클라이언트 측 이벤트(예: 구매, 요금제 업그레이드)를 기록합니다. 이벤트는 이벤트로 트리거되는 투어를 시작할 수 있고 투어 목표 달성에 집계됩니다. keepalive를 사용한 최선의 노력(best-effort) 전달이므로, 페이지 이동 직전(결제 리디렉션)에 발생한 이벤트도 도착합니다. init() 이후에 호출하세요.

Respondo.track('purchase_completed', {
  plan: 'pro',
  amount: 49
});

Respondo.destroy()#

페이지에서 위젯을 제거합니다. 위젯이 표시되지 않아야 하는 페이지로 이동할 때 SPA에서 유용합니다. 방문자의 신원이나 저장된 대화는 지우지 않습니다 — 로그아웃에는 Respondo.reset()을 사용하세요.

// 페이지에서 위젯 제거
Respondo.destroy();

// 필요하면 나중에 다시 초기화(같은 대화가 이어집니다)
Respondo.init({ agentId: 'YOUR_AGENT_ID' });

Respondo.reset()#

로그아웃 / 공용 기기 인계용. 브라우저에서 익명 방문자 ID, 저장된 대화, 세션 토큰을 지우고, 서버 측에서 세션 토큰을 폐기해 그 사본이 더 이상 동작하지 않게 하며, 새로운 익명 위젯을 다시 마운트합니다. 앱의 로그아웃 훅에서 호출하세요.

// 로그아웃 시 — 신원, 대화, 세션을 지우고 새로 시작
Respondo.reset();

자동 데이터 수집

위젯은 각 대화와 함께 다음 항목을 자동으로 캡처하여 저장합니다:

데이터출처
클라이언트 IPHTTP 헤더
브라우저 / OSUser-Agent 헤더
언어Accept-Language 헤더
시간대Intl API(JavaScript)
페이지 URLwindow.location
리퍼러Referer 헤더