Difference between revisions of "LSL Protocol/Restrained Love Open Relay Group/ORG Introduction"

From Second Life Wiki
Jump to navigation Jump to search
(RestrainedLove)
 
(7 intermediate revisions by 2 users not shown)
Line 1: Line 1:
<div class="floatright"><div class="navbox" style="width: 20em">
{{Restrained Love Open Relay Group TOC}}
<center>'''The OPEN RELAY GROUP'''</center>
* '''[[LSL Protocol/Restrained Life Relay/Introduction|Introduction]]'''
* '''[[LSL Protocol/Restrained Life Relay/Specification|Specification]]'''
* '''[[LSL Protocol/Restrained Life Relay/Change History|Change History]]'''
* '''[[LSL Protocol/Restrained Life Relay/Reference Implementation|Reference Implementation]]'''
* '''[[LSL Protocol/Restrained Life Relay/Development & Contribution|Development & Contribution]]'''
** [[LSL Protocol/Restrained Life Relay/Bugs and Pendings Features|Bugs and Pending Features]]
** [[LSL Protocol/Restrained Life Relay/How to Test|How to Test]]
** [[LSL Protocol/Restrained Life Relay/Alpha Version|Alpha Version]]
** [[LSL Protocol/Restrained Life Relay/Embedding|Embedding]]
** [[LSL Protocol/Restrained Life Relay/Other Implementations|Other Implementations]]
* '''Plugins'''
** [[LSL Protocol/Restrained Life Relay/Color Changer|Color Changer]]
** [[LSL Protocol/Restrained Life Relay/Safeword|Safeword]]
</div></div>


==ORG - The OpenRelay Group==
==ORG - The OpenRelay Group==


*** THIS IS A WORK IN PROGRESS, NOT LINKED ***
'''ORG''', ''the OpenRelay Group'', are scriptwriters and builders of Restrained Love Enabled furniture and  
 
 
'''ORG''', ''the OpenRelay Group'', are scripters and builders of Restrained Life Enabled furniture and  
devices. '''ORG''' wants to see the RLV Relay Spec grow and evolve to meet the needs of all  
devices. '''ORG''' wants to see the RLV Relay Spec grow and evolve to meet the needs of all  
users, even to meet needs outside the capabilities of the RL Viewer.
users, even to meet needs outside the capabilities of the RL Viewer.
Line 27: Line 9:


The purpose of an ORG Enhanced Relay is two-fold: First, to capture and validate the necessary commands to  
The purpose of an ORG Enhanced Relay is two-fold: First, to capture and validate the necessary commands to  
pass to the RL Viewer to enable its functionalities for whatever purpose. Second, to do the things  
pass to the RL Viewer to enable its functionality for whatever purpose. Second, to do the things  
that the Viewer does not (or will not) do that may have use in the '''RLV''' environment, but to do it in an  
that the Viewer does not (or will not) do that may have use in the '''RLV''' environment, but to do it in an  
open, documented form to avoid a confusing flood of "secret", or "special purpose" relays. Any  
open, documented form to avoid a confusing flood of "secret", or "special purpose" relays. Any  
Line 56: Line 38:




We plan to make '''x-tensions''' to the existing relay spec as metacommands, adopting the '''!x-''' convention. Other  
We are making '''x-tensions''' to the existing relay spec as meta-commands, adopting the '''!x-''' prefix convention. Other  
'''x-tensions''' that might be implemented in a viewer could use the '''!x-''' convention or adopt some other prefix  
'''x-tensions''' that might be implemented in a viewer could use the '''!x-''' convention or adopt some other prefix  
such as '''#'''. Given the importance of a decision, [[LSL Protocol/Restrained Life Relay/ORG prefix|discussion]] has been initiated.
such as '''#'''. Given the importance of a decision, [[LSL Protocol/Restrained Love Open Relay Group/Prefix|discussion]] has been initiated.


The relay spec is silent with respect to unknown commands and the behavior has been dependent on each relay
The relay spec is silent with respect to unknown commands and the behavior has been dependent on each relay
maker's whim's, ''e.g.'', they may not even be '''ko'ed'''. So you can never assume the extensions will always be  
maker's whim's, ''e.g.'', they may not even be '''ko'ed'''. So you can never assume the extensions will always be  
recognized or even acknowledged. We strongly suggest that any ''ORG Enabled'' relay or script respond to a command such as '''!impversion'''
recognized or even acknowledged.
with a string that contains:
We require that every ''ORG Enabled'' relay respond to the meta-command '''!x-orgversions''', comparable to the current meta-command '''!version''', with a string such as
 
 
'''*ORG/extension/extension/...'''
 
 
such as:
 
 
'''*ORG/x-vision/x-gender/x-species'''


       
'''ORG=0001/who=001/email=005/vision=002'''
so the device talking to the relay can know which extensions the relay you are talking to are supported.
Alternatively, we may develop an '''x-tension''' that returns the supported '''x-tensions'''.


so the device talking to the relay can know which extensions the relay you are talking to are supported and what specification version is used for each, and which version of the core [[LSL Protocol/Restrained Love Open Relay Group/ORG Requirements|ORG requirements]] is implemented.


