Difference between revisions of "Current Sim Capabilities"
Monty Linden (talk | contribs) (Update list of sub-subcapabilities. Believe it is now complete except for the unnamed caps generated by caps-generating-caps (sub-sub-capabilities).) |
Monty Linden (talk | contribs) m (Same name for llmessage and capabilities. Needs to be distinguished.) |
||
Line 32: | Line 32: | ||
* [[AbuseCategories]] | * [[AbuseCategories]] | ||
* [[AcceptFriendship]] | * [[Capability AcceptFriendship]] | ||
* [[AcceptGroupInvite]] | * [[AcceptGroupInvite]] | ||
* [[AgentExperiences]] | * [[AgentExperiences]] | ||
Line 44: | Line 44: | ||
* [[CopyInventoryFromNotecard]] | * [[CopyInventoryFromNotecard]] | ||
* [[CreateInventoryCategory]] | * [[CreateInventoryCategory]] | ||
* [[DeclineFriendship]] | * [[Capability DeclineFriendship]] | ||
* [[DeclineGroupInvite]] | * [[DeclineGroupInvite]] | ||
* [[DirectDelivery]] | * [[DirectDelivery]] |
Revision as of 05:04, 1 April 2022
Introduction
In the current protocols, there appear to be at least 2 kinds of capabilities: Sim capabilities and Sub-Capabilities obtained from the Sim Capability. The current login protocols return a "seed-capability" which is actually the Sim-Capability of the sim the avatar enters upon performing a full login. This will change with the new login protocols.
The following slides are from an October, 2007 presentation by Tess Linden. Though it was an internal Linden Lab presentation, the slides may be useful for those residents trying to learn Second Life's messaging and capability systems. Message_System_and_Capabilities
Accessing Capabilities
A typical capability is of the form: https://sim1234.agni.lindenlab.com:12345/cap/UUID
In the current client, sim capabilities are accessed via an https request of the form:
https request {POST, URL:port, path, body, header}
where
- • URL:port is of the form: sim1234.agni.lindenlab.com:12345;
- • path is of the form: /cap/UUID;
- • body is an xml-encoded LLSD array of the form: <llsd><array><string>request1</string><string>request2</string></array></llsd>
- • Header is of the form: "content-type": "application/llsd+xml";
The response from a sim capability transaction is an xml-encoded LLSD dictionary with key, value pairs in the form:
- • <llsd><map><key>request1</key><string>Capability1</string><key>request2</key><string>Capability2</string</map></llsd>
sub-capabilities apparently use the same protocol, but the body of the https request is dependent on which capability is used, as is the result.
Sub Capabilities
The following are among the sub-capabilities returned by the sim cap. Each has its own protocols which will be discussed in separate pages:
- AbuseCategories
- Capability AcceptFriendship
- AcceptGroupInvite
- AgentExperiences
- AgentPreferences
- AgentState
- AttachmentResources
- AvatarPickerSearch
- AvatarRenderInfo
- CharacterProperties
- ChatSessionRequest
- CopyInventoryFromNotecard
- CreateInventoryCategory
- Capability DeclineFriendship
- DeclineGroupInvite
- DirectDelivery
- DispatchRegionInfo
- EnvironmentSettings
- EstateAccess
- EstateChangeInfo
- EventQueueGet
- ExperiencePreferences
- ExperienceQuery
- ExtEnvironment
- FacebookConnect
- FetchInventory2
- FetchInventoryDescendents2
- FetchLib2
- FetchLibDescendents2
- FindExperienceByName
- FlickrConnect
- GetAdminExperiences
- GetCreatorExperiences
- GetDisplayNames
- GetExperienceInfo
- GetExperiences
- GetMesh
- GetMesh2
- GetMetadata
- GetObjectCost
- GetObjectPhysicsData
- GetTexture
- GroupAPIv1
- GroupExperiences
- GroupMemberData
- GroupProposalBallot
- HomeLocation
- IncrementCOFVersion
- InterestList
- InventoryAPIv1
- InventoryAPIv3
- IsExperienceAdmin
- IsExperienceContributor
- LandResources
- LibraryAPIv3
- LSLSyntax
- MapLayer
- MapLayerGod
- MeshUploadFlag
- NavMeshGenerationStatus
- NewFileAgentInventory
- ObjectAnimation
- ObjectMedia
- ObjectMediaNavigate
- ObjectNavMeshProperties
- ParcelPropertiesUpdate
- ParcelVoiceInfoRequest
- ProductInfoRequest
- ProvisionVoiceAccountRequest
- ReadOfflineMsgs
- RegionExperiences
- RemoteParcelRequest
- RenderMaterials
- RequestTextureDownload
- ResourceCostSelected
- RetrieveNavMeshSrc
- ScriptPermissions
- SearchStatRequest
- SearchStatTracking
- SendPostcard
- SendUserReport
- SendUserReportWithScreenshot
- ServerReleaseNotes
- SetDisplayName
- SimConsoleAsync
- SimulatorFeatures
- StartGroupProposal
- TerrainNavMeshProperties
- TextureStats
- TwitterConnect
- UntrustedSimulatorMessage
- UpdateAgentInformation
- UpdateAgentLanguage
- UpdateAvatarAppearance
- UpdateExperience
- UpdateGestureAgentInventory
- UpdateGestureTaskInventory
- UpdateNotecardAgentInventory
- UpdateNotecardTaskInventory
- UpdateScriptAgent
- UpdateScriptTask
- UpdateSettingsAgentInventory
- UpdateSettingsTaskInventory
- UploadBakedTexture
- UserInfo
- ViewerAsset
- ViewerBenefits
- ViewerMetrics
- ViewerStartAuction
- ViewerStats
External Links
[1] -- EventQueueGet - libsecondlife - Machine
[2] -- MapLayer - libsecondlife
[3] -- NewAgentInventory - libsecondlife
[4] -- UpdateNotecardAgentInventory - libsecondlife