No edit summary |
Remove mention of being able to use Group IDs in session IDs; this doesn't work |
||
(4 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
Custom Session | Custom Session IDs are a custom format for regular [[Session IDs]], that can be easier to remember and work with. | ||
== Benefits == | |||
Custom Session IDs are | |||
* Static | |||
** Unlike regular session IDs which have randomized elements, custom session IDs are static. This lets you use them in other configuration items without needing to update them each time the session restarts. | |||
* Automatic | |||
** When used with the <code>ressession://</code> url format, things like IP Addresses and ports are automatically resolved. | |||
== Format == | == Format == | ||
Custom Session | Custom Session IDs have 3 components. | ||
<code>S-<User | <code>S-<User ID>:<custom text></code> | ||
* The <code>S-</code> this is automatically added when '''setting''' a custom session | * The <code>S-</code> this is automatically added when '''setting''' a custom session ID, but must be supplied when using a custom session ID. | ||
* A user | * A user ID, e.g. <code>U-ProbablePrime</code> | ||
* The custom text portion can be anything you'd like, but there are some restrictions. | * The custom text portion can be anything you'd like, but there are some restrictions. | ||
** Only Alphanumeric Characters, | ** Only Alphanumeric Characters, Dashes (-) and Underscores (_) can be used. | ||
Combining everything together a full custom session | Combining everything together a full custom session ID example would be: <code>S-U-ProbablePrime:CheeseLand</code>. | ||
== Setting a Custom Session | == Setting a Custom Session ID == | ||
=== In the Headless Server Software configuration === | === In the Headless Server Software configuration === | ||
Line 22: | Line 27: | ||
<syntaxhighlight> | <syntaxhighlight> | ||
{ | { | ||
... | "$schema": "https://raw.githubusercontent.com/Yellow-Dog-Man/JSONSchemas/main/schemas/HeadlessConfig.schema.json", | ||
"customSessionId":"U-ProbablePrime:CheeseLand" | ... some other properties | ||
"startWorlds": [ | |||
} | { | ||
"isEnabled": true, | |||
"customSessionId": "U-ProbablePrime:CheeseLand", | |||
... some other world properties | |||
} | |||
], | |||
... even more properties | |||
} | |||
</syntaxhighlight> | </syntaxhighlight> | ||
== Using a Custom Session | == Using a Custom Session ID == | ||
You can use a custom session | You can use a custom session ID, anywhere that expects a session ID, examples include: | ||
* ProtoFlux | * ProtoFlux | ||
** The [[ProtoFlux: | ** The [[ProtoFlux:Open World]] node. | ||
** The [[ProtoFlux: | ** The [[ProtoFlux:Focus World]] node. | ||
* The [[Component:WorldLink]] component | * The [[Component:WorldLink]] component. | ||
* As a uri for a <code>autoJoinSessions</code> item within the [[Startup Config File]] | * As a uri for a <code>autoJoinSessions</code> item within the [[Startup Config File]]. | ||
When using it with the above methods, you'll need to ensure that it is used within a valid session url, there are a number of options: | |||
# Use an LNL URL | |||
#* For Example <code>lnl-nat://aba6f27b-c51c-49ba-ac03-0bcc96cd97cc/S-U-ProbablePrime:CheeseLand</code>. | |||
# Use a <code>ressession</code> url | |||
#* For Example <code>ressession:///S-U-ProbablePrime:CheeseLand</code> |
Latest revision as of 06:30, 28 September 2024
Custom Session IDs are a custom format for regular Session IDs, that can be easier to remember and work with.
Benefits
Custom Session IDs are
- Static
- Unlike regular session IDs which have randomized elements, custom session IDs are static. This lets you use them in other configuration items without needing to update them each time the session restarts.
- Automatic
- When used with the
ressession://
url format, things like IP Addresses and ports are automatically resolved.
- When used with the
Format
Custom Session IDs have 3 components.
S-<User ID>:<custom text>
- The
S-
this is automatically added when setting a custom session ID, but must be supplied when using a custom session ID. - A user ID, e.g.
U-ProbablePrime
- The custom text portion can be anything you'd like, but there are some restrictions.
- Only Alphanumeric Characters, Dashes (-) and Underscores (_) can be used.
Combining everything together a full custom session ID example would be: S-U-ProbablePrime:CheeseLand
.
Setting a Custom Session ID
In the Headless Server Software configuration
Within the Headless Server Software/Configuration_File startWorlds
configuration. For example:
{
"$schema": "https://raw.githubusercontent.com/Yellow-Dog-Man/JSONSchemas/main/schemas/HeadlessConfig.schema.json",
... some other properties
"startWorlds": [
{
"isEnabled": true,
"customSessionId": "U-ProbablePrime:CheeseLand",
... some other world properties
}
],
... even more properties
}
Using a Custom Session ID
You can use a custom session ID, anywhere that expects a session ID, examples include:
- ProtoFlux
- The ProtoFlux:Open World node.
- The ProtoFlux:Focus World node.
- The Component:WorldLink component.
- As a uri for a
autoJoinSessions
item within the Startup Config File.
When using it with the above methods, you'll need to ensure that it is used within a valid session url, there are a number of options:
- Use an LNL URL
- For Example
lnl-nat://aba6f27b-c51c-49ba-ac03-0bcc96cd97cc/S-U-ProbablePrime:CheeseLand
.
- For Example
- Use a
ressession
url- For Example
ressession:///S-U-ProbablePrime:CheeseLand
- For Example