Với API Thông báo một lần (beta) của Nền tảng Messenger, một trang có thể yêu cầu người dùng gửi 1 tin nhắn trao đổi thêm sau khi kết thúc khoảng thời gian nhắn tin 24 giờ. Người dùng sẽ được mời nhận thông báo trong tương lai. Sau khi người dùng yêu cầu nhận thông báo, trang sẽ nhận được một mã tương đương với quyền gửi một tin nhắn cho người dùng. Mã này chỉ dùng được một lần và sẽ hết hạn trong vòng 1 năm kể từ khi tạo.
Các trang muốn sử dụng API này cần đăng ký quyền "Thông báo một lần" ở phần "Nhắn tin nâng cao" của Cài đặt Trang. Trang cần đồng ý với các điều khoản beta và sẽ được cấp quyền nếu đáp ứng tiêu chí của chúng tôi.
Thông qua API Gửi, trang có thể gửi mẫu tin nhắn yêu cầu nhận thông báo. Loại mẫu cần sử dụng là one_time_notif_req
. Phần nội dung của yêu cầu sẽ tuân theo định dạng chuẩn dành cho tất cả các loại mẫu, với thuộc tính message.attachment.payload
chứa chi tiết về loại và nội dung riêng của từng loại mẫu. Bạn chỉ được phép tùy chỉnh tiêu đề và phần tải dữ liệu của yêu cầu. Trường title
chỉ được dài tối đa 65 ký tự.
{
"recipient": {
"id":"
Mẫu yêu cầu nhận Thông báo một lần sẽ hiển thị và khi người dùng nhấp vào nút Thông báo cho tôi, hệ thống sẽ gửi webhook message_optins
đến phần phụ trợ của bạn và bạn có thể dùng one_time_notif_token
để gửi tin nhắn trao đổi thêm một lần đến người dùng ngoài khoảng thời gian 24 giờ.
Để gửi tin nhắn trao đổi thêm, hãy gửi yêu cầu POST
đến API Gửi, với one_time_notif_token
nhận được qua webhook và message.text
được đặt trong phần nội dung yêu cầu:
curl -X POST -H "Content-Type: application/json" -d '{
"recipient": {
"one_time_notif_token":"<ONE_TIME_TOKEN>"
},
"message": {
"text":"<MESSAGE_CONTENT>"
}
}' "https://graph.facebook.com/v21.0
/me/messages?access_token=<PAGE_ACCESS_TOKEN>"
Để gửi tin nhắn đa phương tiện, hãy thay văn bản bằng nội dung đa phương tiện. Vui lòng xem Tài liệu tham khảo về API Gửi để biết danh sách đầy đủ các loại tin nhắn được hỗ trợ. one_time_notif_token
chỉ sử dụng được 1 lần và sẽ bị vô hiệu hóa sau khi gửi tin nhắn thành công.
Khi người dùng đồng ý nhận thông báo về một thông tin cập nhật cụ thể, bạn sẽ nhận được sự kiện webhook có payload
và one_time_notif_token
. Bạn sẽ phải lưu trữ cả phần tải dữ liệu và mã để gửi tin nhắn trao đổi thêm khi có thông tin này. Lưu ý rằng sẽ không có API riêng để truy vấn danh sách one_time_notif_token
nên bạn cần xử lý và lưu trữ thông tin webhook khi nhận được. Mỗi mã chỉ sử dụng được 1 lần và sẽ hết hạn trong vòng 1 năm kể từ ngày tạo.
{ "sender": { "id":"<PSID>" }, "recipient": { "id":"<PAGE_ID>" }, "timestamp":1458692752478, "optin": { "type": "one_time_notif_req", "payload": "<USER_DEFINED_PAYLOAD>", "one_time_notif_token":"<ONE_TIME_TOKEN>", } }
Bạn có thể xem thêm thông tin trên trang câu hỏi thường gặp.