Cấu hình
Tùy chỉnh giao diện và hành vi của widget.
Tùy chọn Init#
| Tùy chọn | Mặc định | Mô tả |
|---|---|---|
| agentId | bắt buộc* | ID duy nhất của agent của bạn. *Với các widget chỉ có người thật (humans-only), chỉ cần channelId là đủ. |
| channelId | — | ID của kênh widget. Xác định cài đặt của widget nào (tạo kiểu, tooltip/banner outbound) được áp dụng khi một agent vận hành nhiều widget, và là định danh duy nhất cho các widget chỉ có người thật. Cần ít nhất một trong hai agentId / channelId. |
| position | bottom-right | bottom-right hoặc bottom-left |
| primaryColor | #3B82F6 | Màu thương hiệu cho nút và tiêu đề widget |
| title | Support | Văn bản tiêu đề của header |
| greeting | auto | Tin nhắn chào mừng (mặc định tải từ cài đặt bảng điều khiển) |
| language | page | Ngôn ngữ của widget dưới dạng mã BCP-47 (de, pt-BR). Quyết định giao diện, lời chào và câu hỏi nhanh. Nếu bỏ trống, widget đi theo <html lang> của trang: trang có lang khác en giờ khởi động bằng ngôn ngữ đó, bất kể trình duyệt của khách. Riêng <html lang="en"> được xem là giá trị mặc định của template và bị bỏ qua: khách giữ nguyên hành vi cũ (lựa chọn đã nhớ, rồi đến ngôn ngữ trình duyệt). Truyền 'browser' để bỏ qua hoàn toàn <html lang> và quay về hành vi «chỉ trình duyệt». Đổi lúc chạy bằng Respondo.setLanguage('fr') — hữu ích cho bộ chuyển ngôn ngữ không tải lại trang. |
| placeholder | — | Văn bản gợi ý (placeholder) tùy chỉnh cho ô nhập |
| quickQuestions | — | Mảng các câu hỏi gợi ý hiển thị trước tin nhắn đầu tiên |
| logoUrl | — | URL logo của bạn hiển thị trên tiêu đề widget |
| avatarUrl | — | URL avatar của AI agent hiển thị bên cạnh tin nhắn |
| identity | — | Danh tính người dùng đặt sẵn tại thời điểm init (cùng các trường như identify()) |
| localStorageKey | — | Khóa localStorage để tự động đọc userId (cho các thiết lập GTM / no-code) |
| chatSize | default | compact, default, hoặc large — kích thước cửa sổ chat |
| launcherSize | default | small, default, hoặc large — kích thước nút khởi chạy |
| offsetBottom | 20 | Khoảng cách từ cạnh dưới (px) |
| offsetSide | 20 | Khoảng cách từ cạnh trái/phải (px) |
| borderRadius | 20 | Bán kính bo góc cửa sổ chat (px) |
| zIndex | 999999 | z-index CSS cho vùng chứa widget |
| customCSS | — | CSS tùy chỉnh được tiêm vào Shadow DOM của widget để tạo kiểu nâng cao |
| testMode | false | Đánh dấu cuộc hội thoại là thử nghiệm (ẩn khỏi các chế độ xem chính) |
Cấu hình đầy đủ#
Cấu hình đầy đủjavascript
Respondo.init({
agentId: 'YOUR_AGENT_ID',
channelId: 'YOUR_CHANNEL_ID',
position: 'bottom-right', // 'bottom-right' | 'bottom-left'
primaryColor: '#2563eb',
language: 'de', // BCP-47; mặc định: <html lang> (en = tín hiệu yếu), 'browser' bỏ qua nó
title: 'Help Center',
greeting: 'How can we help?',
placeholder: 'Ask anything...',
logoUrl: 'https://yoursite.com/logo.png',
avatarUrl: 'https://yoursite.com/avatar.png',
quickQuestions: [
'How do I get started?',
'What are the pricing plans?',
'How do I contact support?'
],
testMode: false,
localStorageKey: 'myapp_user_id', // tự động đọc userId từ localStorage (GTM / no-code)
chatSize: 'default', // 'compact' | 'default' | 'large'
offsetBottom: 20, // khoảng cách từ dưới (px)
identity: { // tùy chọn: đặt tại init nếu người dùng đã được biết
email: 'user@example.com',
name: 'John Doe',
userId: 'usr_123',
properties: { // thuộc tính liên hệ tùy chỉnh
account_type: 'enterprise',
region: 'eu-west'
}
}
});Hầu hết cài đặt (màu sắc, logo, lời chào, câu hỏi nhanh) được quản lý từ bảng điều khiển Channels. Widget lấy chúng khi tải — bạn chỉ cần cặp
agentId/channelId từ mã nhúng.