Login sequence
Event sequence diagram for login
Source code for the sequence diagram above.
|
---|
To change the diagram, change this source code, then paste it into this free online chart generator [1] to generate a new .png image. Then replace the version of the image above with a new image. title Initial login to world participant "Viewer" as V participant "Initial region" as R participant "Login server" as L group Initial login activate V V->L: Login request, XMLRPC activate L L->R: (region advised login coming) activate R L->V: Login reply rbox left of V: Contains initial region IP, port, seed\nregion handle, agent ID\nbut not avatar location in region. V-->>R: UseCircuitCode V-->>R: CompleteAgentMovement V-->>R: UuidNameRequest rbox left of V: UuidNameRequest for avatar name.\nProbably unnecessary, but traditional. R-->V: RegionHandshake rbox left of V: A 2 second delay here before the reply\nreduces interest list errors.\nRef: BUG-233107 V-->>R: RegionHandshakeReply V-->>R: AgentUpdate rbox left of V: This first AgentUpdate has a bogus avatar position.\nViewer does not know where the avatar is yet\nbut must send this to get object updates started.\nCause of some interest list bugs. V->R: EventQueueGet R-->>V: ObjectUpdate rbox left of V: The first object update is usually for the avatar.\nThis tells the viewer where the avatar really is.\nPosition of avatar moves in viewer. V-->>R: AgentUpdate rbox left of V: Viewer tells region where the camera is.\nViewer and region are now in sync. end rbox left of V: Logged in.\nNormal operation from here on. R-->>V: ObjectUpdate R-->>V: ObjectUpdate R-->>V: ObjectUpdate R->V: (Various event queue events) V-->>R: AgentUpdate |
Notes
Dashed lines are UDP messages. Solid lines are events received via EventQueueGet.
This documents the successful "happy path". Error conditions are not yet covered.
This information reflects what has been discovered by third part viewer developers. It is not official and may contain errors.