Yeah, I think for any really large scale installation you would want to leverage existing pub/sub tech (I used to work
on bits of IBM Websphere MQ in another life).
But I also think you should always be able to set up a 'reasonably' sized installation just with core OpenSimulator,
which means striking an appropriate balance between simplicity and functionality (e.g. creating components which work
well but are still in C# and don't have every conceivable complexity magnifying bell and whistle).
The problem I have with extending the use of IM structures in this case is that whilst it is relatively easy, I also
feel it might push more Second Life-isms into places where they don't need to be present and really don't make sense.
The result could be a very ad hoc and unintuitive interface with fields which are often inapplicable (e.g. 'fromGroup'
and 'imSessionID') and a temptation to abuse the format by serializing parameters into the binaryBucket.
Maybe it can be made to look very generic and I'm unnecessarily concerned. It would make me very happy if this was done
in a separate branch first (if you do decide to continue with this at this time and not implement the other short-term
solution for your particular task) so that we could review the effects. Changes like this tend to calcify very quickly
even when present just in master.
On 14/03/14 03:52, Mister Blue wrote:
The modern code pattern for this sort of thing is for there to be an underlying
notification service (like MQTT,
AWS/SNS, ...) and to build IM and server-to-server comms on top of that. A
serious refactoring would be to rip out the
existing push directed IM system and replace it with a pub/sub notification
system that inventory change notifications,
HGIMs, etc can be built on.
-- mb
On Thu, Mar 13, 2014 at 8:35 PM, Diva Canto <d...@metaverseink.com
<mailto:d...@metaverseink.com>> wrote:
I can see the justification for using IM server-side when what needs to be
communicated is intended to reach
specific users who may be online.For generic communications, we should not
use IM. But for those specific cases,
locating the user is the hardest task of the process; IM already does that.
So I'm ok with doing it. As Oren says,
refactoring this at some point would be nice...
On 3/13/2014 8:30 PM, Oren Hurvitz wrote:
Yes, this would be stateless. If the user's client can't be found then
the
message would be dropped.
The logic to find the user's client, especially in the presence of HG,
is
very complicated. I wouldn't want to replicate it, and of course we
wouldn't
want duplicate code. There are only two choices that don't involve code
duplication: use IM as the transport for this message, or a big rewrite
that
would create a generic locate+transport communications system, and then
run
both IM and the new API over that communications system. Option #2 is an
order of magnitude more complex than Option #1, and tbh I don't have the
time to implement it. I can do Option #1 in such a way that it would be
almost like a generic mechanism; so this change would only need to be
done
once, not over and over for each future message we may want to pass.
--
View this message in context:
http://opensim-dev.2196679.n2.__nabble.com/Proposal-notify-__clients-when-Robust-changes-a-__user-s-inventory-__tp7579018p7579027.html
<http://opensim-dev.2196679.n2.nabble.com/Proposal-notify-clients-when-Robust-changes-a-user-s-inventory-tp7579018p7579027.html>
Sent from the opensim-dev mailing list archive at Nabble.com.
_________________________________________________
Opensim-dev mailing list
Opensim-dev@lists.berlios.de <mailto:Opensim-dev@lists.berlios.de>
https://lists.berlios.de/__mailman/listinfo/opensim-dev
<https://lists.berlios.de/mailman/listinfo/opensim-dev>
_________________________________________________
Opensim-dev mailing list
Opensim-dev@lists.berlios.de <mailto:Opensim-dev@lists.berlios.de>
https://lists.berlios.de/__mailman/listinfo/opensim-dev
<https://lists.berlios.de/mailman/listinfo/opensim-dev>
_______________________________________________
Opensim-dev mailing list
Opensim-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/opensim-dev
--
Justin Clark-Casey (justincc)
OSVW Consulting
http://justincc.org
http://twitter.com/justincc
_______________________________________________
Opensim-dev mailing list
Opensim-dev@lists.berlios.de
https://lists.berlios.de/mailman/listinfo/opensim-dev