Las notificaciones de experiencia son una forma para que los usuarios que han optado por participar de 13 años o más se mantengan al tanto de sus juegos favoritos mediante notificaciones personalizadas y oportunas. Como desarrollador, puedes determinar qué tipos de actividades dentro del juego son más importantes para notificar a tus usuarios, así como definir el contenido de la notificación.


Después de recibir una notificación, los usuarios pueden unirse a la experiencia directamente a través del botón Unirse y aparecer de acuerdo con tus datos de lanzamiento.
Para obtener más información sobre características, requisitos de elegibilidad, pautas de uso y la correspondiente API de Engine, consulta la guía de Experiencias.
Implementación
El recurso UserNotification te permite enviar notificaciones de experiencia a los usuarios. Antes de usarlo, debes generar una clave API o configurar OAuth 2.0 para tu aplicación. Los ejemplos de esta página utilizan claves API.
Para enviar una notificación de experiencia a un usuario:
- Crea una cadena de notificación en el Tablero del Creador (este paso debe hacerse en el Tablero del Creador; no hay API de Open Cloud para ello).
- Forma la solicitud:
- Copia la clave API en el encabezado de solicitud x-api-key.
- Copia el ID del activo de la cadena de notificación como el valor de la propiedad payload.message_id.
- Establece payload.type a "MOMENT".
- Establece source.universe para que sea la URL del recurso del universo "universes/${UniverseID}".
Enviar una notificación de experienciacurl --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"}}'
Ejemplo de respuesta que devuelve el ID de la notificación en el campo id:
{
"path": "users/505306092/notifications/6ca4d981-36fa-4255-82a1-14d95c116889",
"id": "6ca4d981-36fa-4255-82a1-14d95c116889"
}
Personalizar notificaciones usando parámetros
Para personalizar la notificación para cada destinatario, incluye parámetros en la cadena de notificación. Luego, personaliza los parámetros al llamar a la API. Por ejemplo, puedes definir la cadena de notificación como:
Agrega los parámetros userId-friend y points en el script:
Personalizar Notificación Usando Parámetroscurl --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"}}}}'
Incluir datos de lanzamiento y analítica
Para mejorar aún más la experiencia del usuario, puedes incluir datos de lanzamiento en la notificación, útiles para escenarios como redirigir a los usuarios a una ubicación de coordenadas o personalizar la experiencia de unión. Además, puedes incluir datos de analítica para segmentar el rendimiento de diferentes categorías de notificaciones.
Incluir Datos de Lanzamiento y Datos de Analíticacurl --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"}}'
Límites de tasa y entrega
Cada usuario puede recibir una notificación por día de una experiencia determinada, y recibes retroalimentación transparente cuando se alcanza el límite de reducción de un usuario.
Hay muchas otras razones por las que una notificación podría no ser entregada. Para más información, consulta Sistema de entrega en la guía de Engine.