Difference between revisions of "Current login protocols"

From Second Life Wiki
Jump to navigation Jump to search
(conventions and first attempt to regularize)
Line 3: Line 3:
The login parameters are all "structs": key, value pairs. All keys and values are simple key, value pairs, except the value associated with "options" which is an array of zero or more character strings. The order of the required structs doesn't seem to matter. Likewise, the character strings in the options array may appear in any order.
The login parameters are all "structs": key, value pairs. All keys and values are simple key, value pairs, except the value associated with "options" which is an array of zero or more character strings. The order of the required structs doesn't seem to matter. Likewise, the character strings in the options array may appear in any order.


== Conventions ==
On this page the following conventions are used:
"in quotes is a literal string"
[ represents a list of choices | separated by a vertical bar ]
< represents a value which can be substituted by an appropriate string described inside >
'represents a string that must be quoted, but how will be implementation specific' for example in LSL "" denotes a string and " will be used in place of the single quote (').
+ means to concatenate the two parts, though how will be implementation specific, for example + can be used to concatenate strings.




Line 9: Line 18:
The following explains the standard key value pairs, with an explanation of "options" at the end:
The following explains the standard key value pairs, with an explanation of "options" at the end:


:'first': first -- first name of the avatar.
:"first": <first> -- first name of the avatar.
:'last': last -- last name of the avatar.
:"last": <last> -- last name of the avatar.
:'passwd': passwd_md5 --the avatar password encrypted using MD5 encryption.
:"passwd": '$1$' + <passwd_md5> -- the avatar password encrypted using MD5 encryption.
:'start': 'last' -- the login sim. Possible values are "home", last", and an existing simulator name.
:"start": ["first" | "last" | <existing simulator> ] -- attempt to log in to this sim, though if it is full or not available, or the agent is not allowed, another sim could be used.
:'major': '1' -- the major revision number of the client.
:"major": <major revision> -- the major revision number of the client as a string. Currently always 1.
:'minor': '18' -- the minor revision number of the client.
:"minor": <minor revision> -- the minor revision number of the client as a string.
:'patch': '4' -- patch number of the client.
:"patch": <patch number> -- patch number of the client as a string.
:'build': '3' -- build number of the client.
:"build": <3> -- build number of the client as a string.
:'platform': platform  -- the platform of the client. Possible values may include: "Lin", "Mac", and "Win".
:"platform": ["Lin" | "Mac" | "Win"] -- the platform of the client.  
:'mac': mac -- the MAC number associated with the client's computer
:"mac": <MAC Address> -- the MAC address associated with the client's computer.
:'options': optional_login --optional array of character strings. (See below)
:"options": <optional_login> -- optional array of character strings. (See below)
:'user-agent': 'sl.py 0.1' -- unknown.
:"user-agent": "sl.py 0.1" -- unknown.
:'id0': '' -- unknown.
:"id0": "" -- unknown.
:'agree_to_tos': '' -- whether or not the user has agreed to the Terms of Service. Possible values may be: "", "true", "false".
:"agree_to_tos": ["true" | "false" | ""] -- whether or not the user has agreed to the Terms of Service. Possible values may be: "", "true", "false".
:'viewer_digest': '09d93740-8f37-c418-fbf2-2a78c7b0d1ea' -- unknown.
:"viewer_digest": "09d93740-8f37-c418-fbf2-2a78c7b0d1ea" -- unknown.


==Optional Parameters==
==Optional Parameters==

Revision as of 21:41, 20 November 2007

The current login involves sending an xmlrpc message to a Second Life login server and parsing the returned value.

The login parameters are all "structs": key, value pairs. All keys and values are simple key, value pairs, except the value associated with "options" which is an array of zero or more character strings. The order of the required structs doesn't seem to matter. Likewise, the character strings in the options array may appear in any order.

Conventions

On this page the following conventions are used:

"in quotes is a literal string" [ represents a list of choices | separated by a vertical bar ] < represents a value which can be substituted by an appropriate string described inside > 'represents a string that must be quoted, but how will be implementation specific' for example in LSL "" denotes a string and " will be used in place of the single quote ('). + means to concatenate the two parts, though how will be implementation specific, for example + can be used to concatenate strings.


Required parameters

The following explains the standard key value pairs, with an explanation of "options" at the end:

"first": <first> -- first name of the avatar.
"last": <last> -- last name of the avatar.
"passwd": '$1$' + <passwd_md5> -- the avatar password encrypted using MD5 encryption.
"start": ["first" | "last" | <existing simulator> ] -- attempt to log in to this sim, though if it is full or not available, or the agent is not allowed, another sim could be used.
"major": <major revision> -- the major revision number of the client as a string. Currently always 1.
"minor": <minor revision> -- the minor revision number of the client as a string.
"patch": <patch number> -- patch number of the client as a string.
"build": <3> -- build number of the client as a string.
"platform": ["Lin" | "Mac" | "Win"] -- the platform of the client.
"mac": <MAC Address> -- the MAC address associated with the client's computer.
"options": <optional_login> -- optional array of character strings. (See below)
"user-agent": "sl.py 0.1" -- unknown.
"id0": "" -- unknown.
"agree_to_tos": ["true" | "false" | ""] -- whether or not the user has agreed to the Terms of Service. Possible values may be: "", "true", "false".
"viewer_digest": "09d93740-8f37-c418-fbf2-2a78c7b0d1ea" -- unknown.

Optional Parameters

Zero or more of the following character strings may appear in any order in the array following the "options" keyword:


"inventory-root" -- refers to the UUID of the root inventory folder in the client's inventory window
"inventory-skeleton" -- unknown
"inventory-lib-root" -- unknown
"inventory-lib-owner" -- unknown
"inventory-skel-lib" -- unknown
"gestures" -- refers to the list of UUIDs that an avatar will perform
"event_categories" -- unknown
"event_notifications" -- unknown
"classified_categories" -- unknown
"buddy-list" -- unknown
"ui-config" -- unknown
"login-flags" -- unknown
"global-textures" unknown