llOpenRemoteDataChannel
Deprecated
void llOpenRemoteDataChannel()This function is deprecated.
XML-RPC should not be used anymore. Use HTTP Server instead, which is the modern replacement.
Caveats
Section titled “Caveats”- If an object moves from one region to another it must re-open the channel
- The object will get the same channel as before, but without re-opening no requests will get through
- Any channel that is not used for 14 days will be cleaned up
- It may be advisable to somewhat regularly (before expected use or on a regular schedule) check that the channel is good and hasn’t changed by calling
llOpenRemoteDataChanneland comparing to the previous channel
- It may be advisable to somewhat regularly (before expected use or on a regular schedule) check that the channel is good and hasn’t changed by calling
- XML-RPC requests often time-out due to the front-end server being overloaded
- LL has continued to upgrade the server hardware periodically, but it has remained unreliable
- LL developers have advised that the XML-RPC design isn’t scalable (due to the single server bottle-neck) and that the service is “deprecated”
- If an XML-RPC request does time-out, the script’s
remote_dataevent may or may not be triggered (and any script response is lost)
Examples
Section titled “Examples”default{ state_entry() { llOpenRemoteDataChannel(); } changed(integer c) { if(c & (CHANGED_REGION | CHANGED_TELEPORT)) llOpenRemoteDataChannel(); } remote_data( integer event_type, key channel, key message_id, string sender, integer idata, string sdata ) { if (event_type == REMOTE_DATA_CHANNEL) { // channel created } }}See Also
Section titled “See Also”remote_dataevent- llHTTPResponse
- HTTP Polling - Recommended alternative to XML-RPC