[Opensim-dev] Opensim Wiki Wifi Page?

diva at metaverseink.com diva at metaverseink.com
Thu Aug 5 15:40:13 UTC 2010


> Can you explain a bit more about what 0.7 and wifi allows that was not possible 
> before the refactor and wifi? I would be particularly interested in connecting 
> webclients to a general-use opensim web-api, using websockets and jsonrpc. 
> That way, other webportals could connect to it as well. Stuff like adding 
> realtime presence information to the web-part would be quite useful.

0.7 introduced a set of clean abstract interfaces to all resource 
services independent of where those services run -- within the simulator 
process or within a Robust process.

Let's take presence, for example. That is abstracted by 
OpenSim.Interfaces.IPresenceService and implemented by the reference 
OpenSim.Services.PresenceService, which then accesses the DB via an 
equally clean abstract interface.

So if you want to write a piece of [C#] code that uses the presence 
information, you have a couple of simple options:

(a) you instantiate a PresenceService object directly, therefore being 
able to call existing methods such as GetAgent, etc.

(b) you extend the existing PresenceService with more functionality and 
replace the grid's reference PresenceService with yours.

A third, more advanced, option is to also extend the OpenSim DB layer if 
you find that you need more SQL statements than the ones we have.

In either case, it will all work seamlessly with the existing code base, 
and in all configurations.

Then you can connect these new pieces of C# with webclients using 
whatever wire interface you want (network handlers, write your own -- 
like the Simian Grid did).

---
I know this may sound very abstract. For the time being, the best 
resource may very well be the source code of Wifi itself, which shows 
concrete examples of using and extending OpenSim core code.



More information about the Opensim-dev mailing list