[Opensim-users] Room management application

Toni Alatalo toni at playsign.net
Mon May 2 06:15:29 UTC 2011


On May 2, 2011, at 7:32 AM, Karl Haas wrote:
> I want to write an external service which manages all rooms of an organisation (just a proof of concept). It should be possible to connect also other virtual worlds or also a real world room management tool. The management service has to be able to send a room configuration to the OpenSim region module at a scheduled time (room reservation) and the region module has to send the content or position of the objects to the management service. It should be possible to save the state of the learning session for later continuation. Therefore I need a two way communication.

This is actually quite interesting for us too, 'cause one of the parts of the TOY (open source) learning env thing we made last year (is just coming out for public now, and was piloted in some schools a few months ago) is exactly that there are pre-made room configurations (for splitting classes for group works etc), and saving scenes from sessions for continuation later. For saving we wrote a region module that utilizes the underlying save-xml2 functionality in Opensim (that is like OARs but without assets, so very light small saves of scene confs).

I'm not sure how I'd do that two way conn. HTTP of course has been fashionable for the past >10 years, and it would be possible to just make either side poll with that. But for realtime 2-way comms something over a TCP socket that stays open might be better, both faster and more reliable. That's why web browsers have now gotten websockets support too -- so that apps like gmail can better get notifications from servers, instead of doing periodic http polls.

One open source virtual world system that uses a persistent TCP connection from a management tool for a number of simulator services is the Overseer app in Metaverse 3d, http://www.mv3d.com/trac/wiki/StartYourOwnServer has screenshots. That GUI allows to select a configuration for a server, could be a room configuration, and launch servers with that content (template). After a server is launched, there is an always-on connection between the management tool and the sim, so the management GUI can show realtime info of the server load, number of users etc .. both sides can easily send whatever information is needed. The implementation uses the Twisted networking lib's Referenceable for remote function calls, so the managent gui can command the sim by saying things like self.subordinate.callRemote("startNewService", name, config) in http://www.mv3d.com/trac/browser/trunk/mv3d/tools/overseer/overseer.py#L883

If you only need the sim -> manager comms for the saving, and you need to save the full state of an opensim scene, I'd use that builtin xml saving to files and then just store/transfer those files. Could send the file over, e.g. with HTTP post, or with the possible custom TCP protocol somehow.

If there's some project page / plans for your tool, and if it becomes available as open source later, I'd like to keep posted .. perhaps we could utilize it, even. The guys have now been porting some of the TOY tools for Tundra too, there is a public demo server of that up actually .. if you wanna see how the lobby scene looks like, press 'try it' in http://www.realxtend.org/ (need Tundra 1.0.6 installed, the download button there points there). The floating round platforms in that public lobby are same/similar elements which we use for room configurations in the classroom spaces .. I put a screenshot of that scene, made for school kids originally, yesterday to http://wiki.realxtend.org/index.php/Getting_Started_with_Tundra . That instance is not running on opensim, but the same scene & tools as we have for opensim too .. so as you plan to allow usage of the config tool with any server, should work for Tundra usage as well (it supports modules, similar to region/app/whatever modules in Opensim, but no .net currently .. c++, python and javascript is what works now, can do http or custom tcp or whatever).

> Karl

~Toni

>> 
>>> Karl Haas
>> 
>> ~Toni
>> 
>> 
>> _______________________________________________
>> Opensim-users mailing list
>> Opensim-users at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/opensim-users
> 
> _______________________________________________
> Opensim-users mailing list
> Opensim-users at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-users

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-users/attachments/20110502/105aad4c/attachment.html>


More information about the Opensim-users mailing list