Gloebit Developer Logo

Blog

Sandbox

Main Site

OpenSim Gloebit Money Module Beta - Configuration Instructions

Enabling Gloebit on your OpenSim grid is quick and simple. There are 3 easy steps.

  1. Request account permission to create apps
  2. Create a Gloebit app
  3. Install and configure the Gloebit Money Module

The details for each of these is below. Just follow the step by step instructions.

We have two environments, a Sandbox testing environment and Production. All of the instructions below are for our Production environment, but if you want to test with fake payments and gloebits, you can replace www with sandbox in all the links below.

Request account permission to create apps

If you haven't already, create a Gloebit account. Remember that our Sanbox and Production environments use completely separate accounts, so if you've been testing on Sandbox, you'll still need to create a Production account and go through all the steps below from that account to create a Production app.

From your Gloebit account, fill in and submit our form for requesting app creation permission. We just need some basic contact info.

You'll need to wait for us to review your request before you can move to creating your app. We'll email you once we have.

Create a Gloebit app

Once your account has been granted permission to create apps, you'll gain access to your merchant tools page where you can create and edit your apps. Go there and either click Configure next to an existing app (we may have created one for you labeled "Unknown") or the Add an Application button, which will take you to an app settings page. Follow the instructions below to set up your app.

Now you have an app and you're ready to install and configure the GMM.

Configuration

