Plugin chat

Kể từ ngày 09/05/2024, bạn sẽ không thể sử dụng bất kỳ chức năng nào của Plugin chat nữa. Plugin chat ở chế độ khách cũng sẽ ngay lập tức ngừng hoạt động. Bạn vẫn có thể dùng các tính năng khác như liên kết m.me.

Tài liệu này hướng dẫn cách thêm Plugin chat vào trải nghiệm Messenger của bạn trên trang web theo lập trình.

Nếu bạn muốn sử dụng Meta Business Suite để thêm Plugin chat vào trang web (khuyên dùng), vui lòng truy cập vào Trung tâm trợ giúp doanh nghiệp của Meta để biết thêm thông tin.

Cách hoạt động

Khi bạn cài đặt Facebook SDK dành cho JavaScript trên trang web của mình, Plugin chat sẽ hiển thị trên trang web đó. Theo mặc định, hộp thoại lời chào sẽ hiển thị trên máy tính và thiết bị di động. Người dùng có thể nhấp vào nút đóng để thu nhỏ hộp thoại. Bạn có thể tùy chỉnh lời chào, giao diện (chẳng hạn như màu sắc) và trải nghiệm nhắn tin (chẳng hạn như menu và câu trả lời nhanh) của plugin này. Trạng thái của hộp thoại sẽ được lưu vào bộ nhớ đệm, được phóng to hoặc thu nhỏ và duy trì từ phiên này sang phiên khác.

Đăng nhập

Nếu người dùng đã đăng nhập vào Facebook, plugin này sẽ hiển thị nút "Tiếp tục dưới tên [NAME]" và "Tiếp tục với vai trò khách". Nếu người dùng chưa đăng nhập vào Facebook, plugin này sẽ hiển thị nút "Đăng nhập vào Messenger" và "Tiếp tục với vai trò khách".

Thông báo webhook

Khi một người nhấp vào plugin này để bắt đầu hoặc tiếp tục chat với doanh nghiệp bạn, hệ thống sẽ gửi thông báo webhook đến máy chủ của bạn. Thông báo này chứa:

  • Thông tin về người đó, chẳng hạn như ID trong Trang (PSID) hoặc ID tham chiếu người dùng
  • Xác định nguồn tin nhắn là Plugin chat
  • Thông báo có thể chứa thông tin tham chiếu

Nếu bạn đã triển khai Màn hình chào mừng trong plugin này và người đó nhấp vào nút Bắt đầu để bắt đầu cuộc trò chuyện với doanh nghiệp bạn, hệ thống sẽ gửi thông báo webhook messaging_postbacks đến máy chủ của bạn. Sau đó, doanh nghiệp của bạn có thể dùng ID tham chiếu của người dùng để gửi tin nhắn đến người đó trong khoảng thời gian nhắn tin tiêu chuẩn 24 giờ.

Cuộc trò chuyện hiện có

Nếu người đó đã có cuộc trò chuyện với doanh nghiệp bạn, lịch sử chat sẽ tự động tải trong plugin này. Khi người đó tiếp tục cuộc trò chuyện - gửi tin nhắn, nhấp vào nút hoặc thực hiện hành động nào đó khác mà bạn đã triển khai trong cuộc trò chuyện, hệ thống sẽ gửi thông báo webhook messaging đến máy chủ của bạn hoặc thông báo webhook messaging_referral nếu bạn thêm thông tin tham chiếu. Sau đó, doanh nghiệp của bạn có thể dùng PSID để gửi tin nhắn đến người đó trong khoảng thời gian nhắn tin tiêu chuẩn 24 giờ.

Các loại tin nhắn được Plugin chat hỗ trợ

  • Âm thanh, Video, Hình ảnh và Ảnh GIF
  • Nút Gọi
  • Menu cố định
  • Nút Đăng lại
  • Hành động của người gửi
  • Tin nhắn văn bản
  • Câu trả lời nhanh bằng văn bản
  • Nút URL
  • Câu trả lời nhanh về email của người dùng
  • Câu trả lời nhanh về số điện thoại của người dùng

