Tài liệu

JavaScript API

Các phương thức toàn cục khả dụng sau khi tải script của widget.

Respondo.init(config)#

Khởi tạo và gắn widget. Phải được gọi một lần. Trả về thể hiện (instance) của widget.

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

Respondo.identify(identity)#

Gắn danh tính người dùng vào phiên hiện tại. Gọi sau khi đăng nhập.

Respondo.identify({
  email: 'user@example.com',
  name: 'John Doe',
  userId: 'usr_123',
  userHash: 'hmac_sha256_signature', // tùy chọn, để xác minh danh tính
  metadata: { plan: 'pro' },
  properties: {                      // thuộc tính liên hệ tùy chỉnh
    account_type: 'enterprise',      // khóa được định nghĩa trong Cài đặt agent
    region: 'eu-west'
  }
});

Respondo.track(name, properties?)#

Ghi lại một sự kiện phía client cho khách truy cập hiện tại (ví dụ mua hàng, nâng cấp gói). Các sự kiện có thể khởi động Tours kích hoạt theo sự kiện và được tính vào mục tiêu của tour. Gửi theo cơ chế best-effort với keepalive, nên các sự kiện được bắn ngay trước khi điều hướng (chuyển hướng thanh toán) vẫn đến nơi. Gọi sau init().

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

Respondo.destroy()#

Gỡ widget khỏi trang. Hữu ích cho các SPA khi điều hướng đến những trang không nên hiển thị widget. Nó không xóa danh tính của khách truy cập hay cuộc hội thoại đã lưu — để đăng xuất, hãy dùng Respondo.reset().

// Gỡ widget khỏi trang
Respondo.destroy();

// Khởi tạo lại sau nếu cần (tiếp tục cùng cuộc hội thoại)
Respondo.init({ agentId: 'YOUR_AGENT_ID' });

Respondo.reset()#

Đăng xuất / bàn giao thiết bị dùng chung. Xóa visitor id ẩn danh, cuộc hội thoại đã lưu và token phiên khỏi trình duyệt, thu hồi token phiên ở phía máy chủ để các bản sao của nó ngừng hoạt động, và gắn lại một widget ẩn danh mới. Hãy gọi hàm này từ hook đăng xuất của ứng dụng của bạn.

// Khi đăng xuất — xóa danh tính, cuộc hội thoại và phiên, bắt đầu lại từ đầu
Respondo.reset();

Thu thập dữ liệu tự động

Widget tự động ghi lại và lưu trữ những dữ liệu sau với mỗi cuộc hội thoại:

Dữ liệuNguồn
IP của clientHTTP headers
Trình duyệt / OSUser-Agent header
Ngôn ngữAccept-Language header
Múi giờIntl API (JavaScript)
URL trangwindow.location
ReferrerReferer header