;; Configurations for enabling HG1.5
;; 
;; Run
;; $ OpenSim.Server.exe -inifile OpenSim.Server.HG.ini

;; HG1.5 handlers are: OpenSim.Server.Handlers.dll:GatekeeperService
;;                     OpenSim.Server.Handlers.dll:UserAgentService
;;                     OpenSim.Server.Handlers.dll:HGInventoryServiceInConnector
;; An additional OpenSim.Server.Handlers.dll:AssetServiceConnector is started
;; in port 8002, outside the firewall
;;

[Startup]
ServiceConnectors = "8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,8003/OpenSim.Server.Handlers.dll:InventoryServiceInConnector,8002/OpenSim.Server.Handlers.dll:FreeswitchServerConnector,8003/OpenSim.Server.Handlers.dll:GridServiceConnector,8003/OpenSim.Server.Handlers.dll:GridInfoServerInConnector,8003/OpenSim.Server.Handlers.dll:AuthenticationServiceConnector,8002/OpenSim.Server.Handlers.dll:OpenIdServerConnector,8003/OpenSim.Server.Handlers.dll:AvatarServiceConnector,8002/OpenSim.Server.Handlers.dll:LLLoginServiceInConnector,8003/OpenSim.Server.Handlers.dll:PresenceServiceConnector,8003/OpenSim.Server.Handlers.dll:UserAccountServiceConnector,8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector,8002/OpenSim.Server.Handlers.dll:GatekeeperServiceInConnector,8002/OpenSim.Server.Handlers.dll:UserAgentServerConnector,HGInventoryService@8002/OpenSim.Server.Handlers.dll:HGInventoryServiceInConnector,8002/OpenSim.Server.Handlers.dll:AssetServiceConnector"

; * This is common for all services, it's the network setup for the entire
; * server instance, if none if specified above
; *
[Network]
    port = 8003

; * 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=opensim123;"

; * 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:InventoryService"
    SessionAuthentication = "false"

; * 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"
    Realm = "regions"
    ; AllowDuplicateNames = "True"
    ;; 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)

; * This is the configuration for the freeswitch server in grid mode
[FreeswitchService]
    LocalServiceModule = "OpenSim.Services.FreeswitchService.dll:FreeswitchService"

; * This is the new style authentication service. Currently, only MySQL
; * is implemented. "Realm" is the table that is used for user lookup.
; * By setting it to "users", you can use the old style users table
; * as an authentication source.
; *
[AuthenticationService]
    ; for the server connector
    LocalServiceModule = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"

[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 "users", which uses the legacy tables
; *
[UserAccountService]
    ; for the server connector
    LocalServiceModule = "OpenSim.Services.UserAccountService.dll:UserAccountService"
    ;; 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:InventoryService"

[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"
    AuthenticationService = "OpenSim.Services.AuthenticationService.dll:PasswordAuthenticationService"
    InventoryService = "OpenSim.Services.InventoryService.dll:InventoryService"
    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"

    WelcomeMessage = "Welcome, Avatar!"
    ; Defaults for the users, if none is specified in the useraccounts table entry (ServiceURLs)
    ; CHANGE THIS
    HomeURI = "http://127.0.0.1:8002"
    GatekeeperURI = "http://127.0.0.1:8002"
    InventoryServerURI = "http://127.0.0.1:8002"
    AssetServerURI = "http://127.0.0.1:8002"

[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:9000/

    ; 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
    ; currently unused
    ;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
    ; currently unused
    ;economy = http://127.0.0.1:9000/

    ; web page of grid: optional: page providing further information about your grid
    ; currently unused
    ;about = http://127.0.0.1/about/

    ; account creation: optional: page providing further information about obtaining
    ;                             a user account on your grid
    ; currently unused
    ;register = http://127.0.0.1/register

    ; help: optional: page providing further assistance for users of your grid
    ; currently unused
    ;help = http://127.0.0.1/help

    ; password help: optional: page providing password assistance for users of your grid
    ; currently unused
    ;password = http://127.0.0.1/password


[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"

[UserAgentService]
    LocalServiceModule = "OpenSim.Services.HypergridService.dll:UserAgentService"
    ;; for the service
    PresenceService = "OpenSim.Services.PresenceService.dll:PresenceService"
    GridService = "OpenSim.Services.GridService.dll:GridService"

;; 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.InventoryService.dll:HGInventoryService"