Some example [[LSL Protocol/Restrained Life Relay/ORG x-tensions|x-tensions]] that have been implemented or proposed are:
Some example [[LSL Protocol/Restrained Love Open Relay Group/x-tensions|x-tensions]] that have been implemented or proposed are:




::'''''!x-vision''''' - provide a means of obscuring the subjects vision without having to muck about with extra wearables. Originally conceived as a mouselook enforcer/punisher and requires a HUDstyle relay. (already implemented and available to use).
::'''''!x-vision''''' - provide a means of obscuring the subjects vision without having to muck about with extra attachments. Originally conceived as a mouselook enforcer/punisher and requires a HUD-style relay. (already implemented and available to use).


::'''''!x-listen''''' - to open up a second channel for any commands the device needs. This allows scripters to open a channel for short term use; the intent is to cut down on lag by not requiring listeners that are always on.
::'''''!x-listen''''' - to open up a second channel for any commands the device needs. This allows scriptwriters to open a channel for short term use; the intent is to cut down on lag by not requiring listeners that are always on.


::'''''!x-gender''''' - allow the users to set their defined sex, and be queried by a device and set by the device!
::'''''!x-gender''''' - allow the users to set their defined sex, and be queried by a device and set by the device!
Line 93: Line 65:




Come join us and help us make our Restrained Life, the best life.
Come join us and help us make our Restrained Love life, the best life.

Latest revision as of 09:09, 28 July 2012

ORG - The OpenRelay Group

ORG, the OpenRelay Group, are scriptwriters and builders of Restrained Love Enabled furniture and devices. ORG wants to see the RLV Relay Spec grow and evolve to meet the needs of all users, even to meet needs outside the capabilities of the RL Viewer.


The purpose of an ORG Enhanced Relay is two-fold: First, to capture and validate the necessary commands to pass to the RL Viewer to enable its functionality for whatever purpose. Second, to do the things that the Viewer does not (or will not) do that may have use in the RLV environment, but to do it in an open, documented form to avoid a confusing flood of "secret", or "special purpose" relays. Any extension documented here are, by definition explicitly non-proprietary and open for anyone to use in any their products. We specifically reject the "not invented here", closed minded position. There are already several builders using the RLV for non-BDSM solutions to problems, the RLV is slowly becoming mainstream and we can help that process along.


The only required job of a relay is to deliver a properly formed "llOwnerSay" command to the RLViewer, with properly formed RLV commands.. whatever else done in the relay proper is to enable features the viewer can't. The viewer's work starts at "llOwnerSay".. the viewer's tasks start at "llOwnerSay" anything else is up to us, and it is our responsibility to make sure that everyone knows what and how we do it and make it easier for them to do it. From a furniture builder's perspective, the more standard the set of features, the easier it is to design furniture and other devices to enhance the RLV-user's experience, no matter if it's BDSM or any other use. Imagination is a good thing that should be encouraged.


This is not to say that every extension may be accepted by ORG. If it's dangerous, uses undocumented hacks to the viewer and is not user friendly, then this is not the place. But we will discuss every suggested extension and consider how to make them more useful to the user and the viewer.


One caveat for our discussions. Personal, ad-hominem attacks are not welcome and not permitted. We're here to help builders, not to build empires. No one is required to use any of these extensions, but everyone is welcome to do so. We want to help people avoid 're-inventing the wheel' and we want to do so in the spirit of cooperation, not control.


We are making x-tensions to the existing relay spec as meta-commands, adopting the !x- prefix convention. Other x-tensions that might be implemented in a viewer could use the !x- convention or adopt some other prefix such as #. Given the importance of a decision, discussion has been initiated.

The relay spec is silent with respect to unknown commands and the behavior has been dependent on each relay maker's whim's, e.g., they may not even be ko'ed. So you can never assume the extensions will always be recognized or even acknowledged. We require that every ORG Enabled relay respond to the meta-command !x-orgversions, comparable to the current meta-command !version, with a string such as

ORG=0001/who=001/email=005/vision=002

so the device talking to the relay can know which extensions the relay you are talking to are supported and what specification version is used for each, and which version of the core ORG requirements is implemented.

Some example x-tensions that have been implemented or proposed are:


!x-vision - provide a means of obscuring the subjects vision without having to muck about with extra attachments. Originally conceived as a mouselook enforcer/punisher and requires a HUD-style relay. (already implemented and available to use).
!x-listen - to open up a second channel for any commands the device needs. This allows scriptwriters to open a channel for short term use; the intent is to cut down on lag by not requiring listeners that are always on.
!x-gender - allow the users to set their defined sex, and be queried by a device and set by the device!
!x-species - ditto for species.
!x-freeze - stop the victim dead in their tracks. Effectively disables the arrow movement keys, jump and crouch. Sure you can do it other ways, but this keeps down extra script/attachment counts and gives a 'standard interface'. Nice for area effects (prison lock-down perhaps), cages (hold them in place so you can open the cage and take out one specific captive.


Come join us and help us make our Restrained Love life, the best life.