You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en-us/cloud/webhooks/automate-right-to-erasure.md
+17-15Lines changed: 17 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -89,6 +89,7 @@ After you add the webhook, use it to configure the bot with the following steps:
89
89
</TabItem>
90
90
91
91
<TabItemlabel="Discord">
92
+
92
93
1. Navigate to the [Applications page](https://discord.com/developers/applications).
93
94
1. Create a new application and name it to `GDPR Bot`.
94
95
1. The system redirects you to the **General Information** settings of the bot. Copy and save its application ID in a secure place.
@@ -125,7 +126,8 @@ To obtain these identifiers, open the [Creations](https://create.roblox.com/dash
125
126
126
127
After you finish setting up the webhook, bot, and API key for data stores, add them to the scripts that implement the bot's automation logic. The following example uses Python 3:
127
128
128
-
1. Install Python libraries using the following commands:
129
+
1. Install Python libraries using the following commands:
130
+
129
131
<Tabs>
130
132
<TabItemlabel="Guilded">
131
133
@@ -147,7 +149,7 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
147
149
</TabItem>
148
150
</Tabs>
149
151
150
-
1.Copy and save the following scripts corresponding to different parts of the bot logic in the same directory:
152
+
1. Copy and save the following scripts corresponding to different parts of the bot logic in the same directory:
151
153
152
154
```python title="bot_config.py"
153
155
BOT_TOKEN=""
@@ -249,7 +251,6 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
@@ -443,17 +444,18 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
443
444
</TabItem>
444
445
</Tabs>
445
446
446
-
1. On the **bot_config.py**filefor main configuration of the bot:
447
+
1. On the `bot_config.py`filefor main configuration of the bot:
448
+
449
+
1. Set `BOT_TOKEN` to the token generated by your bot.
450
+
2. Set `OPEN_CLOUD_API_KEY`as the API key you created.
451
+
3. Set `ROBLOX_WEBHOOK_SECRET`as the secret you set when configuring the webhook on Creator Dashboard.
452
+
4. In `STANDARD_DATA_STORE_ENTRIES`and`ORDERED_DATA_STORE_ENTRIES` dictionaries for locating the data store of each record to delete:
453
+
1. Add your copied Start Place IDs as keys.
454
+
2. Add Universe IDs as the first element of the tuple value.
455
+
3. Replace the second element of the tuplewith the name, scope, entry key name, and associated User ID of your data stores. If you use a different data schema, modify to match your own data schema accordingly.
447
456
448
-
1. Set `BOT_TOKEN` to the token generated by your bot.
449
-
2. Set `OPEN_CLOUD_API_KEY`as the API key you created.
450
-
3. Set `ROBLOX_WEBHOOK_SECRET`as the secret you set when configuring the webhook on Creator Dashboard.
451
-
4. In `STANDARD_DATA_STORE_ENTRIES`and`ORDERED_DATA_STORE_ENTRIES` dictionaries for locating the data store of each record to delete:
452
-
1. Add your copied Start Place IDs as keys.
453
-
1. Add Universe IDs as the first element of the tuple value.
454
-
1. Replace the second element of the tuplewith the name, scope, entry key name, and associated User ID of your data stores. If you use a different data schema, modify to match your own data schema accordingly.
457
+
1. Execute the following command to run the bot:
455
458
456
-
1. Execute the following command to run the bot:
457
459
<Tabs>
458
460
<TabItem label="Guilded">
459
461
@@ -471,7 +473,7 @@ After you finish setting up the webhook, bot, and API key for data stores, add t
471
473
</TabItem>
472
474
</Tabs>
473
475
474
-
1. The bot then starts to listen and verify Roblox webhooks for right to erasure Requests and calls the Open Cloud endpoint for deleting the corresponding data store.
476
+
1. The bot then starts to listen and verify Roblox webhooks for right to erasure Requests and calls the Open Cloud endpoint for deleting the corresponding data store.
475
477
476
478
<Alert severity="warning">
477
479
To ensure constant and secure execution of the scripts, save and run them locally only. Keep your local device or virtual machine running the scripts turned on at all times. In the event that your device goes offline, you need to manually manage any missed messages during the offline period and handle delivery failures according to the [retry policy](../../cloud/webhooks/webhook-notifications.md#delivery-failure-retry-policy).
@@ -498,10 +500,10 @@ You can create and run a test message to verify that your custom program can pro
498
500
}'
499
501
```
500
502
501
-
2. If you have a webhook secret:
503
+
1. If you have a webhook secret:
502
504
1. Generate a `Roblox-Signature` by applying HMAC-SHA256 encoding to your webhook secret key.
503
505
2. Set the current time using UTC timestamp in seconds as`Timestamp`.
504
-
3. Put together the `description`in the following format:
506
+
1. Put together the `description`in the following format:
505
507
506
508
```plain title="Description Field Format"
507
509
{Timestamp}. You have received a new notification for Right to Erasure for the User Id: {userId} in the game(s) with Ids: {gameIds}`.
0 commit comments