OpenSim: installiamo una grid. Parte Seconda: sito web e gruppi

L'accesso wifi alla nostra grid

Come vi avevo promesso nel mio primo articolo http://virtualworldsmagazine.wordpress.com/2011/07/15/opensim-nuove-istruzioni-per-esperti-come-configurare-una-grid-0-7-1-1/ ora proviamo ad arricchire la nostra grid “nuda” con due caratteristiche secondo me essenziali per una grid ma che NON sono parte essenziali della installazione di base di OpenSim:

  • L’interfaccia web (anche detta wifi) “Web Interface for… I”, sviluppata da Diva Canto, che consente di fare le seguenti attività:
  • Creazione di utenti, controllati dall’amministratore
  • Possibilità di definire degli avatar di default per i nuovi account
  • Consente l’aggiornamento degli account sia agli utenti che all’amministratore
  • Consente la cancellazione di utenti
  • Consente il recupero della password via email
  • Consente un accesso limitato all’inventory dell’utente
  • Definisce una pagina web di benvenuto
  • La gestione dei gruppi (ottenuta usando un componente che si chiama XmlRpcGroup), che consente una elementare gestione dei gruppi e dei messaggi offline.
  • Vedremo in questo articolo le operazioni necessarie per installare questi due “add-on”.

    1. Parte Prima: installiamo Wifi.

    (101) Dobbiamo andare a questo link dal sito di Diva Canto: https://github.com/diva/d2/downloads e scarichiamo (102) lo zip corrispondente all’ultima versione di wifi 0.7.1.1. (103) Lo spacchettiamo e (104) sovrascriviamo (dopo averne fatto un opportuno backup i file ivi contenuti nel direttorio OpenSim dove avevamo spacchettato la versione di OpenSim della grid di cui all’articolo precedente.
    Wifi contiene le seguenti cartelle:
    • bin con alcune dll specifiche di wifi
    • doc con documentazione di wifi
    • wifipages con le pagine di gestione html
    Occorre a questo punto configurare (105)  Robust.ini in modo da lanciare anche il modulo wifi:
    [Startup]
    ServiceConnectors = "
    8003/OpenSim.Server.Handlers.dll:AssetServiceConnector,
    8003/OpenSim.Server.Handlers.dll:XInventoryInConnector,
    8004/OpenSim.Server.Handlers.dll:FreeswitchServerConnector,
    8003/OpenSim.Server.Handlers.dll:GridServiceConnector,
    8002/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:GridUserServiceConnector,
    8003/OpenSim.Server.Handlers.dll:FriendsServiceConnector,
    8002/Diva.Wifi.dll:WifiServerConnector"
    Ricopiate una nuova sezione (106) [WifiService] in Robust.ini ricopiandola da Wifi.ini.example, ricordate di modificare localhost con il vostro ip:
    [WifiService]
        GridName = "My World"
        LoginURL = "http://<il tuo ip>:8002"
        WebAddress = "http://<il tuo ip>:8002"
        ....

    A questo punto dovete rilanciare (107)  il servizio Robust ed essere in grado di lanciare wifi (108) accedendo a http://<iltuoip>:8002/wifi Al primo lancio dovete (109) cliccare su “INSTALL WIFI” in alto a dx della maschera dopo di che dovete inserire la pwd dell’amministratore per poter avere un avatar di gestione. (110) Create gli avatar “template” da amministratore chiamandoli “Male Avatar” “Female Avatar” “Neutral Avatar” in modo da offrire a chi entra degli inventory e delle apparenze già precostituite. E ok, avete installato wifi….

    2. Installazione dei gruppi

    La struttura dei gruppi con XmlRpc

    Per installare i gruppi dovete scaricarvi invece il seguente tar.gz da questo sito (201):

    https://github.com/mcortez/flotsam/tarball/master rinominate il file scaricato (se già non lo ha in modo da terminare con .tar.gz), (202) spacchettatelo.

    (203) E ricopiate nel server la cartella “mcortez-flotsam-963d99eflotsamServersXmlRpcGroupsServer” dentro la root del vostro server http (su ubuntu sotto /var/www) chiamandola ad esempio (204) “groups” accertatevi di modificare le permissions (204a)  chmod o il proprietario chown in modo che il server apache sia in grado di leggere e scrivere questi file.

    Create un database per gestire i gruppi e i messaggi offline:

    con la tecnica suggerita dall’articolo precedente, andate in (205) http://<vostroip>/phpmyadmin, specificate la pwd di root del db mysql e su privilegi (206) create un utente opensim_group con pwd opensim_group e creategli il db corrispondente.

    A questo punto dovete modificare due file:

    il file sotto /var/www/groups/config.php.example (copiatelo come config.php) in modo da essere (207):

    <?php
        $dbName = "opensim_group";
        $dbHost = "localhost";
        $dbPort = 3306;
        $dbUser = "opensim_group";
        $dbPassword ="opensim_group";
    
        // Set to 0 for no debugging, 1 for essential debugging, 2 for more information.
        $debugXMLRPC = 2;
        $debugXMLRPCFile = "xmlrpc.log";
    
            //////////////////////////////
            //// Group security
            /////////////////////
    
            // A xmlrpc client must have this key to commit changes to the Groups DB
            // Leave blank to allow all clients to make changes.
            $groupWriteKey = '1234';
            $groupReadKey  = '1234';

    Dove sostituite l’eventuale (208) database nome utente e password se per caso non avete usato questi… (209) E se volete anche le chiavi di accesso sostituendo il PIN ovvio 1234.

    Poi proseguite modificando il vostro file OpenSim.ini cancellando la impostazione vecchia della stanza [Groups] e mettendo invece la seguente (210):

    [Groups]
        ;# {Enabled} {} {Enable groups?} {true false} false
        ;; Enables the groups module
        Enabled = true
    
        ;# {Module} {Enabled:true} {Groups module to use? (Use GroupsModule to use Flotsam/Simian)} {} Default
        ;; This is the current groups stub in Region.CoreModules.Avatar.Groups.
        ;; All the other settings below only really apply to the Flotsam/SimianGrid
        ;; GroupsModule.
        ;; This module can use a PHP XmlRpc server from the Flotsam project at
        ;; http://code.google.com/p/flotsam/
        ;; or from the SimianGrid project at http://code.google.com/p/openmetaverse
        Module = GroupsModule
    
        ;# {MessagingEnabled} {Module:GroupsModule} {Is groups messaging enabled?} {true false} true
        ;MessagingEnabled = true
    
        ;# {MessagingModule} {MessagingEnabled:true} {Module to use for groups messaging} {GroupsMessagingModule} GroupsMessagingModule
        MessagingModule = GroupsMessagingModule
    
        ;# {ServicesConnectorModule} {Module:GroupsModule} {Service connector to use for groups} {XmlRpcGroupsServicesConnector SimianGroupsServicesConnector} XmlRpcGroupsServicesConnector
        ;; Service connectors to the Groups Service as used in the GroupsModule.  Select one depending on
        ;; whether you're using a Flotsam XmlRpc backend or a SimianGrid backend
        ServicesConnectorModule = XmlRpcGroupsServicesConnector
    
        ;# {GroupsServerURI} {Module:GroupsModule} {Groups Server URI} {}
        ;; URI for the groups services
        ;; e.g.  for Flotsam XmlRpc
        ;; or  for SimianGrid
        GroupsServerURI = "http://localhost/groups/xmlrpc.php"
    
        ;# {NoticesEnabled} {Module:GroupsModule} {Enable group notices?} {true false} true
        ;; Enable Group Notices
        ; NoticesEnabled = true
    
        ;; This makes the Groups modules very chatty on the console.
        DebugEnabled = true
    
        ;; XmlRpc Security settings.  These must match those set on your backend
        ;; groups service if the service is using these keys
        XmlRpcServiceReadKey    = 1234
        XmlRpcServiceWriteKey   = 1234

    Attenzione a inserire esattamente questa configurazione: io ho perso un sacco di tempo cercando di modificare la versione di base di OpenSim.ini.

    Ora potete rilanciare il vostro OpenSim.exe ed entrando inworld avrete i vostri bravi gruppi funzionanti.

    Cosa c’è dopo?

    Come promesso, nel prossimo articolo illustreremo come configurare l’ultimo elemento per dare professionalità alla vostra grid: il voce. Ricordate che una grid si può installare in infiniti modi, usando differenti add-on, noi abbiamo usato quelli suggeriti dal sito opensim.org, in particolare seguendo le guide in inglese a queste pagine:

    http://opensimulator.org/wiki/Wifi

    http://opensimulator.org/wiki/Enabling_Groups

    Ma amministratori esperti possono caricare degli add-on integrati con i principali sistemi di gestione di contenuti CMS come ad esempio JOOMLA, XOOPS, MOODLE.

    Non vi spiego come configurare i moduli per questi CMS, per questo ci sono amministratori esperti.

    Vi aspettiamo alla prossima puntata dove installeremo FreeSwitch…

     

    Salahzar

    One thought on “OpenSim: installiamo una grid. Parte Seconda: sito web e gruppi

    1. Sabrina ha detto:

      Salve, innanzitutto vorrei ringraziare per questa preziosa guida in italiano. Ho messo su una grid con diva standalone hypergrid sul mio pc (con windows), perciò ha già le pagine wifi. Vorrei ora abilitare i groups ma non so in che cartella devo mettere XmlRpcGroupsServer. Nella guida infatti purtroppo è specificato solo il percorso per ubuntu. Potresti dirmi dove dovrei metterla in windows? Un’altro dubbio è nel modificare il file opensim.ini nel punto GroupsServerURI = “http://localhost/groups/xmlrpc.php” con windows 7, forse dovrei mettere GroupsServerURI = “http://127.0.0.1/groups/xmlrpc.php”
      Grazie

    Rispondi

    Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.