Welcome to the Second Life Forums Archive

These forums are CLOSED. Please visit the new forums HERE

Muliti Object Network

JP Burleigh
Registered User
Join date: 15 Oct 2005
Posts: 11
11-15-2005 10:02
Hello,

I am playing with some scripting ideas that will require several objects spread about the world to communicate with each other (think publish/subscribe pattern). I have been doing some research and am seeking confirmation of the following :

unlinked objects cannot communicate via linked messages. The only way to do so is to implement RPC.

To implement RPC I will need an outside server which I can use as a relay server to move information between objects and maybe even as an event controller.

RPC is currently limited to be from outside SL in only. This means my external server can communicate to the objects via RPC but my SL objects can only communicate to the outside world using email. I'm not yet sure how this is done but I'm assuming there is a PHP module of some sort I could use to parse the inbound emails and take action (such as storing data in a database and firing of RPC messages).

SL object_id's are temporary. How do people maintain a valid list of subscribers? do you have the object identify itself each time it is rezzed?

I have tried to research the topic before posting for support but I'm hoping people can confirm, correct or augment my current understanding before I spend to much time on a dead-end path.

- JP
Gaz Hornpipe
Registered User
Join date: 29 Sep 2005
Posts: 36
11-15-2005 12:13
llEmail() and llGetNextEmail() is the method used when you don't have the facilities for setting up XML-RPC. With the size limits imposed on emails received by objects, this may seem innefficient.

Anyway.. you still have the same problem with non-persistant object identifiers: keys. And yes.. everytime its key changes, you will need to re-register/subscribe with the server, regardless of the form the server takes. It would be nice to have some way of setting an object to be not only no-copy but also to retain its key in the database, until such a time that you "release" the key.. but alas, that is not the case as of yet.