; * Run ; * $ Robust.exe -inifile Robust.HG.ini ; * ; * Configurations for enabling HG1.5 ; * ; * HG1.5 handlers are: OpenSim.Server.Handlers.dll:GatekeeperService ; * OpenSim.Server.Handlers.dll:UserAgentService ; * Additional OpenSim.Server.Handlers.dll:AssetServiceConnector and ; * OpenSim.Server.Handlers.dll:XInventoryInConnector ; * are started in port 8002, outside the firewall ; * ; * The startup section lists all the connectors to start up in this server ; * instance. This may be only one, or it may be the entire server suite. ; * Multiple connectors should be separated by commas. ; * ; * These are the IN connectors the server uses, the in connectors ; * read this config file and load the needed service and database connectors ; * ; * The full syntax of a connector string is: ; * [[<ConfigName>@]<port>/]<dll name>[:<class name>] ; * [Startup] [ServiceList] AssetServiceConnector = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector" InventoryInConnector = "8003/OpenSim.Server.Handlers.dll:XInventoryInConnector" VoiceConnector = "8004/OpenSim.Server.Handlers.dll:FreeswitchServerConnector" GridServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridServiceConnector" GridInfoServerInConnector = "8002/OpenSim.Server.Handlers.dll:GridInfoServerInConnector" AuthenticationServiceConnector = "8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector" OpenIdServerConnector = "8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector" AvatarServiceConnector = "8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector" LLLoginServiceInConnector = "8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector" PresenceServiceConnector = "8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector" UserAccountServiceConnector = "8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector" GridUserServiceConnector = "8003/OpenSim.Server.Handlers.dll:GridUserServiceConnector" FriendsServiceConnector = "8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector" MapAddServiceConnector = "8003/OpenSim.Server.Handlers.dll:MapAddServiceConnector" MapGetServiceConnector = "8002/OpenSim.Server.Handlers.dll:MapGetServiceConnector" ;; Additions for Hypergrid GatekeeperServiceInConnector = "8002/OpenSim.Server.Handlers.dll:GatekeeperServiceInConnector" UserAgentServerConnector = "8002/OpenSim.Server.Handlers.dll:UserAgentServerConnector" HeloServiceInConnector = "8002/OpenSim.Server.Handlers.dll:HeloServiceInConnector" HGFriendsServerConnector = "8002/OpenSim.Server.Handlers.dll:HGFriendsServerConnector" InstantMessageServerConnector = "8002/OpenSim.Server.Handlers.dll:InstantMessageServerConnector" HGInventoryServiceConnector = "HGInventoryService@8002/OpenSim.Server.Handlers.dll:XInventoryInConnector" HGAssetServiceConnector = "HGAssetService@8002/OpenSim.Server.Handlers.dll:AssetServiceConnector" ;; Additions for other add-on modules. For example: ;; WifiServerConnector = "8002/Diva.Wifi.dll:WifiServerConnector" ; * This is common for all services, it's the network setup for the entire ; * server instance, if none is specified above ; * [Network] port = 8003 ; HTTPS for "Out of band" management applications such as the remote admin ; module. May specify https_main = True to make the main http server ; use https or "False" to make the main server HTTP ; https_main = False ; ; Create https_listener = "True" will create a listener on the port ; specified. Provide the path to your server certificate along with it's ; password ; https_listener = False ; ; Set our listener to this port ; https_port = 0 ; ; Path to X509 certificate ; cert_path = "path/to/cert.p12" ; ; Password for cert ; cert_pass = "password" ; * The following are for the remote console ; * They have no effect for the local or basic console types ; * Leave commented to diable logins to the console ;ConsoleUser = Test ;ConsolePass = secret ;ConsolePort = 0 [DatabaseService] StorageProvider = "OpenSim.Data.MySQL.dll" ConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=*****;Old Guids=true;" ; * As an example, the below configuration precisely mimicks the legacy ; * asset server. It is read by the asset IN connector (defined above) ; * and it then loads the OUT connector (a local database module). That, ; * in turn, reads the asset loader and database connection information ; * [AssetService] LocalServiceModule = "OpenSim.Services.AssetService.dll:AssetService" DefaultAssetLoader = "OpenSim.Framework.AssetLoader.Filesystem.dll" AssetLoaderArgs = "./assets/AssetSets.xml" ; * This configuration loads the inventory server modules. It duplicates ; * the function of the legacy inventory server ; * [InventoryService] LocalServiceModule = "OpenSim.Services.InventoryService.dll:XInventoryService" ; * This is the new style grid service. ; * "Realm" is the table that is used for user lookup. ; * It defaults to "regions", which uses the legacy tables ; * [GridService] LocalServiceModule = "OpenSim.Services.GridService.dll:GridService" HypergridLinker = true ; Realm = "regions" ; AllowDuplicateNames = "True" ;; Perform distance check for the creation of a linked region ; Check4096 = "True" ;; Needed to display non-default map tile images for linked regions AssetService = "OpenSim.Services.AssetService.dll:AssetService" ;; Directory for map tile images of linked regions ; MapTileDirectory = "./maptiles" ;; Next, we can specify properties of regions, including default and fallback regions ;; The syntax is: Region_<RegionName> = "<flags>" ;; or: Region_<RegionID> = "<flags>" ;; where <flags> can be DefaultRegion, FallbackRegion, NoDirectLogin, Persistent, LockedOut,Reservation,NoMove,Authenticate ;; For example: ; Region_Welcome_Area = "DefaultRegion, FallbackRegion" ; (replace spaces with underscore) ;; Allow Hyperlinks to be created at the console HypergridLinker = true Gatekeeper = "http://127.0.0.1:8002" ; * This is the configuration for the freeswitch server in grid mode [FreeswitchService] LocalServiceModule = "OpenSim.Services.FreeswitchService.dll:FreeswitchService" ;; The IP address of your FreeSWITCH server. ;; This address must be reachable by viewers. ; ServerAddress = 127.0.0.1 ;; The following configuration parameters are optional ;; By default, this is the same as the ServerAddress ; Realm = 127.0.0.1 ;; By default, this is the same as the ServerAddress on port 5060 ; SIPProxy = 127.0.0.1:5060 ;; Default is 5000ms ; DefaultTimeout = 5000 ;; The dial plan context. Default is "default" ; Context = default ;; Currently unused ; UserName = freeswitch ;; Currently unused ; Password = password ;; The following parameters are for STUN = Simple Traversal of UDP through NATs ;; See http://wiki.freeswitch.org/wiki/NAT_Traversal ;; stun.freeswitch.org is not guaranteed to be running so use it in ;; production at your own risk ; EchoServer = 127.0.0.1 ; EchoPort = 50505 ; AttemptSTUN = false ; * This is the new style authentication service. Currently, only MySQL ; * is implemented. ; * [AuthenticationService] ; for the server connector LocalServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" ; Realm = "useraccounts" ;; Allow the service to process HTTP getauthinfo calls. ;; Default is false. ; AllowGetAuthInfo = false ;; Allow the service to process HTTP setauthinfo calls. ;; Default is false. ; AllowSetAuthInfo = false ;; Allow the service to process HTTP setpassword calls. ;; Default is false. ; AllowSetPassword = false [OpenIdService] ; for the server connector AuthenticationServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" UserAccountServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService" ; * This is the new style user service. ; * "Realm" is the table that is used for user lookup. ; * It defaults to "useraccounts", which uses the new style. ; * Realm = "users" will use the legacy tables as an authentication source ; * [UserAccountService] ; for the server connector LocalServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService" ; Realm = "useraccounts" ; These are for creating new accounts by the service AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService" GridService = "OpenSim.Services.GridService.dll:GridService" InventoryService = "OpenSim.Services.InventoryService.dll:XInventoryService" AvatarService = "OpenSim.Services.AvatarService.dll:AvatarService" ;; This switch creates the minimum set of body parts and avatar entries for a viewer 2 ;; to show a default "Ruth" avatar rather than a cloud for a newly created user. ;; Default is false CreateDefaultAvatarEntries = true ;; Allow the service to process HTTP createuser calls. ;; Default is false. ; AllowCreateUser = false ;; Allow the service to process HTTP setaccount calls. ;; Default is false. ; AllowSetAccount = false [GridUserService] ; for the server connector LocalServiceModule = "OpenSim.Services.UserAccountService.dll:GridUserService" [PresenceService] ; for the server connector LocalServiceModule = "OpenSim.Services.PresenceService.dll:PresenceService" [AvatarService] ; for the server connector LocalServiceModule = "OpenSim.Services.AvatarService.dll:AvatarService" [FriendsService] ; for the server connector LocalServiceModule = "OpenSim.Services.FriendsService.dll:FriendsService" [LibraryService] LibraryName = "OpenSim Library" DefaultLibrary = "./inventory/Libraries.xml" [LoginService] ; for the server connector LocalServiceModule = "OpenSim.Services.LLLoginService.dll:LLLoginService" ; for the service UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService" GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService" AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService" InventoryService = "OpenSim.Services.InventoryService.dll:XInventoryService" AvatarService = "OpenSim.Services.AvatarService.dll:AvatarService" PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService" GridService = "OpenSim.Services.GridService.dll:GridService" SimulationService ="OpenSim.Services.Connectors.dll:SimulationServiceConnector" LibraryService = "OpenSim.Services.InventoryService.dll:LibraryService" UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService" FriendsService = "OpenSim.Services.FriendsService.dll:FriendsService" ;; Ask co-operative viewers to use a different currency name ;Currency = "" WelcomeMessage = "Welcome, Avatar!" AllowRemoteSetLoginLevel = "false" ; For V2 map MapTileURL = "http://127.0.0.1:8002"; ; For V2/3 Web Profiles ; Work in progress: The ProfileServerURL/OpenIDServerURL are ; being used in a development viewer as support for webprofiles ; is being developed across the componets ; ; ProfileServerURL = "http://127.0.0.1/profiles/[AGENT_NAME]" ; ; For V2/V3 webapp authentication SSO ; OpenIDServerURL = "http://127.0.0.1/openid/openidserver/" ; If you run this login server behind a proxy, set this to true ; HasProxy = false ; Defaults for the users, if none is specified in the useraccounts table entry (ServiceURLs) ; CHANGE THIS GatekeeperURI = "http://127.0.0.1:8002" SRV_HomeURI = "http://127.0.0.1:8002" SRV_InventoryServerURI = "http://127.0.0.1:8002" SRV_AssetServerURI = "http://127.0.0.1:8002" SRV_ProfileServerURI = "http://127.0.0.1:8002" SRV_FriendsServerURI = "http://127.0.0.1:8002" SRV_IMServerURI = "http://127.0.0.1:8002" ;; Regular expressions for controlling which client versions are accepted/denied. ;; An empty string means nothing is checked. ;; ;; Example 1: allow only these 3 types of clients (any version of them) ;; AllowedClients = "Imprudence|Hippo|Second Life" ;; ;; Example 2: allow all clients except these ;; DeniedClients = "Twisted|Crawler|Cryolife|FuckLife|StreetLife|GreenLife|AntiLife|KORE-Phaze|Synlyfe|Purple Second Life|SecondLi |Emerald" ;; ;; Note that these are regular expressions, so every character counts. ;; Also note that this is very weak security and should not be trusted as a reliable means ;; for keeping bad clients out; modified clients can fake their identifiers. ;; ;; ;AllowedClients = "" ;DeniedClients = "" ;# {DSTZone} {} {Override Daylight Saving Time rules} {* none local} "America/Los_Angeles;Pacific Standard Time" ;; Viewers do not receive timezone information from the server - almost all (?) default to Pacific Standard Time ;; However, they do rely on the server to tell them whether it's Daylight Saving Time or not. ;; Hence, calculating DST based on a different timezone can result in a misleading viewer display and inconsistencies between grids. ;; By default, this setting uses various timezone names to calculate DST with regards to the viewer's standard PST. ;; Options are ;; "none" no DST ;; "local" use the server's only timezone to calculate DST. This is previous OpenSimulator behaviour. ;; "America/Los_Angeles;Pacific Standard Time" use these timezone names to look up Daylight savings. ;; 'America/Los_Angeles' is used on Linux/Mac systems whilst 'Pacific Standard Time' is used on Windows DSTZone = "America/Los_Angeles;Pacific Standard Time" [MapImageService] LocalServiceModule = "OpenSim.Services.MapImageService.dll:MapImageService" ; Set this if you want to change the default ; TilesStoragePath = "maptiles" ; ; If for some reason you have the AddMapTile service outside the firewall (e.g. 8002), ; you may want to set this. Otherwise, don't set it, because it's already protected. ; GridService = "OpenSim.Services.GridService.dll:GridService" ; ; Additionally, if you run this server behind a proxy, set this to true ; HasProxy = false [GridInfoService] ; These settings are used to return information on a get_grid_info call. ; Client launcher scripts and third-party clients make use of this to ; autoconfigure the client and to provide a nice user experience. If you ; want to facilitate that, you should configure the settings here according ; to your grid or standalone setup. ; ; See http://opensimulator.org/wiki/GridInfo ; login uri: for grid this is the login server URI login = http://127.0.0.1:8002/ ; long grid name: the long name of your grid gridname = "the lost continent of hippo" ; short grid name: the short name of your grid gridnick = "hippogrid" ; login page: optional: if it exists it will be used to tell the client to use ; this as splash page ;welcome = http://127.0.0.1/welcome ; helper uri: optional: if it exists if will be used to tell the client to use ; this for all economy related things ;economy = http://127.0.0.1:8002/ ; web page of grid: optional: page providing further information about your grid ;about = http://127.0.0.1/about/ ; account creation: optional: page providing further information about obtaining ; a user account on your grid ;register = http://127.0.0.1/register ; help: optional: page providing further assistance for users of your grid ;help = http://127.0.0.1/help ; password help: optional: page providing password assistance for users of your grid ;password = http://127.0.0.1/password ; HG address of the gatekeeper, if you have one ; this is the entry point for all the regions of the world ; gatekeeper = http://127.0.0.1:8002/ ; HG user domain, if you have one ; this is the entry point for all user-related HG services ; uas = http://127.0.0.1:8002/ [GatekeeperService] LocalServiceModule = "OpenSim.Services.HypergridService.dll:GatekeeperService" ;; for the service UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService" UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService" PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService" GridService = "OpenSim.Services.GridService.dll:GridService" AuthenticationService = "OpenSim.Services.Connectors.dll:AuthenticationServicesConnector" SimulationService ="OpenSim.Services.Connectors.dll:SimulationServiceConnector" ; how does the outside world reach me? This acts as public key too. ; CHANGE THIS ExternalName = "http://127.0.0.1:8002" ; Does this grid allow incoming links to any region in it? ; If false, HG TPs happen only to the Default regions specified in [GridService] section AllowTeleportsToAnyRegion = true ; If you run this gatekeeper server behind a proxy, set this to true ; HasProxy = false ;; Regular expressions for controlling which client versions are accepted/denied. ;; An empty string means nothing is checked. ;; ;; Example 1: allow only these 3 types of clients (any version of them) ;; AllowedClients = "Imprudence|Hippo|Second Life" ;; ;; Example 2: allow all clients except these ;; DeniedClients = "Twisted|Crawler|Cryolife|FuckLife|StreetLife|GreenLife|AntiLife|KORE-Phaze|Synlyfe|Purple Second Life|SecondLi |Emerald" ;; ;; Note that these are regular expressions, so every character counts. ;; Also note that this is very weak security and should not be trusted as a reliable means ;; for keeping bad clients out; modified clients can fake their identifiers. ;; ;; ;AllowedClients = "" ;DeniedClients = "" ;; Are foreign visitors allowed? ;ForeignAgentsAllowed = true ;; ;; If ForeignAgentsAllowed is true, make exceptions using AllowExcept. ;; Leave blank or commented for no exceptions. ; AllowExcept = "http://griefer.com:8002, http://enemy.com:8002" ;; ;; If ForeignAgentsAllowed is false, make exceptions using DisallowExcept ;; Leave blank or commented for no exceptions. ; DisallowExcept = "http://myfriendgrid.com:8002, http://myboss.com:8002" [UserAgentService] LocalServiceModule = "OpenSim.Services.HypergridService.dll:UserAgentService" ;; for the service GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService" GridService = "OpenSim.Services.GridService.dll:GridService" GatekeeperService = "OpenSim.Services.HypergridService.dll:GatekeeperService" PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService" FriendsService = "OpenSim.Services.FriendsService.dll:FriendsService" UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService" ; If you run this user agent server behind a proxy, set this to true ; HasProxy = false ;; If you separate the UserAgentService from the LoginService, set this to ;; the IP address of the machine where your LoginService is ;LoginServerIP = "127.0.0.1" ; User level required to be contacted from other grids ;LevelOutsideContacts = 0 ;; Restrictions on destinations of local users. ;; Are local users allowed to visit other grids? ;; What user level? Use variables of this forrm: ;; ForeignTripsAllowed_Level_<UserLevel> = true | false ;; (the default is true) ;; For example: ; ForeignTripsAllowed_Level_0 = false ; ForeignTripsAllowed_Level_200 = true ; true is default, no need to say it ;; ;; If ForeignTripsAllowed is false, make exceptions using DisallowExcept ;; Leave blank or commented for no exceptions. ; DisallowExcept_Level_0 = "http://myothergrid.com:8002, http://boss.com:8002" ;; ;; If ForeignTripsAllowed is true, make exceptions using AllowExcept. ;; Leave blank or commented for no exceptions. ; AllowExcept_Level_200 = "http://griefer.com:8002, http://enemy.com:8002" ; * The interface that local users get when they are in other grids. ; * This restricts the inventory operations while in other grids. ; * Still not completely safe, especially if users perform inventory operations ; * while in those grids. The more the user accesses his/her inventory, the more ; * those simulators will know about the user's inventory. ; * [HGInventoryService] ; For the InventoryServiceInConnector LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGSuitcaseInventoryService" ;; alternatives: ;; HG1.5, more permissive, not recommended, but still supported ;LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGInventoryService" ;; HG1.0, totally permissive, not recommended, but OK for grids with 100% trust ;LocalServiceModule = "OpenSim.Services.InventoryService.dll:XInventoryService" UserAccountsService = "OpenSim.Services.UserAccountService.dll:UserAccountService" AvatarService = "OpenSim.Services.AvatarService.dll:AvatarService" HomeURI = "http://127.0.0.1:8002" ; * The interface that local users get when they are in other grids. ; * This restricts the access that the rest of the world has to ; * the assets of this world. ; * [HGAssetService] LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGAssetService" UserAccountsService = "OpenSim.Services.UserAccountService.dll:UserAccountService" HomeURI = "http://127.0.0.1:8002" ;; The asset types that this grid can export to / import from other grids. ;; Comma separated. ;; Valid values are all the asset types in OpenMetaverse.AssetType, namely: ;; Unknown, Texture, Sound, CallingCard, Landmark, Clothing, Object, Notecard, LSLText, ;; LSLBytecode, TextureTGA, Bodypart, SoundWAV, ImageTGA, ImageJPEG, Animation, Gesture, Mesh ;; ;; Leave blank or commented if you don't want to apply any restrictions. ;; A more strict, but still reasonable, policy may be to disallow the exchange ;; of scripts, like so: ; DisallowExport ="LSLText" ; DisallowImport ="LSLBytecode" [HGFriendsService] LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGFriendsService" UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService" FriendsService = "OpenSim.Services.FriendsService.dll:FriendsService" UserAccountService = "OpenSim.Services.UserAccountService.dll:UserAccountService" GridService = "OpenSim.Services.GridService.dll:GridService" PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService" [HGInstantMessageService] LocalServiceModule = "OpenSim.Services.HypergridService.dll:HGInstantMessageService" GridService = "OpenSim.Services.GridService.dll:GridService" PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService" UserAgentService = "OpenSim.Services.HypergridService.dll:UserAgentService" ; This should always be true in the Robust config InGatekeeper = True [Messaging] ; If you have an Offline IM server, set the vars in this section, so that ; incomming IMs to local users from foreign grids can be saved ; ;# {OfflineMessageURL} {OfflineMessageModule:OfflineMessageModule} {URL of offline messaging service} {} ;; URL of web service for offline message storage ; OfflineMessageURL = http://yourserver/Offline.php ;; Control whether group messages are forwarded to offline users. ;; Default is true. ;; This applies to the core groups module (Flotsam) only. ; ForwardOfflineGroupMessages = true