Plugin này không hỗ trợ:

  • Nút Mua
  • Nút Chơi game
  • Mẫu danh sách, file phương tiện hoặc Open Graph
  • Câu trả lời nhanh về vị trí
  • Nút Đăng nhập
  • Nút Đăng xuất
  • Trình duyệt trong ứng dụng của Messenger
  • Nút Chia sẻ

Trước khi bạn bắt đầu

Hướng dẫn này giả định rằng bạn đã đọc phần Tổng quan về nền tảng Messenger, cũng như triển khai các thành phần cần thiết để gửi/nhận tin nhắn và thông báo.

Bạn sẽ cần:

  • Quyền pages_messaging
  • Mã truy cập Trang do một người có thể thực hiện tác vụ MODERATE trên Trang Facebook của bạn yêu cầu
  • Ứng dụng được liên kết với Trang Facebook đã đăng ký nhận các trường webhooks messaging, messaging_postbacksmessaging_referrals
  • Miền của trang web bạn đã thêm vào danh sách cho phép thông qua API Trang cá nhân Messenger hoặc Meta Business Suite

Điều khoản về Công cụ kinh doanh trên Meta được áp dụng khi bạn sử dụng Plugin chat.

Giới hạn

  • Trang web của bạn phải đang hoạt động hoặc được đưa vào danh sách cho phép thì bạn mới có thể triển khai Plugin chat thành công
  • Nếu Trang Facebook của doanh nghiệp bạn đặt giới hạn độ tuổi hoặc quốc gia trong phần cài đặt Trang, Plugin chat sẽ không hiển thị cho những người chưa đăng nhập vào tài khoản Facebook khi họ truy cập trang web của bạn.
  • Hộp thoại lời chào sẽ được lưu vào bộ nhớ đệm trên trình duyệt Safari phiên bản 12 trở lên và Firefox

Thêm Plugin chat

Bước 1. Thêm SDK

Thêm Facebook SDK dành cho JavaScript vào từng trang trên trang web của bạn - nơi bạn muốn hiển thị plugin.

<!-- Messenger Chat Plugin Code --> <div id="fb-root"></div> <div id="fb-customer-chat" class="fb-customerchat"></div> <script> var chatbox = document.getElementById('fb-customer-chat'); chatbox.setAttribute("page_id", "PAGE-ID"); chatbox.setAttribute("attribution", "biz_inbox"); </script> <script> window.fbAsyncInit = function() { FB.init({ xfbml : true, version : 'API-VERSION' }); }; (function(d, s, id) { var js, fjs = d.getElementsByTagName(s)[0]; if (d.getElementById(id)) return; js = d.createElement(s); js.id = id; js.src = 'https://connect.facebook.net/en_US/sdk/xfbml.customerchat.js'; fjs.parentNode.insertBefore(js, fjs); }(document, 'script', 'facebook-jssdk')); </script> 

Bước 2. Tùy chỉnh Plugin

Sử dụng API

Gửi yêu cầu POST đến điểm cuối /PAGE-ID/chat_plugin để tùy chỉnh lời chào, màu sắc, biểu tượng và các yếu tố khác cho plugin của bạn.

Yêu cầu mẫu

Được định dạng để dễ đọc.
curl -i -X POST "https://graph.facebook.com/v19.0/PAGE-ID/chat_plugin
    ?welcome_screen_greeting:YOUR-WELCOME-TEXT
    &theme_color:553399
    &entry_point_icon:MESSENGER-ICON
    &entry_point_label:CHAT
    &access_token=PAGE-ACCESS-TOKEN"

Hãy xem Tài liệu tham khảo về Plugin chat để biết thêm thông tin về các trường bạn có thể dùng để tùy chỉnh plugin của mình.

Sử dụng thuộc tính HTML

Bạn chỉ nên sử dụng phương thức này cho các nội dung tùy chỉnh không được cung cấp qua công cụ thiết lập trong phần cài đặt Trang hoặc API.

Thuộc tínhMô tả

theme_color

