OpenSimulator Internals/Walkthroughs/Avatar Goes HG
Appearance
OpenSimulator Internals/Walkthroughs/Avatar Goes HG
[edit]Overview
[edit]Traces what happens in code, connectors, and database when an avatar HyperGrid teleports from their home grid to a foreign grid, and when they return.
Assumes the home grid runs ROBUST + OpenSim with HGEntityTransferModule enabled.
Part 1: Departing the Home Grid
[edit]1. HG Destination Resolved
[edit]OpenSim/Region/CoreModules/Framework/EntityTransfer/HGEntityTransferModule.cs -- GetFinalDestination() OpenSim/Services/Connectors/Hypergrid/GatekeeperServiceConnector.cs
- Avatar clicks a HG link or enters a HG URI (e.g. hg.example.com:8002:RegionName).
- GridService on source region looks up the destination -- finds a region with RegionFlags.Hyperlink set. This is a local stub entry, not a real region.
- GetFinalDestination() detects the Hyperlink flag.
- Calls GatekeeperServiceConnector.GetHyperlinkRegion() -- HTTP POST to the foreign grid's Gatekeeper service (hg.example.com:8002).
- Gatekeeper validates the request and returns a real GridRegion descriptor for the destination on the foreign grid.
- ValidateGenericConditions() checks appearance restrictions if RestrictAppearanceAbroad=true.
2. Pre-flight at Foreign Gatekeeper
[edit]EntityTransferModule -- DoTeleportInternal()
- SimulationService.QueryAccess() --