Skip to content

Commit 75df6c3

Browse files
update Open Source Docs from Roblox internal teams
1 parent aa6ea66 commit 75df6c3

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

45 files changed

+714
-244
lines changed

content/common/navigation/avatar/tutorials.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
backTo:
2-
title: Back to Avatar
2+
title: Back to avatar
33
path: /avatar/
44
navigation:
55
- heading: Curriculum paths

content/common/navigation/cloud/guides.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ navigation:
1010
path: /cloud/guides/inventory
1111
- title: Engine instances
1212
path: /cloud/guides/instance
13-
- title: Experience notifications
13+
- title: User notifications
1414
path: /cloud/guides/experience-notifications
1515
- title: Messaging
1616
path: /cloud/guides/usage-messaging

content/common/navigation/engine/reference.yaml

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1288,6 +1288,11 @@ navigation:
12881288
type: engineapi
12891289
source: /reference/engine/classes/ImageLabel.yaml
12901290
ignoreTranslation: true
1291+
- title: ImportSession
1292+
path: /reference/engine/classes/ImportSession
1293+
type: engineapi
1294+
source: /reference/engine/classes/ImportSession.yaml
1295+
ignoreTranslation: true
12911296
- title: IncrementalPatchBuilder
12921297
path: /reference/engine/classes/IncrementalPatchBuilder
12931298
type: engineapi
@@ -2238,6 +2243,11 @@ navigation:
22382243
type: engineapi
22392244
source: /reference/engine/classes/SensorBase.yaml
22402245
ignoreTranslation: true
2246+
- title: SerializationService
2247+
path: /reference/engine/classes/SerializationService
2248+
type: engineapi
2249+
source: /reference/engine/classes/SerializationService.yaml
2250+
ignoreTranslation: true
22412251
- title: ServerReplicator
22422252
path: /reference/engine/classes/ServerReplicator
22432253
type: engineapi
@@ -2278,11 +2288,6 @@ navigation:
22782288
type: engineapi
22792289
source: /reference/engine/classes/ShirtGraphic.yaml
22802290
ignoreTranslation: true
2281-
- title: ShorelineUpgraderService
2282-
path: /reference/engine/classes/ShorelineUpgraderService
2283-
type: engineapi
2284-
source: /reference/engine/classes/ShorelineUpgraderService.yaml
2285-
ignoreTranslation: true
22862291
- title: SkateboardController
22872292
path: /reference/engine/classes/SkateboardController
22882293
type: engineapi
@@ -3301,6 +3306,11 @@ navigation:
33013306
type: engineapi
33023307
source: /reference/engine/enums/AccessoryType.yaml
33033308
ignoreTranslation: true
3309+
- title: ActionOnAutoResumeSync
3310+
path: /reference/engine/enums/ActionOnAutoResumeSync
3311+
type: engineapi
3312+
source: /reference/engine/enums/ActionOnAutoResumeSync.yaml
3313+
ignoreTranslation: true
33043314
- title: ActionOnStopSync
33053315
path: /reference/engine/enums/ActionOnStopSync
33063316
type: engineapi

content/common/navigation/engine/studio.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
defaultType: markdown
22
backTo:
3-
title: Back to Platform
3+
title: Back to platform
44
path: /platform
55
navigation:
66
- heading: Roblox Studio
Lines changed: 18 additions & 53 deletions
Original file line numberDiff line numberDiff line change
@@ -1,55 +1,30 @@
11
---
2-
title: Experience notifications
3-
description: Send experience notifications from the web with Open Cloud APIs. Experience notifications are a way for users to keep up with their favorite experiences through timely, personalized notifications.
2+
title: User notifications
3+
description: Use Open Cloud to send experience notifications to users. Help players keep up with their favorite experiences through timely, personalized notifications.
44
---
55

66
import Intro from '../../includes/experience-notifications/intro.md'
7-
import Eligibility from '../../includes/experience-notifications/eligibility.md'
8-
import ImplementationCreateNotificationString from '../../includes/experience-notifications/implementation-create-notification-string.md'
9-
import DeliverySystem from '../../includes/experience-notifications/delivery-system.md'
10-
import AnalyticsOverview from '../../includes/experience-notifications/analytics-overview.md'
11-
import AnalyticsNotificationsSummary from '../../includes/experience-notifications/analytics-notification-summary.md'
12-
import AnalyticsItemizedStats from '../../includes/experience-notifications/analytics-itemized-stats.md'
13-
import Guidelines from '../../includes/experience-notifications/guidelines.md'
147

158
<Intro components={props.components} />
169

