LSL Protocol/Restrained Love Open Relay Group/x-xtensions

From Second Life Wiki
Jump to navigation Jump to search

!x-tensions

STATUS: Up for discussion, but near final

VERSION: Draft 1 (version string: 001)

Implemented in OpenCollar and in Satomi's Multirelay HUD

Description
Queries the relay to discover the list of supported x-tensions; this way devices can query the relay for supported x-tensions and make use of them or not as they choose.
Implementation
Returns the list of ORG extensions implemented in the relay
Syntax
!x-tensions
Response
!x-tensions,<reply>
where <reply> is a list of x-tensions, separated by / where each extension is listed with a version number
Example
-> blah,k(R),!x-tensions
<- blah,k(C),!x-tensions,core=1100/tensions=000/vision=002/listen=001/email=012/channel=002


Key points

The relay should answer, in the acknowledgement field by the list of supported x-tensions, separated by slashes "/", followed by the version of the specification of the extension which is implemented (after a vertical bar "|"). Note that only the x-tension names are given, not the full list of meta-commands (email extension has 3 meta-commands, for instance). Note that extension names do not contain the "!x-". Versions numbers are 3 digits.

"core" is the core RLVR protocol (as defined by Marine Kelley), and its version number has 4 digits, that are the same as those returned by !version.

Also note that one of the responses should be tensions and its version number. While it seems unlikely that the protocol would change, not responding with tensions and a version number will make it impossible to make any substantive changes should they prove necessary.

Discussion

I changed the 3rd level separator from "|" to "=", only for readibility reasons. Please tell me if you think it was a poor choice.--Satomi Ahn 12:03, 3 July 2009 (UTC)