On Mon, Jan 26, 2004 at 12:21:10 +0100, Frank Barknecht wrote:
Hallo,
Steve Harris hat gesagt: // Steve Harris wrote:
You would advertise (by sending an OSC method)
that you support "RRADical"
at osc://localhost:7000/snare/note/ or whatever and someone who wanted to
connect can query the service discovery service to find out what
"RRADical" services are running.
Okay. There could be (and in my example patches there already are) a
*lot* of such methods. I would think about it in a way like a "site
map" on a webpage. In Pd I surely will have to built such a thing
myself. Currently the method names all are customizeable by the user.
There is no standard way to know what objects are used in a patch and
with which arguments, so I probably cannot just write a plugin that
does this. I'd have to register all methods in a central place by
hand, but this should be possible, I think. I'll have to think about
this a bit more. Of course it would be very nice to get method names
and possible arguments automatically.
Right well, somethings are inappripraite for service discovery - but you
might just want to advertise one path that sends all the relevant paths
back to the caller with some domain specific markup.
This would work for "static pages", but It
gets hard though when such
things are dynamically created. The worst case would be analogous to
using cgi-scripts to dynamically create web pages that don't exist
until someone tries to access them. I don't know if this is possible
or even useful for OSC messages, though. Probably not.
Its possible, and yes service discovery is pretty much irrelevent, but its
not neccesary to advertise every message you accept, just enough for
other services understand, eg. if you accept /LADSPA/<id>/<port> to set
LADSPA values you could just advertise /LADSPA/ and it will be meaningful
to services that understand that, even though you dont list all the
methods.
- Steve