Nếu ứng dụng của bạn có rất ít lần làm mới trang (tức là nội dung được thay đổi trên phía client nhưng không có lần làm mới trang nào xảy ra) và nhiều JavaScript bất đồng bộ, bạn sẽ cần tích hợp Intercom theo cách hơi khác để đảm bảo dữ liệu của khách hàng được cập nhật và họ nhận được tất cả nội dung gửi đi của bạn (tin nhắn, tour, v.v.)
Đây là những gì chúng tôi đề xuất:
Trước tiên, hãy bao gồm tệp thư viện JS Intercom trong phần tử head HTML của bạn.
(function(){var w=window;var ic=w.Intercom;if(typeof ic==="function"){ic('reattach_activator');ic('update',w.intercomSettings);}else{var d=document;var i=function(){i.c(arguments);};i.q=[];i.c=function(args){i.q.push(args);};w.Intercom=i;var l=function(){var s=d.createElement('script');s.type='text/javascript';s.async=true;s.src='https://widget.intercom.io/widget/' + APP_ID;var x=d.getElementsByTagName('script')[0];x.parentNode.insertBefore(s,x);};if(w.attachEvent){w.attachEvent('onload',l);}else{w.addEventListener('load',l,false);}}})();
Quan trọng: Nếu bạn sao chép đoạn mã trên, hãy chắc chắn thay đổi ID workspace của bạn một cách thủ công (được gọi là APP_ID của bạn trong mã).
Tiếp theo, khi bạn có một người dùng đã đăng nhập trên trang web của mình (sau khi họ đã xác thực và bạn có thông tin chi tiết về họ), bạn gọi window.Intercom('boot', {user_data})
, nơi user_data
chứa tất cả dữ liệu về người dùng. Vui lòng đảm bảo gửi user_id và/hoặc email trong mỗi lần gọi để cập nhật người dùng của bạn. Điều này sẽ gửi thông tin chi tiết của người dùng đã đăng nhập đến Intercom và sẽ kiểm tra các tin nhắn mới mà nên được hiển thị cho người dùng.
Một ví dụ cho khách truy cập đã đăng xuất sẽ là:
window.Intercom('boot', {
app_id: 'abc12345',
custom_launcher_selector: '#my_custom_link'
});