Don't click here unless you want to be banned.

LSL Wiki : llOpenRemoteDataChannel

HomePage :: PageIndex :: RecentChanges :: RecentlyCommented :: UserSettings :: You are crawling22.us.archive.org
llOpenRemoteDataChannel()

Creates a channel to listen for XML-RPC calls. Will trigger a remote_data event with type = REMOTE_DATA_CHANNEL and a channel ID (key) once it is available. This channel ID must be referenced in the XML-RPC call to the script (from the outside internet)--so the key must somehow get to the scripter's XML-RPC client, most often via llEmail, llHttpRequest or llLoadUrl.

This function delays the script for 1.0 second.

Q: XML-RPC seems unreliable for continuous and parallel communication with several objects in the same sim, or with objects that move across sim borders.
A: To travel across sim borders, you must call llOpenRemoteDataChannel again to re-establish the link. You will get the same key unless a different expiration condition exists (timeout). Use the changed() event to determine if your object has moved into a different sim.

Q: Is the above behavior a bug or a deliberate change? When was it made? What was the behavior before?
A: This behavior was the way that LL implemented it... they've just never fixed it.

Q: What are the details of the expiration conditions? Under what circumstances will you not get the same key?
A: Extended periods without queries, grid restarts.


Functions | Communications | XML-RPC
Comments [Hide comments/form]
I have found that if you have multiple scripts in the same object using this method, then each script gets its own seperate channel key. The interesting part is that no matter how many times I reset this script, the channel key comes back the same every time for each script. The key does not match llGetInventoryKey(llGetScriptName());

The main point that I bring this up is that if you have a script that is no-modify that you distribute with XML-RPC, it seems that someone else can not read the data by setting up there own remote_data event in a seperate script in the same object.
-- DedricMauriac (2006-06-02 21:30:41)
The key is a seperate channel key, which the Data Server remembers, it is /not/ the object key.
-- IceBrodie (2006-08-03 11:30:29)
Attach a comment to this page: