From 79c361bfe2d16781cafb74ac05ba3ebd96b65132 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Tue, 6 Dec 2022 16:39:28 +0000 Subject: [PATCH 01/11] =?UTF-8?q?=E2=9C=A8=20Updated=20SDK=20docs=20to=20r?= =?UTF-8?q?epresent=20SDK=20programming=20on=20/development=20branch?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../{invokeEventAsync.mdx => fireCustomEvent.mdx} | 2 +- pages/sdks/sdk/methods/fireEconomyEvent.mdx | 15 +++++++++++++++ pages/sdks/sdk/methods/fireProgressionEvent.mdx | 15 +++++++++++++++ pages/sdks/sdk/methods/getAllFastFlagsAsync.mdx | 15 +++++++++++++++ pages/sdks/sdk/methods/getLocalVariable.mdx | 15 +++++++++++++++ pages/sdks/sdk/methods/getLocalVariables.mdx | 15 +++++++++++++++ pages/sdks/sdk/methods/isAuthenticated.mdx | 2 +- pages/sdks/sdk/methods/meta.json | 11 +++++++++-- pages/sdks/sdk/methods/setLocalVariable.mdx | 15 +++++++++++++++ pages/sdks/sdk/methods/setVerboseLogging.mdx | 15 +++++++++++++++ pages/sdks/sdk/properties/branch.mdx | 15 +++++++++++++++ pages/sdks/sdk/properties/meta.json | 5 ++++- pages/sdks/sdk/properties/version.mdx | 15 +++++++++++++++ pages/sdks/sdk/signals/meta.json | 7 ++++++- pages/sdks/sdk/signals/onDaemonStarted.mdx | 15 +++++++++++++++ pages/sdks/sdk/signals/onDaemonStopped.mdx | 15 +++++++++++++++ pages/sdks/sdk/signals/onMessageRequestFail.mdx | 15 +++++++++++++++ pages/sdks/sdk/signals/onMessageRequestSent.mdx | 15 +++++++++++++++ pages/sdks/sdk/signals/onThrottled.mdx | 15 +++++++++++++++ 19 files changed, 231 insertions(+), 6 deletions(-) rename pages/sdks/sdk/methods/{invokeEventAsync.mdx => fireCustomEvent.mdx} (92%) create mode 100644 pages/sdks/sdk/methods/fireEconomyEvent.mdx create mode 100644 pages/sdks/sdk/methods/fireProgressionEvent.mdx create mode 100644 pages/sdks/sdk/methods/getAllFastFlagsAsync.mdx create mode 100644 pages/sdks/sdk/methods/getLocalVariable.mdx create mode 100644 pages/sdks/sdk/methods/getLocalVariables.mdx create mode 100644 pages/sdks/sdk/methods/setLocalVariable.mdx create mode 100644 pages/sdks/sdk/methods/setVerboseLogging.mdx create mode 100644 pages/sdks/sdk/properties/branch.mdx create mode 100644 pages/sdks/sdk/properties/version.mdx create mode 100644 pages/sdks/sdk/signals/onDaemonStarted.mdx create mode 100644 pages/sdks/sdk/signals/onDaemonStopped.mdx create mode 100644 pages/sdks/sdk/signals/onMessageRequestFail.mdx create mode 100644 pages/sdks/sdk/signals/onMessageRequestSent.mdx create mode 100644 pages/sdks/sdk/signals/onThrottled.mdx diff --git a/pages/sdks/sdk/methods/invokeEventAsync.mdx b/pages/sdks/sdk/methods/fireCustomEvent.mdx similarity index 92% rename from pages/sdks/sdk/methods/invokeEventAsync.mdx rename to pages/sdks/sdk/methods/fireCustomEvent.mdx index 87b1792..bc1466b 100644 --- a/pages/sdks/sdk/methods/invokeEventAsync.mdx +++ b/pages/sdks/sdk/methods/fireCustomEvent.mdx @@ -6,7 +6,7 @@ description: Guide to using Datalink's server-side Lua SDK import {Code} from '../../../../components/code'; import Callout from 'nextra-theme-docs/callout'; -# invokeEventAsync +# fireCustomEvent ```lua diff --git a/pages/sdks/sdk/methods/fireEconomyEvent.mdx b/pages/sdks/sdk/methods/fireEconomyEvent.mdx new file mode 100644 index 0000000..c1d6067 --- /dev/null +++ b/pages/sdks/sdk/methods/fireEconomyEvent.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# fireEconomyEvent + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/fireProgressionEvent.mdx b/pages/sdks/sdk/methods/fireProgressionEvent.mdx new file mode 100644 index 0000000..c373587 --- /dev/null +++ b/pages/sdks/sdk/methods/fireProgressionEvent.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# fireProgressionEvent + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/getAllFastFlagsAsync.mdx b/pages/sdks/sdk/methods/getAllFastFlagsAsync.mdx new file mode 100644 index 0000000..4294067 --- /dev/null +++ b/pages/sdks/sdk/methods/getAllFastFlagsAsync.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# getAllFastFlagsAsync + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/getLocalVariable.mdx b/pages/sdks/sdk/methods/getLocalVariable.mdx new file mode 100644 index 0000000..c8bceec --- /dev/null +++ b/pages/sdks/sdk/methods/getLocalVariable.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# getLocalVariable + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/getLocalVariables.mdx b/pages/sdks/sdk/methods/getLocalVariables.mdx new file mode 100644 index 0000000..c124559 --- /dev/null +++ b/pages/sdks/sdk/methods/getLocalVariables.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# getLocalVariables + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/isAuthenticated.mdx b/pages/sdks/sdk/methods/isAuthenticated.mdx index e59ffe7..92d6865 100644 --- a/pages/sdks/sdk/methods/isAuthenticated.mdx +++ b/pages/sdks/sdk/methods/isAuthenticated.mdx @@ -6,7 +6,7 @@ description: Guide to using Datalink's server-side Lua SDK import {Code} from '../../../../components/code'; import Callout from 'nextra-theme-docs/callout'; -# IsAuthenticated +# isAuthenticated ```lua diff --git a/pages/sdks/sdk/methods/meta.json b/pages/sdks/sdk/methods/meta.json index 8d79943..94a4aa7 100644 --- a/pages/sdks/sdk/methods/meta.json +++ b/pages/sdks/sdk/methods/meta.json @@ -1,7 +1,14 @@ { "isAuthenticated": ":isAuthenticated", "authenticateAsync": ":authenticateAsync", - "getFastFlagAsync": ":getFastFlagAsync", + "fireCustomEvent": ":fireCustomEvent", + "fireEconomyEvent": ":fireEconomyEvent", + "fireProgressionEvent": ":fireProgressionEvent", "getFastIntAsync": ":getFastIntAsync", - "invokeEventAsync": ":invokeEventAsync" + "getFastFlagAsync": ":getFastFlagAsync", + "getAllFastFlagsAsync": ":getAllFastFlagsAsync", + "setVerboseLogging": ":setVerboseLogging", + "setLocalVariable": ":setLocalVariable", + "getLocalVariable": ":getLocalVariable", + "getLocalVariables": ":getLocalVariables" } \ No newline at end of file diff --git a/pages/sdks/sdk/methods/setLocalVariable.mdx b/pages/sdks/sdk/methods/setLocalVariable.mdx new file mode 100644 index 0000000..cd9ded0 --- /dev/null +++ b/pages/sdks/sdk/methods/setLocalVariable.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# setLocalVariable + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/setVerboseLogging.mdx b/pages/sdks/sdk/methods/setVerboseLogging.mdx new file mode 100644 index 0000000..a9d7153 --- /dev/null +++ b/pages/sdks/sdk/methods/setVerboseLogging.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# setVerboseLogging + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/properties/branch.mdx b/pages/sdks/sdk/properties/branch.mdx new file mode 100644 index 0000000..2fc75df --- /dev/null +++ b/pages/sdks/sdk/properties/branch.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# Branch + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/properties/meta.json b/pages/sdks/sdk/properties/meta.json index 6f31cf5..65355b3 100644 --- a/pages/sdks/sdk/properties/meta.json +++ b/pages/sdks/sdk/properties/meta.json @@ -1 +1,4 @@ -{ } \ No newline at end of file +{ + "branch": ".Branch", + "version": ".Version" +} \ No newline at end of file diff --git a/pages/sdks/sdk/properties/version.mdx b/pages/sdks/sdk/properties/version.mdx new file mode 100644 index 0000000..8910c58 --- /dev/null +++ b/pages/sdks/sdk/properties/version.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# Version + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/signals/meta.json b/pages/sdks/sdk/signals/meta.json index c8a6b2d..6f310a3 100644 --- a/pages/sdks/sdk/signals/meta.json +++ b/pages/sdks/sdk/signals/meta.json @@ -1,3 +1,8 @@ { - "onAuthenticated": ".onAuthenticated" + "onAuthenticated": ".onAuthenticated", + "onDaemonStarted": ".onDaemonStarted", + "onDaemonStopped": ".onDaemonStopped", + "onMessageRequestFail": ".onMessageRequestFail", + "onMessageRequestSent": ".onMessageRequestSent", + "onThrottled": ".onThrottled" } \ No newline at end of file diff --git a/pages/sdks/sdk/signals/onDaemonStarted.mdx b/pages/sdks/sdk/signals/onDaemonStarted.mdx new file mode 100644 index 0000000..8555c8d --- /dev/null +++ b/pages/sdks/sdk/signals/onDaemonStarted.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# onDaemonStarted + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/signals/onDaemonStopped.mdx b/pages/sdks/sdk/signals/onDaemonStopped.mdx new file mode 100644 index 0000000..210ca27 --- /dev/null +++ b/pages/sdks/sdk/signals/onDaemonStopped.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# onDaemonStopped + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/signals/onMessageRequestFail.mdx b/pages/sdks/sdk/signals/onMessageRequestFail.mdx new file mode 100644 index 0000000..c1d0d62 --- /dev/null +++ b/pages/sdks/sdk/signals/onMessageRequestFail.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# onMessageRequestFail + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/signals/onMessageRequestSent.mdx b/pages/sdks/sdk/signals/onMessageRequestSent.mdx new file mode 100644 index 0000000..cd83dcc --- /dev/null +++ b/pages/sdks/sdk/signals/onMessageRequestSent.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# onMessageRequestSent + + +```lua + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/signals/onThrottled.mdx b/pages/sdks/sdk/signals/onThrottled.mdx new file mode 100644 index 0000000..bd669a2 --- /dev/null +++ b/pages/sdks/sdk/signals/onThrottled.mdx @@ -0,0 +1,15 @@ +--- +title: Authenticating using the Server Side SDK +description: Guide to using Datalink's server-side Lua SDK +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# onThrottled + + +```lua + +``` + \ No newline at end of file From 54bf3949bd4074cf0d8b24f3eeb27538707918b9 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Tue, 6 Dec 2022 16:39:54 +0000 Subject: [PATCH 02/11] =?UTF-8?q?=E2=9C=A8=20Add=20'.env'=20to=20.gitignor?= =?UTF-8?q?e?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 346d8b9..acd772f 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ !.yarn/sdks node_modules .next +.env \ No newline at end of file From 75ba114745d1d70cef7d0f3ef3859e29b3387e6e Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Tue, 6 Dec 2022 17:00:34 +0000 Subject: [PATCH 03/11] =?UTF-8?q?=E2=9C=A8=20Documented=20method=20'authen?= =?UTF-8?q?ticateAsync'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/sdks/sdk/methods/authenticateAsync.mdx | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/pages/sdks/sdk/methods/authenticateAsync.mdx b/pages/sdks/sdk/methods/authenticateAsync.mdx index b5d3a48..fb9af43 100644 --- a/pages/sdks/sdk/methods/authenticateAsync.mdx +++ b/pages/sdks/sdk/methods/authenticateAsync.mdx @@ -1,6 +1,6 @@ --- -title: Authenticating using the Server Side SDK -description: Guide to using Datalink's server-side Lua SDK +title: Authentication +description: Datalink Authentication --- import {Code} from '../../../../components/code'; @@ -8,8 +8,21 @@ import Callout from 'nextra-theme-docs/callout'; # authenticateAsync +Primary resource used in authenticating the SDK + ```lua +local DatalinkSDK = require(Path.To.DatalinkSDK) +local DatalinkInstance = DatalinkSDK.new({ + datalinkUserAccountId = YOUR_ACCOUNT_ID, + datalinkUserToken = YOUR_ACCOUNT_TOKEN +}) + +DatalinkInstance:authenticateAsync():andThen(function() + print('Hello from Datalink!') +end) +``` +```typescript ``` \ No newline at end of file From bc00348531ae019bf7979964a616d9fc06224143 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Tue, 6 Dec 2022 17:00:46 +0000 Subject: [PATCH 04/11] =?UTF-8?q?=E2=9C=A8=20Documented=20method=20'isAuth?= =?UTF-8?q?enticated'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/sdks/sdk/methods/isAuthenticated.mdx | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/pages/sdks/sdk/methods/isAuthenticated.mdx b/pages/sdks/sdk/methods/isAuthenticated.mdx index 92d6865..878e034 100644 --- a/pages/sdks/sdk/methods/isAuthenticated.mdx +++ b/pages/sdks/sdk/methods/isAuthenticated.mdx @@ -8,8 +8,24 @@ import Callout from 'nextra-theme-docs/callout'; # isAuthenticated +Primary resource for acknowledging if the SDK is or is not authenticated + ```lua +local DatalinkSDK = require(Path.To.DatalinkSDK) +local DatalinkInstance = DatalinkSDK.new({ + datalinkUserAccountId = YOUR_ACCOUNT_ID, + datalinkUserToken = YOUR_ACCOUNT_TOKEN +}) + +local isDatalinkAuthenticated = DatalinkInstance:isAuthenticated() + +if not isDatalinkAuthenticated then + ... +end +``` +```typescript + ``` \ No newline at end of file From 74adfce22c8db93104ec5414a3ebad84edec63d6 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Tue, 6 Dec 2022 17:00:57 +0000 Subject: [PATCH 05/11] =?UTF-8?q?=E2=9C=A8=20Documented=20method=20'fireCu?= =?UTF-8?q?stomEvent'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/sdks/sdk/methods/fireCustomEvent.mdx | 36 +++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/pages/sdks/sdk/methods/fireCustomEvent.mdx b/pages/sdks/sdk/methods/fireCustomEvent.mdx index bc1466b..14b8949 100644 --- a/pages/sdks/sdk/methods/fireCustomEvent.mdx +++ b/pages/sdks/sdk/methods/fireCustomEvent.mdx @@ -8,8 +8,42 @@ import Callout from 'nextra-theme-docs/callout'; # fireCustomEvent +This method is used to invoke a custom developer event, a custom event allows the developer to send whatever information they would like to send over to the Datalink Service + +## Parameters + +#### eventName: String + +The `eventName` parameter should be used to define the name of the custom event the developer would like to invoke. + +#### eventParameters: Dictionary ( [string]: [datatype](https://www.tutorialspoint.com/lua/lua_data_types.htm) ) + +The `eventParameters` parameter should be defined as a dictionary which contains the parameters the developer would like to attach to the custom event + +## Example + ```lua +local DatalinkSDK = require(Path.To.DatalinkSDK) +local DatalinkInstance = DatalinkSDK.new({ + datalinkUserAccountId = YOUR_ACCOUNT_ID, + datalinkUserToken = YOUR_ACCOUNT_TOKEN +}) +DatalinkInstance:authenticateAsync():andThen(function() + DatalinkInstance:fireCustomEvent( + "MyEventName", { + ["MyEventParameter"] = "PlayerExperience", + ["MyEventValue"] = Player.Experience + } + ) +end) ``` - \ No newline at end of file +```typescript + +``` + + + + The above sample is an **EXAMPLE** of what you are able to do, a players expereince is one of many things you're able to send over to the dashboard + \ No newline at end of file From 871670c0ffc8c1219913f89ff72edbda868172f2 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Wed, 7 Dec 2022 16:06:09 +0000 Subject: [PATCH 06/11] =?UTF-8?q?=E2=9C=A8=20Documented=20method=20'getPla?= =?UTF-8?q?yerHash'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/sdks/sdk/methods/getPlayerHash.mdx | 49 ++++++++++++++++++++++++ pages/sdks/sdk/methods/meta.json | 3 +- 2 files changed, 51 insertions(+), 1 deletion(-) create mode 100644 pages/sdks/sdk/methods/getPlayerHash.mdx diff --git a/pages/sdks/sdk/methods/getPlayerHash.mdx b/pages/sdks/sdk/methods/getPlayerHash.mdx new file mode 100644 index 0000000..e971b17 --- /dev/null +++ b/pages/sdks/sdk/methods/getPlayerHash.mdx @@ -0,0 +1,49 @@ +--- +title: Player hash +description: Datalink player hashes +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# getPlayerHash + +This method should be used to get the hash assigned to a player, this hash is generated via the sha256 algorithm & provides a way to link specific data to a player anonymously + +## Parameters + +#### player: Player + +The `player` parameter is pretty self explanitory, the player you want to get the hash of + +## Example + + +```lua +local DatalinkSDK = require(Path.To.DatalinkSDK) +local DatalinkInstance = DatalinkSDK.new({ + datalinkUserAccountId = YOUR_ACCOUNT_ID, + datalinkUserToken = YOUR_ACCOUNT_TOKEN +}) + +DatalinkInstance:authenticateAsync():andThen(function() + DatalinkInstance:fireCustomEvent( + "playerDrivenEvent", { + ["playerHash"] = DatalinkInstance:getPlayerHash(player), + ["playerEvent"] = "PlayerPartyStarted", + ["playerInvites"] = { + DatalinkInstance:getPlayerHash(playerThatWasInvited) + } + } + ) +end) +``` +```typescript + +``` + + + + It's important that you keep the data sent to datalink anonymous. + Datalink is an anonymous data-driven platform -- so please respect our mission. + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/meta.json b/pages/sdks/sdk/methods/meta.json index 94a4aa7..cc031cc 100644 --- a/pages/sdks/sdk/methods/meta.json +++ b/pages/sdks/sdk/methods/meta.json @@ -10,5 +10,6 @@ "setVerboseLogging": ":setVerboseLogging", "setLocalVariable": ":setLocalVariable", "getLocalVariable": ":getLocalVariable", - "getLocalVariables": ":getLocalVariables" + "getLocalVariables": ":getLocalVariables", + "getPlayerHash": ":getPlayerHash" } \ No newline at end of file From 78367d13cdda85117e5bb8862b8cd4465a175920 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Wed, 7 Dec 2022 16:11:53 +0000 Subject: [PATCH 07/11] =?UTF-8?q?=F0=9F=92=AC=20Update=20PR=20based=20on?= =?UTF-8?q?=20feedback=20from=20@DevComp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/sdks/sdk/methods/fireCustomEvent.mdx | 10 +++++----- pages/sdks/sdk/methods/getPlayerHash.mdx | 6 +++--- 2 files changed, 8 insertions(+), 8 deletions(-) diff --git a/pages/sdks/sdk/methods/fireCustomEvent.mdx b/pages/sdks/sdk/methods/fireCustomEvent.mdx index 14b8949..c360b95 100644 --- a/pages/sdks/sdk/methods/fireCustomEvent.mdx +++ b/pages/sdks/sdk/methods/fireCustomEvent.mdx @@ -1,6 +1,6 @@ --- -title: Authenticating using the Server Side SDK -description: Guide to using Datalink's server-side Lua SDK +title: FireCustomEvent - Method +description: Invoke a custom datalink event over to the dashboard! --- import {Code} from '../../../../components/code'; @@ -8,7 +8,7 @@ import Callout from 'nextra-theme-docs/callout'; # fireCustomEvent -This method is used to invoke a custom developer event, a custom event allows the developer to send whatever information they would like to send over to the Datalink Service +This method is used to invoke a custom developer event, a custom event allows the developer to send whatever information they would like to send over to the Datalink Service. ## Parameters @@ -18,7 +18,7 @@ The `eventName` parameter should be used to define the name of the custom event #### eventParameters: Dictionary ( [string]: [datatype](https://www.tutorialspoint.com/lua/lua_data_types.htm) ) -The `eventParameters` parameter should be defined as a dictionary which contains the parameters the developer would like to attach to the custom event +The `eventParameters` parameter should be defined as a dictionary which contains the parameters the developer would like to attach to the custom event. ## Example @@ -45,5 +45,5 @@ end) - The above sample is an **EXAMPLE** of what you are able to do, a players expereince is one of many things you're able to send over to the dashboard + The above is just an **EXAMPLE** of what you're enabled to do with Datalink - you're able to send a lot more than just player information into the dashboard! \ No newline at end of file diff --git a/pages/sdks/sdk/methods/getPlayerHash.mdx b/pages/sdks/sdk/methods/getPlayerHash.mdx index e971b17..c1ff3e4 100644 --- a/pages/sdks/sdk/methods/getPlayerHash.mdx +++ b/pages/sdks/sdk/methods/getPlayerHash.mdx @@ -1,6 +1,6 @@ --- -title: Player hash -description: Datalink player hashes +title: GetPlayerHash - Method +description: Get Datalink anonimized player hashes --- import {Code} from '../../../../components/code'; @@ -45,5 +45,5 @@ end) It's important that you keep the data sent to datalink anonymous. - Datalink is an anonymous data-driven platform -- so please respect our mission. + Datalink is an anonymous data-driven platform — so please respect our mission. \ No newline at end of file From 924d0a3a6b7e601f1ae9bf865c54f55a02df67a1 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Thu, 8 Dec 2022 19:44:05 +0000 Subject: [PATCH 08/11] =?UTF-8?q?=E2=9C=A8=20Implementation=20of=20'getAll?= =?UTF-8?q?GameLogsAsync'=20&=20'getGameLogAsync'?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../sdks/sdk/methods/getAllGameLogsAsync.mdx | 41 ++++++++++++++++ pages/sdks/sdk/methods/getGameLogAsync.mdx | 47 +++++++++++++++++++ pages/sdks/sdk/methods/meta.json | 2 + 3 files changed, 90 insertions(+) create mode 100644 pages/sdks/sdk/methods/getAllGameLogsAsync.mdx create mode 100644 pages/sdks/sdk/methods/getGameLogAsync.mdx diff --git a/pages/sdks/sdk/methods/getAllGameLogsAsync.mdx b/pages/sdks/sdk/methods/getAllGameLogsAsync.mdx new file mode 100644 index 0000000..da9ec25 --- /dev/null +++ b/pages/sdks/sdk/methods/getAllGameLogsAsync.mdx @@ -0,0 +1,41 @@ +--- +title: GetAllGameLogsAsync - Method +description: Get all game logs relative to the current place. +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# getAllGameLogsAsync + +This method is used to retrieve all game logs for this expereince under the Datalink Service + +## Example + + +```lua +local DatalinkSDK = require(Path.To.DatalinkSDK) +local DatalinkInstance = DatalinkSDK.new({ + datalinkUserAccountId = YOUR_ACCOUNT_ID, + datalinkUserToken = YOUR_ACCOUNT_TOKEN +}) + +DatalinkInstance:authenticateAsync():andThen(function() + DatalinkInstance:getAllGameLogsAsync():andThen(function(gameLogs) + if not gameLogs[1] then + return + end + + print(gameLogs[1]) --[[{ + ["id"] = 1, + ["type"] = "Error", + ["trace"] = "erroringFunction()", + ["message"] = "Attempted to index nil" + }]]-- + end) +end) +``` +```typescript + +``` + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/getGameLogAsync.mdx b/pages/sdks/sdk/methods/getGameLogAsync.mdx new file mode 100644 index 0000000..cb164c5 --- /dev/null +++ b/pages/sdks/sdk/methods/getGameLogAsync.mdx @@ -0,0 +1,47 @@ +--- +title: getGameLogAsync - Method +description: Get a game log relative to the current place. +--- + +import {Code} from '../../../../components/code'; +import Callout from 'nextra-theme-docs/callout'; + +# getGameLogAsync + +This method is used to retrieve a specific game log for this expereince under the Datalink Service. + +## Parameters + +#### logId: Number + +The `logId` parameter should be used to get details on a specific log object. + +## Example + + +```lua +local DatalinkSDK = require(Path.To.DatalinkSDK) +local DatalinkInstance = DatalinkSDK.new({ + datalinkUserAccountId = YOUR_ACCOUNT_ID, + datalinkUserToken = YOUR_ACCOUNT_TOKEN +}) + +DatalinkInstance:authenticateAsync():andThen(function() + DatalinkInstance:getGameLogAsync(422):andThen(function(gameLogObject) + print(gameLogObject) --[[{ + ["id"] = 422, + ["type"] = "Error", + ["trace"] = "erroringFunction()", + ["message"] = "Attempted to index nil" + }]]-- + end) +end) +``` +```typescript + +``` + + + + An example of why you might want to use this functionality, this feature enables a developer to display logs & errors on a dashboard in-game. + \ No newline at end of file diff --git a/pages/sdks/sdk/methods/meta.json b/pages/sdks/sdk/methods/meta.json index cc031cc..47d6097 100644 --- a/pages/sdks/sdk/methods/meta.json +++ b/pages/sdks/sdk/methods/meta.json @@ -7,6 +7,8 @@ "getFastIntAsync": ":getFastIntAsync", "getFastFlagAsync": ":getFastFlagAsync", "getAllFastFlagsAsync": ":getAllFastFlagsAsync", + "getAllGameLogsAsync": ":getAllGameLogsAsync", + "getGameLogAsync": ":getGameLogAsync", "setVerboseLogging": ":setVerboseLogging", "setLocalVariable": ":setLocalVariable", "getLocalVariable": ":getLocalVariable", From b7ddc0cf1578489e210e733ccde41e6706252f63 Mon Sep 17 00:00:00 2001 From: AsyncMatrix Date: Thu, 8 Dec 2022 19:47:07 +0000 Subject: [PATCH 09/11] =?UTF-8?q?=F0=9F=92=AC=20Minor=20PR=20changes?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pages/sdks/sdk/methods/getPlayerHash.mdx | 4 ++-- pages/sdks/sdk/methods/isAuthenticated.mdx | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/pages/sdks/sdk/methods/getPlayerHash.mdx b/pages/sdks/sdk/methods/getPlayerHash.mdx index c1ff3e4..93dc6e6 100644 --- a/pages/sdks/sdk/methods/getPlayerHash.mdx +++ b/pages/sdks/sdk/methods/getPlayerHash.mdx @@ -8,7 +8,7 @@ import Callout from 'nextra-theme-docs/callout'; # getPlayerHash -This method should be used to get the hash assigned to a player, this hash is generated via the sha256 algorithm & provides a way to link specific data to a player anonymously +This method should be used to get the hash assigned to a player, this hash is generated via a sha256 algorithm & provides a way to link specific data to a player anonymously ## Parameters @@ -45,5 +45,5 @@ end) It's important that you keep the data sent to datalink anonymous. - Datalink is an anonymous data-driven platform — so please respect our mission. + Datalink is an anonymous data-driven platform — please respect our mission. \ No newline at end of file diff --git a/pages/sdks/sdk/methods/isAuthenticated.mdx b/pages/sdks/sdk/methods/isAuthenticated.mdx index 878e034..d182ccb 100644 --- a/pages/sdks/sdk/methods/isAuthenticated.mdx +++ b/pages/sdks/sdk/methods/isAuthenticated.mdx @@ -1,6 +1,6 @@ --- -title: Authenticating using the Server Side SDK -description: Guide to using Datalink's server-side Lua SDK +title: isAuthenticated - Method +description: Datalink authentication validation --- import {Code} from '../../../../components/code'; From ba978b7681d12928b06792fa61c7d095be6291b7 Mon Sep 17 00:00:00 2001 From: Compey Date: Thu, 29 Dec 2022 09:29:39 +0530 Subject: [PATCH 10/11] fix(grammar): minor grammatical changes --- pages/index.mdx | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/pages/index.mdx b/pages/index.mdx index dfa5c9b..e1b8d50 100644 --- a/pages/index.mdx +++ b/pages/index.mdx @@ -7,27 +7,27 @@ import {Code} from '../components/code'; import Link from 'next/link'; # Datalink -Datalink is a tool that helps to provide Roblox Developers with critical & detailed analysis surrounding both Player & Game state & data in a Roblox Experience +Datalink is a tool that helps to provide Roblox Developers with critical & detailed analysis surrounding both Player & Game state & data in a Roblox Experience. ## Product Summary -Datalink should provide a suite of interfaces which help to destinguish and expose information regarding state, health, mobility, player data + more; +Datalink will provide a suite of interfaces which help to destinguish and expose information regarding state, health, mobility, player data + more. A portion of what we have planned is listed below: - Game/Experience State - State is defined by the contextual agreement surrounding a servers ability to perform, allow users to join, remove and update datastores. - - For example, The State field could include; + - For example, The State field could include: - Servers Per `Hour`, `Day`, `Month`, `Annum`