Không bắt buộc. Màu sử dụng làm chủ đề cho plugin, bao gồm màu nền của biểu tượng Plugin chat và màu nền của mọi tin nhắn do người dùng gửi. Hỗ trợ mọi mã màu thập lục phân có ký hiệu số đứng đầu (ví dụ: #0084FF), trừ màu trắng. Bạn nên chọn màu có độ tương phản cao với màu trắng.

logged_in_greeting

Không bắt buộc. Nội dung lời chào sẽ hiển thị nếu người dùng hiện đã đăng nhập Facebook. Tối đa 80 ký tự.

logged_out_greeting

Không bắt buộc. Nội dung lời chào sẽ hiển thị nếu người dùng hiện không đăng nhập Facebook. Tối đa 80 ký tự.

greeting_dialog_display

Không bắt buộc. Cài đặt cách hiển thị plugin và hộp thoại lời chào. Các giá trị sau đây được hỗ trợ:


  • show: Hộp thoại lời chào hiển thị và vẫn mở trên máy tính cũng như thiết bị di động sau số giây mà thuộc tính greeting_dialog_delay đặt.
  • fade: Hộp thoại lời chào hiển thị trong chốc lát sau số giây mà thuộc tính greeting_dialog_delay đặt, rồi mờ dần và ẩn trên máy tính.
  • hide: Hộp thoại lời chào sẽ ẩn cho đến khi người dùng nhấp vào plugin trên máy tính và thiết bị di động. Nội dung lời chào sẽ hiển thị bên cạnh biểu tượng.
  • icon: Hộp thoại lời chào sẽ ẩn cho đến khi người dùng nhấp vào plugin trên máy tính và thiết bị di động. Nội dung lời chào sẽ không hiển thị.

Cài đặt plugin sẽ đặt mặc định thành show trên máy tính và thiết bị di động. Hãy xem phần Cách lưu vào bộ nhớ đệm bên dưới để biết thêm thông tin.

greeting_dialog_delay

Không bắt buộc. Đặt số giây trì hoãn trước khi hộp thoại lời chào hiển thị sau khi tải plugin. Tùy chọn này có thể dùng để tùy chỉnh thời điểm bạn muốn hiển thị hộp thoại lời chào. Nếu bạn đặt greeting_dialog_delay nhưng không đặt greeting_dialog_display, chúng tôi vẫn sẽ trì hoãn triển khai hộp thoại lời chào trên máy tính. Tuy nhiên, chúng tôi sẽ không trì hoãn triển khai hộp thoại đó trên thiết bị di động.

ref

Không bắt buộc. Bạn có thể chuyển một thông số tham chiếu không bắt buộc nếu muốn chuyển ngữ cảnh bổ sung trở lại sự kiện webhook. Bạn có thể sử dụng thuộc tính này cho nhiều mục đích, chẳng hạn như theo dõi trang mà người dùng bắt đầu cuộc trò chuyện, chuyển người dùng đến nội dung hoặc tính năng cụ thể có trong bot hoặc liên kết người dùng Messenger với phiên hoặc tài khoản trên trang web.

Thông báo webhook

Khi một người gửi tin nhắn cho doanh nghiệm bạn, hệ thống sẽ gửi thông báo webhook đến máy chủ của bạn.

Cuộc trò chuyện hiện có

Bạn sẽ nhận được thông báo webhook messaging khi một người gửi tin nhắn đến cuộc trò chuyện hiện có với doanh nghiệp bạn. Thông báo này sẽ bao gồm ID trong Trang của người đó và thông số source của đối tượng tags được đặt là customer_chat_plugin.

Thông báo tin nhắn

{
    "object": "page",
    "entry": [
        {
            "id": "PAGE-ID",
            "time": 1559598624359,
            "messaging": [
                {
                    "sender": {
                        "id": "PSID"
                    },
                    "recipient": {
                        "id": "PAGE-ID"
                    },
                    "timestamp": 1559598623749,
                    "message": {
                        "tags": {
                            "source": "customer_chat_plugin"
                        },
                        "mid": "nhEqs_THGoYyAhpK93uNCrIfLZD...",
                        "text": "hello, from customer chat!"
                    }
                }
            ]
        }
    ]
}

Thông báo tham chiếu tin nhắn

Nếu bạn đặt thuộc tính ref cho Plugin chat, hệ thống sẽ gửi thông báo webhook messaging_referrals đến máy chủ của bạn.

{
    "object": "page",
    "entry": [
        {
            "id": "PAGE-ID",
            "time": 1559598385735,
            "messaging": [
                {
                    "recipient": {
                        "id": "PAGE-ID"
                    },
                    "timestamp": 1559598385735,
                    "sender": {
                        "user_ref":"USER-REFERENCE-ID"
                    },
                    "referral": {
                        "ref": "REF-PARAMETER-INFORMATION",
                        "source": "CUSTOMER_CHAT_PLUGIN",
                        "type": "OPEN_THREAD",
                        "referer_uri": "REFERRAL-URI"
                    }
                }
            ]
        }
    ]
}

Cuộc trò chuyện mới

Bạn sẽ nhận được thông báo webhook messaging_postbacks khi một người nhấp vào nút Bắt đầu trên Màn hình chào mừng trong plugin để bắt đầu cuộc trò chuyện.

Thông báo đăng lại tin nhắn

{
    "object": "page",
    "entry": [
        {
            "id": "PAGE-ID",
            "time": 1559598624359,
            "messaging": [
                {
                    "sender": {
                        "user_ref": "USER-REFERENCE-ID"
                    },
                    "recipient": {
                        "id": "PAGE-ID"
                    },
                    "timestamp": 1559598623749,
                    "postback":{
                        "title": "TITLE-FOR-THE-CTA",  
                        "payload": "PAYLOAD-DEFINED-BY-CTA",
                        "referral": {
                            "ref": "ADDITIONAL-INFORMATION",
                            "source": "CUSTOMER_CHAT_PLUGIN",
                            "type": "OPEN_THREAD",
                    }
                }
            ]
        }
    ]
}

Yêu cầu đồng ý nhận tin nhắn marketing

Hãy truy cập hướng dẫn về Tin nhắn marketing của chúng tôi để tìm hiểu cách tạo yêu cầu đồng ý nhận tin nhắn marketing.

Giới hạn

Chỉ chủ đề Thông tin mới & khuyến mãi được hỗ trợ cho Tin nhắn marketing trong Plugin chat.

Thông báo chọn nhận tin nhắn

Hệ thống sẽ gửi thông báo webhook messaging_optins đến máy chủ của bạn khi một người chọn Tin nhắn marketing từ doanh nghiệp bạn.

"object": "page",
    "entry": [
        {
            "id": "PAGE-ID",
            "time": TIMESTAMP,
            "messaging": [
                {
                    "recipient": {
                        "id": "PAGE-ID"
                    },
                    "timestamp": TIMESTAMP,
                    "optin": {
                        "type": "notification_messages",
                        "payload": "empty_payload",
                        "notification_messages_token": "NOTIFICATION-MESSAGE-TOKEN",
                        "notification_messages_frequency": "MESSAGE-FREQUENCY",
                        "topic": "NOTIFICATION-MESSAGE-TOPIC",
                        "token_expiry_timestamp": EXPIRATION-DATE-TIMESTAMP,
                        "ref": "ADDITIONAL-INFORMATION",
                        "user_token_status": "NOT_REFRESHED",
                        "notification_messages_status": "RESUME_NOTIFICATIONS"
                    }
                }
            ]
        }
    ]
}

Bạn có thể đặt giá trị notification_messages_token thành giá trị ID trong đối tượng recipient để gửi Tin nhắn marketing cho người dùng.

Bí quyết khắc phục sự cố

  • Từ chối hiển thị...
    • Đảm bảo bạn đã đưa miền của mình vào danh sách hợp lệ
    • Đảm bảo bạn đặt tiêu đề Referrer-Policy để gửi URL giới thiệu
  • Plugin chat không hiển thị trên Firefox
    • Gỡ add-on vùng chứa Facebook trên Firefox.
    • Tắt tùy chọn chặn nội dung (nhấp vào tấm khiên màu xám trên thanh tìm kiếm) để thấy plugin hiển thị.

Xem thêm