LSL Protocol/Restrained Love Open Relay Group/x-xtensions
!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)