- Game/Experience Health - Health is defined by how much CPU, Memory, Processing Time is being taken up by the server. - - Additionally, we can look further and provide feedback regarding player crashing rates, reproduction steps on how these players might of crashed and potential fixes if any are obvious + - Additionally, we can look further and provide feedback regarding player crashing rates, reproduction steps on how these players might of crashed and potential fixes if any are common.

- Data - - Data includes all kinds of information regading the places inside of your Roblox Experience + - Data includes all kinds of information regading the places inside of your Roblox Experience. - Custom Developer Events will also be counted under this field, as we are unable to process specifics in your events.

- So, so much more! - We're still yet and looking into providing so much more which'll help improve the scalability of your experience! - - Some examples of what we're planning to Ship Datalink with are; + - Some other examples of what we're planning to ship datalink including are: - Fast/Feature Flags - DataStore, MemoryStore & MessagingService wrappers - Game Event Controllers @@ -42,4 +42,4 @@ The [LuaU SDK](https://docs.datalink.dev/sdks/installation) is designed to simpl > RESTful APIs -The [RESTful API](https://docs.datalink.dev/reference/api_reference/overview) is the backend to the Datalink service, if you've chosen to write your own wrapper/module for the Datalink service, then taking advantage of these APIs will be of interest. \ No newline at end of file +The [RESTful API](https://docs.datalink.dev/reference/api_reference/overview) is the backend to the Datalink service, if you've chosen to write your own wrapper/module for the Datalink service, then taking advantage of these APIs will be of interest. From c6379a5a7b6b06e4fff01c21d0d28899af056219 Mon Sep 17 00:00:00 2001 From: Compey Date: Thu, 29 Dec 2022 09:42:25 +0530 Subject: [PATCH 11/11] feat: provide tip to safeguard API key --- pages/sdks/sdk/authentication.mdx | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/pages/sdks/sdk/authentication.mdx b/pages/sdks/sdk/authentication.mdx index b2938d8..f148e0a 100644 --- a/pages/sdks/sdk/authentication.mdx +++ b/pages/sdks/sdk/authentication.mdx @@ -28,9 +28,11 @@ end):catch(warn) ``` + - Please ensure that the following are **NOT** exposed to the client; + Please ensure that the Authentication Key is **NOT** exposed to the client as this would provide an attacker **full, unrestricted** access to your experience's data. + - - Authentication Key - - This key would allow an attacker **FULL ACCESS** to your experiences data + + A recommended method to safeguard your API Key is to store it in a private and secure `DataStore`.