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