+1 from me too, although it shouldn't just be eventqueue, it should be all the CAPS handling. I think in general everyone has agreed on this point for a long time. Its just someone getting the time to do it as there is quite a lot of work involved in moving all that.<br><br><b><i>Melanie <melanie@t-data.com></i></b> wrote:<blockquote class="replbq" style="border-left: 2px solid rgb(16, 16, 255); margin-left: 5px; padding-left: 5px;"> +1 from me, too.<br><br>I have said so in chat as well, EQ is a protocol feature that should <br>be part of the interface for that client.<br><br>Melanie<br><br>Cristina Videira Lopes wrote:<br>> Apologies in advance for bringing up everyone's favorite hate topic, but <br>> having spent most of yesterday tracking TP/crossing problems (again), I <br>> can't help but bringing this up to a wider audience. I know everyone <br>> hates the EQ. As it stands, there are several broken elements with the <br>> EQ in OpenSim, beyond
the obvious bugs caused by its management. I'm <br>> just wondering if there is something here that I'm completely missing, <br>> or if this is really this bad:<br>> <br>> 1) It's implemented as an optional region module (!!!), configurable in <br>> OpenSim.ini (!!!). That explains why, for example, I could not reproduce <br>> crashes that other people have reported with older viewers. It turns out <br>> that those people are not just using older viewers; they are using <br>> OpenSim servers configured with EventQueue=false. A complete <br>> miscommunication.<br>> <br>> 2) It's implemented as an optional region module -- the sequel. It is <br>> being considered a [optional] part of the Region Environment, something <br>> a region may or may not do. I'm afraid, this is the incorrect model. The <br>> server side doesn't have any choice on this, if it wants to interact <br>> with the current version of the LL viewer. The EQ should
be hand-in-hand <br>> with LLClientView. After all, it's the new channel of communications <br>> between a server and the LL viewer. Things that used to go over UDP are <br>> now sent via the EQ, period, no choice. Region Environment should be <br>> completely oblivious to that change. As it is now, this pattern occurs <br>> all over Region Environment classes:<br>> <br>> IEventQueue eq = [scene.]RequestModuleInterface<IEventQueue>();<br>> if (eq != null)<br>> {<br>> // send the event over EQ<br>> }<br>> else<br>> {<br>> // call the right IClientAPI method to send the event <br>> [over UDP]<br>> }<br>> <br>> This is infecting the server side with things that should be purely <br>> client side. It's a horrendous way of getting at the question "what <br>> version of the LL viewer are you supporting in
your region?". If there <br>> is such a thing as a wrong question to ask, this is one of them. If we <br>> want to support viewers with older communication stacks, then let's make <br>> that explicit in OpenSim and subclass LLClientView for the N previous <br>> versions of the LL viewer's communications stack. Region Environment, <br>> and the whole of the OpenSim framework, should be insulated from that <br>> mess, that's what the IClientAPI is there for. No OpenSim.ini <br>> configuration variables, other than the already existing one:<br>> clientstack_plugin="OpenSim.Region.ClientStack.LindenUDP.dll"<br>> <br>> What will happen when Rex comes along? ... what version of the LL viewer <br>> is that based on? ...<br>> <br>> Sorry for venting! I'm just sending this out to find the answer to these <br>> three questions:<br>> <br>> a) Am I missing something?<br>> <br>> b) Are there any objections to placing EQ under
<br>> OpenSim.Region.ClientStack.LindenUDP? (besides that name now being <br>> somewhat incorrect)<br>> <br>> c) Should OpenSim be backwards compatible with viewers forked off from <br>> older LL viewers *for the specific aspect of communications*? If so, <br>> what design pattern should be used?, subclassing or alternative code <br>> paths inside methods?<br>> <br>> _______________________________________________<br>> Opensim-dev mailing list<br>> Opensim-dev@lists.berlios.de<br>> https://lists.berlios.de/mailman/listinfo/opensim-dev<br>> <br>> <br>_______________________________________________<br>Opensim-dev mailing list<br>Opensim-dev@lists.berlios.de<br>https://lists.berlios.de/mailman/listinfo/opensim-dev<br></IEventQueue></blockquote><br><p>