17-
## Eligibility requirements
10+
After they receive a notification, users can join the experience directly via the **Join** button and spawn according to your [launch data](#include-launch-and-analytics-data).
1811

19-
<Eligibility components={props.components} />
20-
21-
## Usage guidelines
22-
23-
<Guidelines components={props.components} />
12+
For more information on features, eligibility requirements, usage guidelines, and the corresponding Engine API, see the [Experiences guide](../../production/promotion/experience-notifications.md).
2413

2514
## Implementation
2615

27-
Implementing Experience Notifications begins with [creating a notification string](#create-a-notification-string). Once a notification string is set up, you can [send notifications](#send-an-experience-notification) with optional [custom parameters](#customize-notifications-using-parameters).
28-
29-
Alternatively, you can use the [Engine API](../../production/promotion/experience-notifications.md) to trigger notifications through server-side scripts.
30-
31-
### Create a notification string
32-
33-
<ImplementationCreateNotificationString components={props.components} />
34-
35-
### Send an experience notification
36-
37-
The [UserNotification](../../cloud/reference/UserNotification) API lets you send Experience Notifications to users. Before using it, you must [generate an API key](../../cloud/auth/api-keys.md) or [configure OAuth 2.0](../../cloud/auth/oauth2-overview.md) for your app. The examples on this page use API keys.
38-
39-
Notifications will be delivered to [opted-in](https://en.help.roblox.com/hc/en-us/articles/24769602332692-Out-of-Experience-Notifications) users age 13+ through their Roblox notification stream, at which point they can join the experience directly via the **Join** button on the notification and spawn according to your [launch data](#include-launch-and-analytics-data).
16+
The [UserNotification](/cloud/reference/UserNotification) resource lets you send experience notifications to users. Before using it, you must [generate an API key](../../cloud/auth/api-keys.md) or [configure OAuth 2.0](../../cloud/auth/oauth2-overview.md) for your app. The examples on this page use API keys.
4017

41-
<img src="../../assets/open-cloud/experience-notifications/Notification-Stream.png" width="393" alt="Notifications stream on the Roblox app" />
42-
43-
To send an Experience Notification to a user:
44-
45-
1. Copy the API key to the `x-api-key` request header of the [Create User Notification](../../cloud/reference/UserNotification#Create-User-Notification) call.
46-
2. In your request:
18+
To send an experience notification to a user:
4719

20+
1. [Create a notification string](../../production/promotion/experience-notifications.md#create-a-notification-string) in the [Creator Dashboard](https://create.roblox.com/dashboard/creations). This step must be done in the Creator Dashboard; there's no Open Cloud API for it.
21+
1. Form the request:
22+
1. Copy the API key to the `x-api-key` request header.
4823
1. Copy the notification string asset ID as the value of the `payload.message_id` property.
49-
2. Set `payload.type` to `"MOMENT"`.
50-
3. Set `source.universe` to be the universe resource URL `"universes/${UniverseID}"`.
24+
1. Set `payload.type` to `"MOMENT"`.
25+
1. Set `source.universe` to be the universe resource URL `"universes/${UniverseID}"`.
5126

52-
```bash title="Send an Experience Notification"
27+
```bash title="Send an experience notification"
5328
curl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications' \
5429
--header 'x-api-key: ${ApiKey}' \
5530
--header 'Content-Type: application/json' \
@@ -75,11 +50,11 @@ Example response which returns the notification ID in the `id` field:
7550

7651
### Customize notifications using parameters
7752

78-
To customize the notification for each recipient, you can include **parameters** in the [notification string](#create-a-notification-string), then customize the parameters when calling the API. For example, you can define the notification string as:
53+
To customize the notification for each recipient, include **parameters** in the [notification string](#implementation). Then customize the parameters when calling the API. For example, you can define the notification string as:
7954

8055
<p><Chip label="{userId-friend} beat your high score by {points} points! Time to level up?" size="large" color="primary" variant="outlined" /></p>
8156

82-
Then, set the `userId-friend` and `points` parameters in the script:
57+
Add the `userId-friend` and `points` parameters in the script:
8358

8459
```bash title="Customize Notification Using Parameters"
8560
curl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications' \
@@ -102,7 +77,7 @@ curl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications'
10277

10378
### Include launch and analytics data
10479

105-
To further improve user experience, you can include **launch data** in the notification, useful for scenarios such as routing users to a coordinate location or personalizing the joining experience. Additionally, you can include [analytics](#analytics) data to segment the performance of different categories of notifications.
80+
To further improve user experience, you can include **launch data** in the notification, useful for scenarios such as routing users to a coordinate location or personalizing the joining experience. Additionally, you can include [analytics](../../production/promotion/experience-notifications.md#analytics) data to segment the performance of different categories of notifications.
10681

10782
```bash title="Include Launch Data and Analytics Data"
10883
curl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications' \
@@ -125,18 +100,8 @@ curl --location 'https://apis.roblox.com/cloud/v2/users/${UserId}/notifications'
125100
}'
126101
```
127102

128-
## Delivery system
129-
130-
<DeliverySystem components={props.components} />
131-
132-
## Analytics
133-
134-
<AnalyticsOverview components={props.components} />
135-
136-
### Notifications summary
137-
138-
<AnalyticsNotificationsSummary components={props.components} />
103+
## Rate limits and delivery
139104

140-
### Itemized stats
105+
Each user can receive **one** notification per day from a given experience, and you receive transparent feedback when a user's throttle limit is reached.
141106

142-
<AnalyticsItemizedStats components={props.components} />
107+
There are many other reasons that a notification might not be delivered. For more information, see [Delivery system](../../production/promotion/experience-notifications.md#delivery-system) in the Engine guide.

content/en-us/creator-fund.md

Lines changed: 2 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,8 @@ With the launch of the Creator Fund, we want new and existing developers to have
99

1010
<figure>
1111
<Chip
12-
color="success"
13-
label="Status: Open"
12+
color="error"
13+
label="Status: Closed"
1414
size="medium"
1515
variant="filled"/>
1616
</figure>
@@ -28,17 +28,3 @@ We prioritize projects that encompass:
2828
- In-experience avatars that reflect elements of the user's platform avatar identity. Ability to leverage items that you can equip on platform avatars, like the ones you buy in the [Marketplace](https://www.roblox.com/catalog).
2929

3030
If you are accepted into the program, we partner with you to define key deliverables for your project and provide funding based off of your progress towards these milestones.
31-
32-
## Application requirements
33-
34-
- 18+ age requirement.
35-
- Details about you and/or your team.
36-
- Short description of your project.
37-
- Pitch deck of high-level strategy, design specifications, etc.
38-
- Project milestone schedule and budget.
39-
40-
If you feel like you and your project are a perfect fit for this program, please submit your application.
41-
42-
<figure>
43-
<Button size="large" variant="contained" href="https://roblox.qualtrics.com/jfe/form/SV_a4PdqU3StYp6crI">Apply Now</Button>
44-
</figure>

content/en-us/creator-programs/index.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -102,8 +102,8 @@ Roblox offers various programs for creators on the platform to provide additiona
102102
<h4>Creator Fund</h4>
103103
<figure>
104104
<Chip
105-
color="success"
106-
label="Status: Open"
105+
color="error"
106+
label="Status: Closed"
107107
size="medium"
108108
variant="filled"/>
109109
</figure>

content/en-us/creator-programs/rdc.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Roblox Developers Conference
33
description: RDC is an invite-only, hybrid (in-person and online) event that brings together Roblox developers, brands, and creators worldwide.
44
---
55

6-
RDC is an invite-only, hybrid (in-person and online) event that brings together Roblox developers, brands, and creators worldwide. There will be networking opportunities, in-depth breakout sessions, product demonstrations, and office hours—all designed to empower your success and showcase the future of Roblox.
6+
Roblox Developers Conference (RDC) is coming back as a virtual and in-person event to San Jose on September 5-6! RDC is an invite-only event that brings together Roblox developers, brands, and creators worldwide. There will be networking opportunities, in-depth breakout sessions, product demonstrations, and office hours—all designed to empower your success and showcase the future of Roblox.
77

88
<figure>
99
<Chip

content/en-us/discovery.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -183,6 +183,6 @@ Roblox is [committed](https://devforum.roblox.com/t/discovery-on-roblox-past-pre
183183

184184
### Notifications
185185

186-
**Notifications** elevate timely and actionable information to users. Historically, we have focused on building and scaling social notifications, such as friend requests and invitations. This system allows for creators to engage with users directly while they are away. Milestones, high scores, [friend activity](https://devforum.roblox.com/t/user-mentions-in-experience-notifications/2980675), and other key moments can be delivered to users as personalized notifications to the notification stream. For additional information and implementation instructions, see [Experience Notifications](./cloud/guides/experience-notifications.md).
186+
**Notifications** elevate timely and actionable information to users. Historically, we have focused on building and scaling social notifications, such as friend requests and invitations. This system allows for creators to engage with users directly while they are away. Milestones, high scores, [friend activity](https://devforum.roblox.com/t/user-mentions-in-experience-notifications/2980675), and other key moments can be delivered to users as personalized notifications to the notification stream. For additional information and implementation instructions, see [Experience notifications](./cloud/guides/experience-notifications.md).
187187

188188
You can also use our [in-experience notification permission prompts](https://devforum.roblox.com/t/introducing-in-experience-notification-permission-prompts/2909125) to upsell notification opt-in within experiences. Notifications can help resurrect lapsed users or remind users when they need to take an action.

content/en-us/includes/experience-notifications/delivery-system.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ title: include
44

55
A spam prevention system exists to ensure the quality of notifications for users and protect the shared notification channel for all developers. Because of this, delivery of notifications is not guaranteed. This spam prevention system is directly informed by user engagement: the more users engage with your notifications, the more reach they'll receive. You can transparently track engagement metrics in the [analytics](#analytics) dashboard, as explained below.
66

7-
Experience Notifications have a static throttle limit where each user can receive one notification per day from a given experience and you'll receive transparent feedback when a user's throttle limit is reached.
7+
Experience notifications have a static throttle limit; each user can receive one notification per day from a given experience, and you receive transparent feedback when a user's throttle limit is reached.
88

99
Additionally, the following list outlines some of the special cases which may result in **non‑delivery** of a notification:
1010

0 commit comments

Comments
 (0)