RegionIntegration
From OpenSimulator
Contents |
Introduction
This page is a work-in-progress
Integrating OpenSimulator regions with external sources of data can be done in a number of ways.
Techniques
Media on a prim (MOAP), also called Shared Media by Linden Lab, allows you to display and interact with any webpage on the surface of an object with version 2 and later Linden Lab viewers and third party viewers such as Firestorm and Kokua. See this page for more details.
Integration through Linden Scripting Language (LSL) scripts
LSL provides a number of mechanisms for objects in a region to send (e.g. llHTTPRequest()) and receive data (e.g. llRequestURL() and then the http_request event) from external servers via HTTP. Please see the linked webpages for more details on using these and associated commands.
Integration through region modules
OpenSimulator provides a IRegionModule mechanism by which C# code can directly affect the objects in a region and can interface with any external system. Using internal OpenSimulator code from a module is currently something of a black art, though the core distribution itself contains a large number of region modules and test code which can give examples of how to do this. Also, as OpenSimulator is alpha code one has to expect that internal methods will change between releases with no warning. This will remain the case until individual interfaces are formalized and/or OpenSimulator is considered in beta state.
Region modules can also send and receive information from scripts via the OSSL_Script_Library/ModSendCommand mechanism. In a future OpenSimulator release (0.7.4), region modules will also be able to make custom scripting functions available to scripts without having to manually patch and rebuild OpenSimulator via the OSSL_Script_Library/ModInvoke mechanism.