Adding neighbor region sequence

From Second Life Wiki
Revision as of 11:37, 7 September 2023 by Animats Resident (talk | contribs) (Begin page.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Event sequence diagram for adding a connection to a neighbor region

Sequence diagram
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 Adding a new region to viewer comms.

participant "Viewer" as V
participant "Host Region" as H
participant "Neighbour Region" as N

V->H: EventQueueGet
activate H
rbox left of V: Stood in the region centre\nDraw Distanceis 32m\nno otherregions are visibleV-->H: AgentUpdate(x=128,y=128,Far=32)
V-->>H: AgentUpdate
V-->>H: AgentUpdate
V-->>H: AgentUpdate
rbox left of V: Draw Distance is increased to 200m
V-->>H: AgentUpdate(Far=200)
H->N: ServerSide ChitChat
N->H:
group EventQueueGet<response>
H->V: EventQueueGet([EnableSimulator])
deactivate H
H->>V: EnableSimulator
end
V->H: EventQueueGet
activate H
V-->N:UseCircuitCode
V-->>H: AgentUpdate
V-->>H: AgentUpdate
N-->V: RegionHandshake
V-->N: RegionHandshakeReply
V-->>H: AgentUpdate
group EventQueueGet<response>
H->V: EventQueueGet([EstablishAgentCommunication])
deactivate H
H->>V: EstablishAgentCommunication
end
V->N: Seed
N->V: Seed<Response>V

Discussion

This is an event sequence diagram of the essential events that take place as a region discovers and connects to an adjacent region. This is how the viewer is able to show more than one region on screen.

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.