¿Se puede hacer una aplicación donde no sea necesario registrar previamente el dispositivo en el servidor con el XOneManager?

SI, se puede hacer un servidor de réplica con autoregistro.


Este Autoregistro podría ser empresarial, de forma que el dispositivo cuando se descarga el XOneLive específico para autoregistro, chequearía si ya tiene licencia asociada, en caso de no tenerla, se redirige al usuario a una web para que se autentifique contra una tabla de usuarios-contraseña, LDAP, Web Service, etc.
Esta página dará de alta la licencia automáticamente para ese dispositivo y comenzará la descarga de los componentes de la aplicación.

El autoregistro, si bien es un proceso que lleva un tiempo en la plataforma, no es muy conocido por los programadores. Consiste en evitar que haya que registrar previamente los dispositivos que van a formar parte de un proyecto con el XOneManager.

El dispositivo cuando se descarga el XOneLive específico para autoregistro, chequearía si ya tiene licencia asociada y en caso de no tenerla, se redirige al usuario a una web para que se autentifique, contra una tabla de usuarios, LDAP, Web Service, etc.
Esta página dará de alta la licencia automáticamente para ese dispositivo y comenzará la descarga de los componentes de la aplicación.

CONFIGURACIÓN EN EL DISPOSITIVO MÓVIL



Se generará un XOneLive donde se configurará:
- La dirección de la página de autoregistro.
- El número de licencia a nivel de base de datos.
Si no dispone de estos datos, un XOneLive por defecto no llamará a una página de autoregistro, y deberá estar dado de alta en el XOneManager el dispositivo para que pueda descargarse todo lo necesario.



CONFIGURACIÓN DEL SERVIDOR




En la base de datos XOneManager en la tabla adm_databases se realizarán los siguientes cambios:

 Crear el campo AUTOREGISTER en caso de que no exista, de tipo numérico, que tendrá los siguientes valores:

  • VALOR 0: licencia de base de datos que no tiene Autoregistro.
  • VALOR 1: licencia de base de datos que tiene Autoregistro.

 En caso de que ya esté creado el campo se pondrá con valor 1 para activar esta funcionalidad.

Se publicará la página web de Autoregistro en el IIS y se configurarán los siguientes datos en el archivo web.config.
Datos
RplNumeroLic: número de licencia a nivel de base de datos donde se quiera hacer Autoregistro.
RplServerlic: número de licencia del servidor.
RplServerAddr: dirección donde está instalado el servidor de réplica.
RplServerPort: puerto de réplica.
Se configurarán las siguientes conexiones a las base de datos:
- Conexión a la base de datos de XOneManager.
- Conexión a la base de datos de la Aplicación.



<?xml version="1.0"?>
<configuration>  
<appSettings>
  <add key="RplNumeroLic" value="00000XXX"/>
  <add key="RplServerLic" value="cad3ac31a62340e1b82b61b2256acd1c"/>
  <add key="RplServerAddr" value="101.101.101.4"/>
  <add key="RplServerPort" value="7757"/>
</appSettings>
<connectionStrings>
  <add name="XoneConnectionString" connectionString="Data Source=servidor;Initial Cata-log=xonemanager;User ID=user;Password=clave" providerName="System.Data.SqlClient" />
  <add name="xonemanagerCnnStr" connectionString="Data Source=servidor;Initial Cata-log=xonemanager;User ID=user;Password=clave" providerName="System.Data.SqlClient" />
  <add name="00000XXX" connectionString="server=SERVIDOR;User Id=user;password=clave;Persist Security Info=True;database=basedatos" provider-Name="MySql.Data.MySqlClient" />
</connectionStrings>
<system.web>
  <authentication  mode="None"/>
</system.web>
<system.webServer>
   <modules runAllManagedModulesForAllRequests="true"/>
</system.webServer>
</configuration>




PROCESO DE AUTOREGISTRO



Una vez que se han configurado el servidor y el XOneLive, se procede a explicar el proceso de autoregistro
Se realiza la instalación del sistema de actualizaciones, el XOneLiveo del Framework, según la plataforma que se está instalando.
Una vez instalado el XOneLive, se realizará la descarga del Framework y los demás módulos que se hayan configurado en el mismo, aunque esto dependerá de la Plataforma utilizada o de la configuración del mismo.
Una vez instalado lo anterior, al ejecutarse la primera vez el XOneLive, detectará que es un XOneLive que tiene activo el módulo de Autoregistro.
Por ello, al ejecutarse, preguntará al sistema si ya tiene una licencia, y como es la primera vez, detectará que no es así, por lo que llamará a la página de Autoregistro que tiene configurada.
Cuando realiza la llamada, le envía ciertos datos necesarios, como la Base de Datos de Autoregistro, el Identificador del dispositivo, la Plataforma del mismo o el modelo.
La página de Autoregistro por defecto está configurada par a que se comunique con la tabla gen_usuarios de la aplicación en concreto, de tal forma que se autentifica en el sistema contra el usuario y contraseña que tiene esa tabla.



Como se ha indicado, esto es por defecto, pero la página WEB se puede programar para realizar la autentificación contra otros sistemas, como pueden ser:
Autentificación integrado contra un WebService.
Autentificación integrado contra un LDAP.
Autentificación integrado contra otra base de datos o schema diferente al puesto por defecto.



Tenemos que tener en cuenta que las licencias se relacionan mediante una relación Usuario—Licencia, y a partir de esa relación, se hace la selectividad. Por ello, si se modifica la página de Autoregistro, sería necesario realizar esa relación en la página.


Una vez que el proceso de autentificación en el sistema por el usuario con el dispositivo que sea, la página de Autoregistro, realiza las siguientes acciones
Insertar registro en la tabla adm_devices con los datos del dispositivo.
Genera la licencia del dispositivo, creando un nuevo registro en la tabla master_replica_slave.
Insertar registro en la tabla adm_devices_application, relacionado la tabla adm_device, con la master_replica_slave y esta misma.
Insertar relación usuario-licencia en la tabla Adm_dinamyc_selected.
Generar la selectividad para la licencia dada de alta.