Difference between revisions of "LSL Protocol/Restrained Love Open Relay Group/autoforward"
Dahlia Orfan (talk | contribs) |
Dahlia Orfan (talk | contribs) |
||
(6 intermediate revisions by the same user not shown) | |||
Line 6: | Line 6: | ||
version: 001 | version: 001 | ||
'' | ''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 38: | Line 39: | ||
R <-chat on 1111- V: 0010011111111110 | R <-chat on 1111- V: 0010011111111110 | ||
C <------email---- R: 1111,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== | ==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.