[Opensim-dev] dispatcher interface

Mic Bowman cmickeyb at gmail.com
Fri Dec 19 00:11:40 UTC 2014


i've had several requests for the dispatcher interface to be moved into
core. dispatcher package consists of two pieces:

dispatcher -- the core modules that implement the message transfer, message
encoding and some of the basic messages (informational messages and
messages to create and renew access capabilities).

https://github.com/cmickeyb/scisim-addons/tree/master/dispatcher

remote control -- a collection of messages that implement a OpenSim remote
scripting API. these messages include some basics for accessing/creating
assets, for getting/setting avatar appearance, sending messages, managing
objects in the scene, and managing some of the region characteristics.
there are also messages for registering remote handlers for touch events.
clearly this is just a start (though there is a surprisingly large number
of things you can do with these).

https://github.com/cmickeyb/scisim-addons/tree/master/rcontrol

for more information on what the dispatcher is and why you might want to
use it, watch the OSCC presentation http://www.ustream.tv/recorded/55195110
or take a look at the kinds of scripts that you can write by looking in the
scripts directory of the rcontrol repository.

with all that said...

i would like to start the discussion about whether this is useful enough to
be moved into core & how that should happen.

i don't have a particular stake in whether its moved to core. there are
benefits to both. its easier for me to change for my purposes if if its
outside core and its (much) easier for the community to use it if its in
core. if the community believes there is sufficient value, then we should
move it in.

if it is not moved inside, i would appreciate suggestions on how to
distribute the libraries. this is an ongoing problem for opensim... how to
provide simple access to a dynamic set of region modules. probably a bigger
discussion.

if we think the dispatcher API should be moved into core, then there are a
few questions about how that should happen. clearly the region modules can
be moved into OpenSim/Region/OptionalModules. that's easy. the more
interesting question is where to put the client libraries (these are the
perl & python libraries that are used to build dispatcher clients) and the
control scripts that are rather useful for managing a region. I would
propose placing them in a directory under OpenSim/Tools though they really
aren't tools in the sense of the other packages in that directory.

the final question is about documentation. the api is already pseudo-self
documenting... the API lets you can ask any simulator for the messages it
supports & then ask for examples of the messages themselves. i'm planning
to add a "documentation" string for each as well. some other methods for
autodoc would be useful though pulling out dispatcher documentation from
within the multitude of existing opensim autodoc might be challenging (not
something i have any experience with).

--mic
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20141218/5f5785eb/attachment.html>


More information about the Opensim-dev mailing list