Thông báo trải nghiệm là cách để người dùng đã đăng ký từ 13 tuổi trở lên theo dõi các trò chơi yêu thích của họ thông qua các thông báo kịp thời và cá nhân hóa. Là nhà phát triển, bạn có thể xác định những loại hoạt động trong trò chơi quan trọng nhất để thông báo cho người dùng của bạn, cũng như định nghĩa nội dung thông báo.


Sau khi nhận được thông báo, người dùng có thể tham gia trải nghiệm trực tiếp qua nút Tham gia và xuất hiện theo dữ liệu khởi động của bạn.
Để biết thêm thông tin về các tính năng, yêu cầu đủ điều kiện, hướng dẫn sử dụng và API Engine tương ứng, hãy xem Hướng dẫn về trải nghiệm.
Triển khai
Tài nguyên UserNotification cho phép bạn gửi thông báo trải nghiệm đến người dùng. Trước khi sử dụng, bạn phải tạo một khóa API hoặc cấu hình OAuth 2.0 cho ứng dụng của bạn. Các ví dụ trên trang này sử dụng khóa API.
Để gửi một thông báo trải nghiệm đến người dùng:
- Tạo một chuỗi thông báo trong Bảng điều khiển Người sáng tạo (bước này phải thực hiện trong Bảng điều khiển Người sáng tạo; không có API Open Cloud cho việc này).
- Hình thành yêu cầu:
- Sao chép khóa API vào tiêu đề yêu cầu x-api-key.
- Sao chép ID tài sản chuỗi thông báo làm giá trị cho thuộc tính payload.message_id.
- Đặt payload.type thành "MOMENT".
- Đặt source.universe thành URL tài nguyên vũ trụ "universes/${UniverseID}".
Gửi thông báo trải nghiệmcurl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications' \--header 'x-api-key: ${ApiKey}' \--header 'Content-Type: application/json' \--data '{"source": {"universe": "universes/${UniverseID}"},"payload": {"message_id": "${AssetID}","type": "MOMENT"}}'
Ví dụ phản hồi trả về ID thông báo trong trường id:
{
"path": "users/505306092/notifications/6ca4d981-36fa-4255-82a1-14d95c116889",
"id": "6ca4d981-36fa-4255-82a1-14d95c116889"
}
Tùy chỉnh thông báo bằng cách sử dụng tham số
Để tùy chỉnh thông báo cho từng người nhận, hãy bao gồm tham số trong chuỗi thông báo. Sau đó tùy chỉnh các tham số khi gọi API. Ví dụ, bạn có thể định nghĩa chuỗi thông báo như sau:
Thêm các tham số userId-friend và points trong script:
Tùy chỉnh Thông báo bằng Tham sốcurl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications' \--header 'x-api-key: ${ApiKey}' \--header 'Content-Type: application/json' \--data '{"source": {"universe": "universes/${UniverseID}"},"payload": {"message_id": "${AssetID}","type": "MOMENT","parameters": {"userId-friend": {"int64_value": 3702832553},"points": {"string_value": "5"}}}}'
Bao gồm dữ liệu khởi động và phân tích
Để cải thiện thêm trải nghiệm người dùng, bạn có thể bao gồm dữ liệu khởi động trong thông báo, hữu ích cho các kịch bản như điều hướng người dùng đến một vị trí tọa độ hoặc cá nhân hóa trải nghiệm tham gia. Ngoài ra, bạn có thể bao gồm dữ liệu phân tích để phân đoạn hiệu suất của các loại thông báo khác nhau.
Bao gồm Dữ liệu Khởi động và Dữ liệu Phân tíchcurl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications' \--header 'x-api-key: ${ApiKey}' \--header 'Content-Type: application/json' \--data '{"source": {"universe": "universes/${UniverseID}"},"payload": {"message_id": "${AssetID}","type": "MOMENT"},"join_experience": {"launch_data": "Test_Launch_Data"},"analytics_data": {"category": "Test_Analytics_Category"}}'
Giới hạn tỷ lệ và giao hàng
Mỗi người dùng có thể nhận một thông báo mỗi ngày từ một trải nghiệm nhất định, và bạn sẽ nhận được phản hồi minh bạch khi đạt đến giới hạn throttling của người dùng.
Có nhiều lý do khác mà một thông báo có thể không được giao. Để biết thêm thông tin, hãy xem Hệ thống giao hàng trong hướng dẫn Engine.