[Opensim-dev] Documentation for IClientNetworkServer

Sergiy Byelozyorov rryk.ua at gmail.com
Mon Apr 22 09:00:24 UTC 2013


Thanks for the tips. I will try to rewrite my class as region module. While
this requires more work, it looks like a good long-term time investment.
The problem with libopenmetaverse is that I am not planning to use UDP for
my work. But it certainly can be a good reference for experiences code
readers :-). It's just that I was missing some kind of overview (even just
for a sample of messages) when starting and so created one myself.


Sergiy


On Sat, Apr 20, 2013 at 9:55 PM, Dahlia Trimble <dahliatrimble at gmail.com>wrote:

> Actually the 2nd link is for libopenmetaverse, the library which
> implements the Second Life protocol. It's used in OpenSimulator for
> generating the UDP packets and other messages which allow communications
> with the various viewers. The wiki often has information which cannot be
> found in the Second Life wiki, and the code is quite well structured and
> complete and contains a good understanding of the protocol.
>
> Good luck with your protocol. I've designed a couple alternative protocols
> and I found it to be quite challenging; there are many "gotchas" lurking
> around. I've also implemented alternative protocols both as IClientAPI
> modules and as region modules, and I found region modules to be a better
> place for experimenting as the IClientApi interface is constantly changing
> and it's difficult to keep private modules in sync with core. Region module
> interfaces are much more simple and stable, and you really only need to ask
> for events that you care about thru EventManager. If you want to
> instantiate avatars, the NPC facilities can be invoked from region modules
> as well.
>
>
> On Sat, Apr 20, 2013 at 4:08 AM, Sergiy Byelozyorov <rryk.ua at gmail.com>wrote:
>
>> Thank you for the links. I've seen the first one - it did gave me
>> sufficient introduction, but it is not detailed enough. Many messages are
>> only described by their structure, but not the meaning of each field, e.g. this
>> one <http://wiki.secondlife.com/wiki/ParcelAccessListUpdate> (what flags
>> can be set?) or this one<http://wiki.secondlife.com/wiki/AgentHeightWidth> (what's
>> agent's client and width, gen counter?). This information can be found in
>> the code and I have compiled a short description for a few messages:
>> https://docs.google.com/spreadsheet/ccc?key=0AtS8km6a08YmdGZUS0FINkhibGZ1U2RVZnJSSXMzZ1E&usp=sharing
>>
>> The second one seems like a guide for developing scripts in-world, while
>> I am currently looking into writing an alternative protocol for
>> client-server communication. I have some plans to work on scripting APIs
>> too, so it will be useful for me at some point in the future.
>>
>>
>> Sergiy
>>
>>
>> On Sat, Apr 20, 2013 at 8:11 AM, Dahlia Trimble <dahliatrimble at gmail.com>wrote:
>>
>>> If you're interested in LL protocol,
>>> http://wiki.secondlife.com/wiki/Protocol might be a good place to
>>> start. There's also http://lib.openmetaverse.org/wiki/Developer_Portalwhich contains a lot of useful information.
>>>
>>>
>>> On Fri, Apr 19, 2013 at 2:58 PM, Sergiy Byelozyorov <rryk.ua at gmail.com>wrote:
>>>
>>>> I can only view source, but can't edit the page. Perhaps you can create
>>>> a new page "Linden Lab viewer protocol", grant me the rights to edit it and
>>>> link it from the Client-Server protocol section. My username in the wiki is
>>>> Rryk.
>>>>
>>>>
>>>> Sergiy
>>>>
>>>>
>>>> On Fri, Apr 19, 2013 at 9:26 PM, Justin Clark-Casey <
>>>> jjustincc at googlemail.com> wrote:
>>>>
>>>>> A great place to do this would be on new wiki page(s) linked from [1].
>>>>>  Please feel free just to create a wiki account and start editing!  I
>>>>> haven't yet written up any general information the LL viewer-server
>>>>> protocol and it would be great to have some.
>>>>>
>>>>> Another place for protocol information might be the libomv wiki [2],
>>>>> though on a (very) casual glance I don't see any protocol-level doc apart
>>>>> from the auto-extracted UDP message templates.
>>>>>
>>>>> The other sources of protocol information would be the LL wiki.
>>>>>
>>>>> [1] http://opensimulator.org/wiki/**Communication_Protocols<http://opensimulator.org/wiki/Communication_Protocols>
>>>>> [2] http://lib.openmetaverse.org/**wiki/Developer_Portal<http://lib.openmetaverse.org/wiki/Developer_Portal>
>>>>>
>>>>>
>>>>> On 19/04/13 20:10, Sergiy Byelozyorov wrote:
>>>>>
>>>>>> Thank you. This mailing list is in principle some kind of
>>>>>> documentation. :-)
>>>>>>
>>>>>> Btw, I have done some study of the LL protocol and wrote a small
>>>>>> summary for a few messages (that were logged by the
>>>>>> server while a client has performed a few simple actions such as
>>>>>> walking and flying). I haven't found any documentation
>>>>>> on the protocol other than the one in the code, which is where I have
>>>>>> got the information from. Perhaps someone can use
>>>>>> my research - where can I post my study? Would be also great if I
>>>>>> could update it as I will continue to learn more about
>>>>>> the protocol with time.
>>>>>>
>>>>>>
>>>>>> Sergiy
>>>>>>
>>>>>>
>>>>>> On Tue, Apr 16, 2013 at 11:06 PM, Justin Clark-Casey <
>>>>>> jjustincc at googlemail.com <mailto:jjustincc at googlemail.**com<jjustincc at googlemail.com>>>
>>>>>> wrote:
>>>>>>
>>>>>>     This is very old code, some of which was originally present for
>>>>>> load balancing experiments which have long been
>>>>>>     defunct and the original coders unavailable.  Its purpose was
>>>>>> also completely undocumented.  Therefore, I have
>>>>>>     removed NetworkStop().
>>>>>>
>>>>>>     As for AddScene, you can assume it will only be called once.
>>>>>>  There is a mechanism in OpenSimBase which looks like
>>>>>>     it was intended as a bypass (presumably so that AddScene() could
>>>>>> be called multiple times on a single
>>>>>>     INetworkClientServer).  But I believe this was again present for
>>>>>> the above load balancing experiments and is
>>>>>>     effectively defunct.
>>>>>>
>>>>>>     I'm afraid no general documentation really exists for the client
>>>>>> stack interfaces and mechanisms.  The best we can
>>>>>>     do is try and fill in the blanks on request.
>>>>>>
>>>>>>
>>>>>>     On 15/04/13 15:27, Sergiy Byelozyorov wrote:
>>>>>>
>>>>>>         Also what's the difference between Stop and NetworkStop?
>>>>>>
>>>>>>
>>>>>>         Sergiy
>>>>>>
>>>>>>
>>>>>>         On Mon, Apr 15, 2013 at 4:21 PM, Sergiy Byelozyorov <
>>>>>> rryk.ua at gmail.com <mailto:rryk.ua at gmail.com>
>>>>>>          <mailto:rryk.ua at gmail.com <mailto:rryk.ua at gmail.com>>>
>>>>>> wrote:
>>>>>>
>>>>>>              Hi,
>>>>>>
>>>>>>              I am implementing a new client network server class. Is
>>>>>> there any documentation on IClientNetworkServer? In
>>>>>>              particular I am interested whether AddScene may be
>>>>>> called several times or not.
>>>>>>
>>>>>>              Sergiy
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>         ______________________________**___________________
>>>>>>         Opensim-dev mailing list
>>>>>>         Opensim-dev at lists.berlios.de <mailto:Opensim-dev at lists.**
>>>>>> berlios.de <Opensim-dev at lists.berlios.de>>
>>>>>>         https://lists.berlios.de/__**mailman/listinfo/opensim-dev<https://lists.berlios.de/__mailman/listinfo/opensim-dev><
>>>>>> https://lists.berlios.de/**mailman/listinfo/opensim-dev<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 at lists.berlios.de <mailto:Opensim-dev at lists.**
>>>>>> berlios.de <Opensim-dev at lists.berlios.de>>
>>>>>>     https://lists.berlios.de/__**mailman/listinfo/opensim-dev<https://lists.berlios.de/__mailman/listinfo/opensim-dev><
>>>>>> https://lists.berlios.de/**mailman/listinfo/opensim-dev<https://lists.berlios.de/mailman/listinfo/opensim-dev>
>>>>>> >
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> ______________________________**_________________
>>>>>> Opensim-dev mailing list
>>>>>> Opensim-dev at lists.berlios.de
>>>>>> https://lists.berlios.de/**mailman/listinfo/opensim-dev<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 at 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 at lists.berlios.de
>>>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>>>
>>>
>>>
>>> _______________________________________________
>>> Opensim-dev mailing list
>>> Opensim-dev at lists.berlios.de
>>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>>
>>
>>
>> _______________________________________________
>> Opensim-dev mailing list
>> Opensim-dev at lists.berlios.de
>> https://lists.berlios.de/mailman/listinfo/opensim-dev
>>
>
>
> _______________________________________________
> Opensim-dev mailing list
> Opensim-dev at lists.berlios.de
> https://lists.berlios.de/mailman/listinfo/opensim-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://opensimulator.org/pipermail/opensim-dev/attachments/20130422/297df885/attachment-0001.html>


More information about the Opensim-dev mailing list