If you are running the Diva distribution of OpenSim, please follow our Diva specific configuration instructions instead of the instructions below.

  1. Install:
    • Download Gloebit.ini and the Gloebit dll for your version of OpenSim
      • Alternatively, you can clone the GMM repository and build your DLL yourself.
    • Place Gloebit.dll in your opensim/bin/ directory.
    • Place Gloebit.ini in your ConfigDirectory. By default, this is also opensim/bin/. If you are unsure, you can locate the ConfigDirectory value in the [Startup] section of opensim.ini.
  2. Enable: Make required edits to Gloebit.ini and opensim.ini.
    • In Gloebit.ini, set GLBEnvironment = production (or set it to sandbox for a testing app created in our sandbox environment).
      ;;;;;; CONFIGURE ENVIRONMENT AND APPLICATION ;;;;;;
      ;; Configure GMM to environment and Gloebit application on that environment to interact with
      ;; see http://dev.gloebit.com/opensim/configuration-instructions/ for more details.
      
      ;; Environments:
      ;;      sandbox - connects to sandbox.gloebit.com;  fake/sandboxed payments and gloebits;
      ;;              https://sandbox.gloebit.com/signup/ - create sandbox account
      ;;              https://sandbox.gloebit.com/merchant-signup/ - request ability to create apps
      ;;              https://sandbox.gloebit.com/merchant-tools/ - create app and retrieve Key and Secret
      ;;      production - connects to www.gloebit.com; real payments and gloebits;
      ;;              https://www.gloebit.com/signup/ - create production account
      ;;              https://www.gloebit.com/merchant-signup/ - request ability to create apps
      ;;              (requires manual approval on production before gaining access to merchant tools)
      ;;              https://www.gloebit.com/merchant-tools/ - create app and retrieve Key and Secret
      GLBEnvironment = production
    • In Gleobit.ini, set GLBKey and GLBSecret to the "OAuth Key" and "OAuth Secret" from the application you created above.
      ;; Application the GMM on this process will connect to within the environment specified above
      ;; Fill in GLBKey and GLBSecret with values from app created at https://sandbox.gloebit.com/merchant-tools/
      ;; See http://dev.gloebit.com/opensim/configuration-instructions/ for more details.
      GLBKey = 00000000-0000-0000-0000-000000000000
      GLBSecret = 00000000-0000-0000-0000-000000000000
    • To enable Gloebit across the entire process (for all regions running under this single OpenSim process):
      • In Gloebit.ini, set Enabled = true
        ;;;;;; ENABLE GLOBALLY OR FOR INDIVIDUAL REGIONS ;;;;;
        
        ;# {Enabled} {[Startup]economymodule:Gloebit} {Enable Gloebit Money Module Globally?} {false, true} false
        ;; Set to true to enable GMM for all regions controlled by this OpenSim process.
        ;; Requires that "economymodule = Gloebit" is set in [Economy] or [Startup] section of opensim.ini
        ;; If set to false, can be enabled for individual regions - see GLBEnabledOnlyInRegions below
        Enabled = true
        
        ;# {GLBEnabledOnlyInRegions} {Enabled:false} {Enable Gloebit Money Module in specific regions by region UUID (space delimited list)?} {*} ""
        ;; If Enabled is false above, you can enable for individual regions controlled by this OpenSim process.
        ;; Set this variable to a whitespace delimited list of region UUIDs
        ;    GLBEnabledOnlyInRegions =
         
      • In opensim.ini, set economymodule = Gloebit in the [Economy] section.
        economymodule = Gloebit
    • To enable Gloebit only for specific regions running under this single OpenSim process:
      • In Gloebit.ini, set Enabled = false and GLBEnabledOnlyInRegion to a whitespace separated list of the region UUIDs for which you would like the GMM enabled.
        ;;;;;; ENABLE GLOBALLY OR FOR INDIVIDUAL REGIONS ;;;;; 
                    
        ;# {Enabled} {[Startup]economymodule:Gloebit} {Enable Gloebit Money Module Globally?} {false, true} false
        ;; Set to true to enable GMM for all regions controlled by this OpenSim process.
        ;; Requires that "economymodule = Gloebit" is set in [Economy] or [Startup] section of opensim.ini
        ;; If set to false, can be enabled for individual regions - see GLBEnabledOnlyInRegions below
        Enabled = false
        
        ;# {GLBEnabledOnlyInRegions} {Enabled:false} {Enable Gloebit Money Module in specific regions by region UUID (space delimited list)?} {*} ""
        ;; If Enabled is false above, you can enable for individual regions controlled by this OpenSim process.
        ;; Set this variable to a whitespace delimited list of region UUIDs
        GLBEnabledOnlyInRegions = 7aeedb84-90e3-4042-92ce-f93bce4f14a3 6aeedb84-90e3-4042-92ce-f93bce4f14a3
  3. Improved Robust Experience: Configure all sims to use the same database
    • If you are running multiple sim processes/servers with the GMM enabled, then we recommend you create a single Gloebit database on a server which all sim processes can access, such as on your robust server. If each sim has it's own database, then your users will have to authorize Gloebit from each sim rather than once and will receive session messaging upon entering each sim rather than once per session.
    • Use GLBSpecificConnectionString and GLBSpecificStorageProvider to define a different database for the Gloebit Tables. If not set, the GMM will use the default ConnectionString set by the DatabaseService section of your configuration.
    • You may need to configure your database to allow connections from remote servers and your firewall to allow connections on port 3306 for your sim servers. You can find instructions for this online, but this is advanced, so you should not attempt this unless you know how to secure your firewall.
    ;;;;; CONFIGURE SINGLE GLOEBIT DB FOR APP OR GRID ;;;;;;
    ;; Optional - If not configured here, Gloebit will use the DataService
    ;; ConnectionString
    ;;
    ;; Purpose - If each Sim process uses it's own database and separate
    ;; set of DB tables from each other sim, then a user will have
    ;; to authorize Gloebit form every sim process and will receive
    ;; our welcome message upon entering every Sim process each
    ;; session. However, if you configure the Gloebit system on every
    ;; sim to point to a single DB either here, or if that is your default
    ;; configuration for your sim, then your users will only have to authorize
    ;; Gloebit once for your app and will only receive our welcome message
    ;; once each session, the first time they enter a gloebit enabled region.
    ;;
    ;; Both of these settings must be configured together.  See StandaloneCommon.ini.example
    ;; for ConnectionString examples and availiable StorageProviders
    ;GLBSpecificStorageProvider = OpenSim.Data.MySQL.dll
    ;GLBSpecificConnectionString = "Data Source=localhost;Database=opensim;User ID=opensim;Password=***;Old Guids=true;"
    GLBSpecificStorageProvider = "OpenSim.Data.PGSQL.dll"
    GLBSpecificConnectionString = "Server=localhost;Database=opensim;User Id=opensim; password=***;"
  4. Optional Gloebit Configuration Options: Make additional edits to Gloebit.ini for improved, user-friendly behavior (None of these are required).
    • You can configure what IMs are sent to avatars each session start. To turn off new session messages, set the following:
      ;;;;; CONFIGURE NEW SESSION MESSAGING ;;;;;
      ;; The following determine if a user receives messaging at the start of a new session
      ;; A new session is defined as the first time a user enters a Gloebit enabled region for a Gloebit app during a viewer login
      ;# {GLBShowNewSessionPurchaseIM} {Show purchase gloebits IM to user at session start?} {false, true} false
      GLBShowNewSessionPurchaseIM = false
      ;# {GLBShowNewSessionAuthIM} {Show auth app IM to user at session start?} {false, true} true
      GLBShowNewSessionAuthIM = false
    • If you entered an "OAuth Key Alias" for your application, you can set GLBKeyAlias to this value.
      ;; GLBKeyAlias is optional and can be left out.
      ;; If included, this will be used to make some URLs more user-friendly and human-readalbe
      ;; To use, fill this with the OAuth Key Alias registered for this application on Gloebit
      GLBKeyAlias = MyAlias
    • Set GLBOwnerName and GLBOwnerEmail to the name and contact details of a manager of this OpenSim process. These are displayed with certain error messages if there is a configuration issue and user is asked to report this problem to this manager.
      ;;;;;; CONFIGURE HELPFUL ERROR CONTACT INFO FOR USER MESSAGES ;;;;;;
      ;; The following are supplied to users in error messages for certain errors for which they should
      ;; contact the person who configured this GMM and app and may need to fix something
      ;; Those messages will include a trailing instruction string formatted like:
      ;; Please contact GLBOnwerName at GLBOwnerEmail if this problem persists.
      
      ;; GLBOwnerName should be replaced with the neme of the person or avatar which manages this OpenSim process.
      GLBOwnerName = Bob Owner
      
      ;; GLBOwnerEmail should be replaced with the email address (or other contact mechanism) for the person who manages this OpenSim process.
      GLBOwnerEmail = Manager@example.com
    • Use GLBSpecificConnectionString and GLBSpecificStorageProvider to define a different database for the Gloebit Tables. If not set, the GMM will use the default ConnectionString set by the DatabaseService section of your configuration.
  5. Make the currency symbol, land sales, and buy-currency button work
    • Tell your users to update to the latest Alchemy or Firestorm viewer. We've patched the viewers to make this all work with no effort from you. Make sure your users have updated to at least the versions below.
    • If you would like to set the currency symbol to G$ across your entire grid, even on regions without the Gloebit Money Module enabled, then set Currency = "G$" in the [LoginService] section of StandaloneCommon.ini, Robust.ini, or Robust.HG.ini.
      Currency = "G$"
    • For Standalone grids, you can also get these to work somewhat easily for older viewers by pointing the economy helper-uri in the [GridInfoService] secion of your StandaloneCommon.ini at a region with Gloebit enabled (http://<IP or Domain of Grid>:<Port of Region with Gloebit enabled>). If your [CONST] section is configured in OpenSim.ini, then you can simply uncomment this to economy = ${Const|BaseURL}:9000/ and update the port if necessary. Otherwise, you can hard code this like economy = https://www.mygrid.com:9000/.