Resistance is Futile

Pulsar Project : Framework Plataforma Web

Para el desarrollo de los componentes web del proyecto se pensó en desarrollar una librería independiente de cualquier framework que permitiera de una forma fácil y sencilla la creación de los servicios a utilizar desde los objetos desde el mundo virtual, pronto encontramos varios problemas como el uso de la capa de persistencia de la librería lo que haría necesario implementar la lógica completa de esta funcionalidad o utilizar librerías de tercero que suministraran una forma rápida y fácil de hacer persistencia que aunque existen en el mercado acarrean otro problema ya que el desarrollo no solo utilizaría un framework para el desarrollo de la aplicación web de acceso al mundo virtual, si no una serie de librerías de terceros que harían el desarrollo mas pesado, por tal motivo se tomo la decisión de implementar todo bajo un mismo framework que permita el acceso via web y presente las funcionalidades necesarias desde el mundo virtual como una serie de servicios web.

Para el desarrollo de la aplicación web se habían ya identificado varios frameworks :

  • Zend Framework :
    Uno de los mas utilizados y potentes en el mercado, soporta MVC,ORM pero no templates
  • Code Igniter :
    Sencillo y fácil de manejar, soporta MVC, Templates pero no soporta creación de módulos
  • Prado :
    Desarrollo por componentes, orientado a objetos, se tiene experiencia en este framework pero actualmente se encuentra abandonado
  • Yii :
    Sucesor de Prado, soporta ORM, MVC, orientado a objetos, permite crear módulos y componentes

Finalmente se tomo la decision de trabajar con el Yii Framework que permite la creacion de modulos y componentes, como tambien el soporte de MVC, ORM entre otros.

Enlaces :


Pulsar Project : Instalando SSHFS

Se comenzó el desarrollo de las aplicaciones web en el servidor las cuales dan soporte a lo objetos creados dentro del mundo virtual, con ello surge la necesidad de poder acceder al directorio de publicación de la aplicación vía remota, se pensaron en utilizar diferentes formas para compartir directorios, entre ellas NFS y SSHFS, se tomo la decisión de utilizar este ultimo ya que permite una autenticacion transparente, la comunicación es encriptada y el servidor de desarrollo ya estaba utilizando SSH.

Instalación en el Servidor :

  • Abrir una consola en el servidor o conectarse vía SSH
  • Instalar los paquetes necesarios para utilizar SSHFS
    sudo apt-get install sshfs
  • Agregar el usuario al grupo fuse
    sudo gpasswd -a $USER fuse

Instalación en el Cliente :

  • Abrir una consola
  • Instalar los paquetes necesarios para utilizar SSHFS
    sudo apt-get install sshfs
  • Montar el directorio de la maquina remota en la local
    sshfs <usuario_remoto>@<pi servidor>:<directorio remoto> <directorio local>
  • Ejemplo :
    sshfs pulsar@192.168.1.67:/home/pulsar/public_html public_html/

Enlaces :


Pulsar Project : Preparacion Ambiente Web

Se comenzó a preparar el ambiente de desarrollo web para Pulsar Project, en este caso se tomo la decisión de utilizar el lenguaje PHP como lenguaje de programación de una librería que permite la comunicación de los componentes de los mundos virtuales con el mundo exterior. Se escogió el lenguaje de programación PHP por su soporte en los servidores que típicamente se podrían encontrar en los ambientes educativos donde se implementara la solución, así como también la poca cantidad de recursos que consume el lenguaje.

Anteriormente se instalo un servidor Ubuntu Linux con LAMP, conjunto de herramientas para el desarrollo de aplicaciones web basadas en Linux, Apache, MySQL y PHP, la tarea ahora es crear el ambiente para el desarrollo de la libreria de comunicacion en PHP, para esto se habilitara el directorio web para usuarios y la ejecucion de scripts desde el mismo :

  • Conectarse al Servidor de Desarrollo, con el usuario pulsar
  • Crear el directorio de paginas para el usuario
    mkdir public_html
  • Habilitar el modulo de directorio de usuarios
    sudo a2enmod userdir
  • Reiniciar el Apache
    sudo service apache2 restart
  • Probar que el directorio se puede acceder via web

    http://pulsarserver/~pulsar/

Actualmente y por políticas de seguridad se encuentra deshabilitado la ejecucion de scripts en PHP desde el directorio de usuario, procedemos a habilitar esa opcion :

  • Abrir el archivo de configuración de PHP5
    sudo vi /etc/apache2/mods-available/php5.conf
  • Buscar las Lineas
    <IfModule mod_userdir.c>
    <Directory /home/*/public_html>
    php_admin_value engine Off
    </Directory>
    </IfModule>
  • Comentarlas
    #<IfModule mod_userdir.c>
    #    <Directory /home/*/public_html>
    #        php_admin_value engine Off
    #    </Directory>
    #</IfModule>
  • Reiniciar el Apache
    sudo service apache2 restart

Pulsar Project : Stored Inventory

Antes conocido como Second Inventory y debido a las politicas de derechos de autor de Second Life que no permite el uso de "Second" de los productos asociados a su mundo virtual, Stored Inventory es una aplicación para la plataforma Windows que permite realizar un copia local de los elementos (texturas, scripts, prims, objetos) creados en SecondLife, OpenSim o en alguno de los mundos virtuales compatibles con estas plataformas.

