Tích hợp Nhúng Form là tính năng cho phép bạn đưa các biểu mẫu (form) tùy chỉnh từ hệ thống bên ngoài vào trực tiếp trong module Nhắn tin của SmaxAi. Thay vì phải hỏi khách hàng từng thông tin một cách thủ công, bạn có thể gửi một form chuyên nghiệp để khách hàng tự điền, sau đó dữ liệu sẽ tự động đồng bộ về CRM hoặc phần mềm quản lý bán hàng của bạn.
Việc nhúng form giúp doanh nghiệp tối ưu hóa quy trình vận hành và nâng cao trải nghiệm khách hàng:
Để nhúng Form vào SmaxAi, bạn thực hiện theo các bước sau:
Bước 1: Truy cập vào module Cài đặt, sau đó chọn mục Tích hợp.
Bước 2: Tại cửa sổ tích hợp, bạn thiết lập các thông tin sau:
💡 Lưu ý: URL của form phải sử dụng giao thức HTTPS và cho phép nhúng trong iframe (không chặn X-Frame-Options) để có thể hiển thị chính xác trong SmaxAi.
Nếu bạn không phải là lập trình viên, hãy gửi phần này cho bộ phận IT hoặc đối tác phát triển phần mềm của bạn.
Để Form nhúng có thể tương tác hai chiều với SmaxAi (như tự động lấy thông tin khách hàng hoặc yêu cầu mở popup), bạn cần sử dụng phương thức postMessage của JavaScript.
SmaxAi sẽ gửi thông tin khách hàng hiện tại sang Form thông qua một event. Bạn hãy sử dụng đoạn code sau để bắt event này:
javascript// Nhận event từ SmaxAi Livechat để lấy thông tin khách hàng window.addEventListener('message', function (event) { if (typeof event.data == 'object' && event.data.name === '__SM_FORM_CUSTOMER') { console.log('Thông tin khách hàng:', event.data?.data?.customer); // Xử lý dữ liệu khách hàng tại đây (ví dụ: tự động điền vào các ô input) } }, false);
Bạn có thể yêu cầu SmaxAi cung cấp dữ liệu khách hàng hoặc điều khiển giao diện (như bật popup) bằng cách gửi message ngược lại cho window.parent.
Hàm hỗ trợ lấy Integration ID:
javascriptconst getIntegrationId = () => { return window.location.href.split('=')[1] }
Yêu cầu SmaxAi trả dữ liệu khách hàng:
javascriptif (window.parent) { window.parent.postMessage({ name: '__SM_FORM_CUSTOMER', data: { integration_id: getIntegrationId(), } }, '*') } else { console.error('window.parent is undefined') }
Yêu cầu SmaxAi hiển thị Popup:
javascriptif (window.parent) { window.parent.postMessage({ name: '__SM_FORM_POPUP', action: 'SHOW', // Sử dụng 'HIDE' để đóng popup data: { integration_id: getIntegrationId(), url: 'https://crm.com/orders?id=xxx', // URL muốn hiển thị trong popup title: 'Tiêu đề Popup', height: '80vh' // Chiều cao của popup } }, '*') } else { console.error('window.parent is undefined') }
⚠️ Cảnh báo bảo mật: Để đảm bảo an toàn, lập trình viên nên kiểm tra
event.origintrong hàmaddEventListenerđể chỉ chấp nhận message từ domain chính thức của SmaxAi, tránh các cuộc tấn công XSS.