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

From Second Life Wiki
Jump to navigation Jump to search
(Created page with "{{ ORG Restrained Life Relay Specs TOC }} = autoforward = STATUS: draft version: 001 ''Not yet implemented'' Two new commands !x-autoforward and !x-autoforward/clear explaine…")
 
 
(7 intermediate revisions by the same user not shown)
Line 6: Line 6:
version: 001
version: 001


''Not yet implemented''
''Implemented in Dahlia's multirelay 1.2.14 and anythingRLV3.6RC8''


Two new commands !x-autoforward and !x-autoforward/clear explained below.
Two new commands !x-autoforward and !x-autoforward/clear explained below.


==Description of !x-autoforward and !x-autoforward/clear==
==Description of !x-autoforward and !x-autoforward/clear==


The relay must answer ok if and only if the source is a grabber. Otherwise the answer is always ko. The effect of this command is as follows: for any command @getsomething:xxx=channel, the relay must listen to the viewer's answer and resend it (by email, chat using llRegionSayTo(), http-in) together with the number of the channel.
The relay must answer ok if and only if the source is a grabber. Otherwise the answer is always ko. The effect of this command is as follows: for any command @getsomething:xxx=channel, the relay must listen to the viewer's answer and resend it (by email, chat using llRegionSayTo(), http-in) together with the number of the channel.
Line 39: Line 40:
  C <------email---- R: 1111,0010011111111110
  C <------email---- R: 1111,0010011111111110


==Interaction with !x-takeover==
Other point: if autoforward is enabled, "@notify:channel;option" sets a permanent listener on that channel in the relay, and the relay will forward everything that comes from the viewer on this channel to the contoller.
 
C -chat on RLVRC-> R: spy_outfit_changes,@notify:1111;worn=add
C <-chat on RLVRC- R: spy_outfit_changes,@notify:1111;worn=add,ok
R --llOwnerSay--> V: @notify:1111;worn=add
  ...
R <-chat on 1111- V: /worn legally shirt
C <-chat on RLVRC- R: 1111,/worn legally shirt
  ...
R <-chat on 1111- V: /unworn legally pants
C <-chat on RLVRC- R: 1111,/unworn legally pants
  ...
 
'''Remark'''
 
* After a !x-autoforward/clear, all listeners opened during the autoforwarding must be closed.
 
 
== Interaction with !x-channel ==
 


These instructions must be used only with llRegionSayTo(). So the relay will have to save the uuid key of the grabber and also will have to update it after a !x-takeover.
If the controller and the relay are in a private chat session using !x-channel,the forwarding must be done on the private channel (and the acknoledgments of receipt must be sent in the private channel too, as usual).


==Interaction with !x-handover==
==Interaction with !x-handover==


After a !x-handover, the next grabber must send a new !x-autoforward if required.
 
After a !x-handover, the next grabber must send a new !x-autoforward if required. So all listeners opened by the relay for the preceding grabber must be closed.

Latest revision as of 05:54, 12 June 2011

autoforward

STATUS: draft

version: 001

Implemented in Dahlia's multirelay 1.2.14 and anythingRLV3.6RC8

Two new commands !x-autoforward and !x-autoforward/clear explained below.

Description of !x-autoforward and !x-autoforward/clear

The relay must answer ok if and only if the source is a grabber. Otherwise the answer is always ko. The effect of this command is as follows: for any command @getsomething:xxx=channel, the relay must listen to the viewer's answer and resend it (by email, chat using llRegionSayTo(), http-in) together with the number of the channel.

Typical exchange (if C is already accepted by the relay) in chat session:

C -chat on RLVRC-> R: enable_forward,!x-autoforward
C <-chat on RLVRC- R: enable_forward,!x-autoforward,ok
C -chat on RLVRC-> R: outfit_query,@getoutfit=1111
C <-chat on RLVRC- R: outfit_query,@getoutfit=1111,ok
R --llOwnerSay--> V: @getoutfit=1111
R <-chat on 1111- V: 0010011111111110
C <-chat on RLCRC- R: 1111,0010011111111110

To disable autoforwarding:

C -chat on RLVRC-> R: disable_forward,!x-autoforward/clear
C <-chat on RLVRC- R: disable_forward,!x-autoforward/clear,ok

Typical exchange (if C is already accepted by the relay) in !x-email session:

C -chat on RLVRC-> R: enable_forward,!x-autoforward
C <-chat on RLVRC- R: enable_forward,!x-autoforward,ok
C -chat on RLVRC-> R: outfit_query,@getoutfit=1111
C <-chat on RLVRC- R: outfit_query,@getoutfit=1111,ok
R --llOwnerSay--> V: @getoutfit=1111
R <-chat on 1111- V: 0010011111111110
C <------email---- R: 1111,0010011111111110

Other point: if autoforward is enabled, "@notify:channel;option" sets a permanent listener on that channel in the relay, and the relay will forward everything that comes from the viewer on this channel to the contoller.

C -chat on RLVRC-> R: spy_outfit_changes,@notify:1111;worn=add
C <-chat on RLVRC- R: spy_outfit_changes,@notify:1111;worn=add,ok
R --llOwnerSay--> V: @notify:1111;worn=add
  ...
R <-chat on 1111- V: /worn legally shirt
C <-chat on RLVRC- R: 1111,/worn legally shirt
  ...
R <-chat on 1111- V: /unworn legally pants
C <-chat on RLVRC- R: 1111,/unworn legally pants
  ...

Remark

  • After a !x-autoforward/clear, all listeners opened during the autoforwarding must be closed.


Interaction with !x-channel

If the controller and the relay are in a private chat session using !x-channel,the forwarding must be done on the private channel (and the acknoledgments of receipt must be sent in the private channel too, as usual).

Interaction with !x-handover

After a !x-handover, the next grabber must send a new !x-autoforward if required. So all listeners opened by the relay for the preceding grabber must be closed.