Caracteristicas :

  • Permite hacer una copia local de los elementos creados en SecondLife, OpenSim
  • Soporta copia de Scripts, Notecards, Texturas, Ropas, Skins. Objetos (Prims y Primsets)
  • Sirve como herramienta de backup para almacenar datos locales los cuales pueden ser restaurados nuevamente
  • Evita la perdida de información debido al mal funcionamiento de los servidores
  • Permite copiar contenidos de un mundo virtual a otro, lo que facilita mover elementos de OpenSim a Second Life y viceversa
  • Solo permite copiar los elementos sobre los cuales se tienen todos los permisos de copia o ser el dueño del objeto
  • NO funciona como CopyBot para copiar o clonar elementos de otros usuarios sin los permisos de copia
  • NO es multiplataforma, solo funciona bajo la Plataforma Windows
  • Esta desarrollado en .NET 2.0
  • NO es gratis
  • Licencia por Computador
  • Licencia por Avatars
    36.2 $USD ($70.000 COL) la versión Multi Avatar
    17.5 $USD ($33.000 COL) la versión Único Avatar

Actualmente se cuenta con una licencia Multi Avatar la cual se adquirió hace un año y medio para realizar copias de seguridad del inventario de elementos creados en Second Life, ahora se utilizara esta aplicación para realizar copias de seguridad de los items desarrollados bajo OpenSimulator, como también exportar e importar contenidos de Second Life, permitiendo crear un inventario de herramientas igualmente disponibles en diferentes plataformas de los mundos virtuales.


Pulsar Project : Instalacion OpenSimulator 0.7 RC 2

El día de hoy tuvimos algunos problemas con la maquina host de nuestro proyecto, al momento de  ejecutar VirtualBox el teclado y mouse no respondían de tal forma que no fue posible apagar la maquina de forma correcta si no a través del temido apagar y prender, tiempo despues se trato de ejecutar la maquina virtual de nuevo deshabilitando de nuevo el teclado y el mouse, afortunadamente esta vez se pudo conectar otro teclado USB a la maquina a lo cual respondio de nuevo habilitando el mouse y el teclado, pero desafortunadamente nuestra maquina virtual sufrio algunos percances, ademas de esto se trato de actualizar el software y se trato de chequear el archivo de sistemas, donde "accidentalmente" see borro un nodo del sistema de archivos por lo cual la maquina no volvio a arrancar, debido a la premura de tiempo se tomo la decisión de utilizar una copia del servidor base y reinstalar el OpenSimulator de nuevo, esta vez se utilizara la versión 0.7 RC2 que recién salio hoy 1 de Julio de 2010 (como decía un profesor de la universidad, Pandebono Caliente).

Prerequisitos :

  • Maquina Virtual del Servidor de Desarrollo para Pulsar Project
  • Configuración NAT o Bridge para interface de red de la maquina virtual
  • Conexión a Internet

El software se instalara inicialmente en el directorio home del usuario Pulsar

Instalación :

  • Ejecutar la maquina virtual
  • Conectarse con
    usuario : pulsar
    clave : pulsar2010
  • Si se quiere realizar la instalación desde una terminal remota
    • obtener la ip del servidor
      ifconfig
    • Recuerde que con NAT solo se podra conectar desde la maquina local al servidor, no de otras maquinas de la red
    • Conectarse remotamente via ssh o putty

Instalacion del Software :

  • Instalar el software necesario para instalar OpenSimulator
    • sudo apt-get install wget
    • sudo apt-get install libmono-microsoft8.0-cil libmono-sqlite2.0-cil mono-gmcs libmono-system-web2.0-cil
  • Crear un directorio para almacenar los instaladores
    • mkdir sw
    • cd sw
  • Descargar la version 0.7 RC1 desde el servidor de OpenSimulator
    • wget http://dist.opensimulator.org/opensim-0.7-rc2-bin.tar.gz
      Esto descarga un archivo de 24 MB
    • Descomprimir el software
      tar -zxvf opensim-0.7-rc2-bin.tar.gz
  • Configurar el servidor
    • cd opensim-0.7-rc2-bin/bin
    • cp OpenSim.ini.example OpenSim.ini
    • cp config-include/StandaloneCommon.ini.example config-include/StandaloneCommon.ini
  • Ejecutar el servidor :
    • ./OpenSim.exe
  • Configuración Inicial
    • OpenSimulator comienza a cargar módulos y luego nos pregunta por las características de la región :
      New region name []: Pulsar Region<ENTER>
      Region UUID [862dd817-93a0-40e6-832c-682d6833c803]:<ENTER>
      Region Location [1000,1000]:<ENTER>
      Internal IP address [0.0.0.0]:<ENTER>
      Internal port [9000]:<ENTER>
      Allow alternate ports [False]:<ENTER>
      External host name [SYSTEMIP]:<ENTER>
    • Luego nos pide la información del estado :
      Your region is not part of an estate.
      Do you wish to join an existing estate? [no]:<ENTER>
      New estate name [My Estate]: Pulsar Estate<ENTER>
    • Luego nos solicita el nombre del dueño de la region :
      The current estate has no owner set.
      Estate owner first name [Test]: Master<ENTER>
      Estate owner last name [User]: Pulsar<ENTER>
      Passwordpulsar2010<ENTER>
      Email []: pulsar@pulsarserver<ENTER>
    • Finalmente quedamos en el Menu de Region :
      Region (Pulsar Region) #

Con esto ya tenemos nuestro servidor de OpenSimulator listo para ser visitado por el dueño de la región.


Page 3 of 8812345102030...Last »
Powered by WordPress | Designed by Elegant Themes