Cómo colaborar con el proyecto

Para colaborar con Predesys, una buena aportación puede ser la creación de algún servicio de Predesys.

Un servicio de Predesys no es más que un script de Python que debe implementar una función con unos parámetros de entrada y tipo de salida concretos. Esta función varía en función del tipo de servicio que quiera implementar (ver sección Arquitectura). Veamos cómo tiene que ser esta función en cada caso:

  • Para servicios automáticos y servicios de usuario sin autentificación:

    def run(args)

    Donde args es una lista (de cadenas de texto) de las direcciones MAC detectadas.

  • Para servicios de usuario con autentificación:

    def run(userId, args)

    Donde userId es el usuario que ha solicitado ejecutar el servicio (una cadena de texto) y args es una lista de (de cadenas de texto) las direcciones MAC detectadas

Todos los servicios tienen acceso a la API de Servicios de Predesys (un módulo de Python), que ofrece un acceso limitado al Núcleo del Servidor. Con esta API, se pueden obtener los usuarios registrados en el sistema, formatear un mensaje para que se envíe por bluetooth a alguno de los dispositivos detectados (si se tratan de dispositivos bluetooth detectados por el Radar Bluetooth), obtener las direcciones MAC que están registradas en el sistema… De momento, la API de Servicios ofrece muy poca funcionalidad, pero se le irán añadiendo nuevas características en el futuro.

Una vez terminado el servicio, para añadirlo al Servidor hay que ejecutar como administrador la siguiente orden:

  • “predesys-server services add -id <id-servicio> -v <versión> -tid <id-tipo-servicio> -a <autentificado> -e <habilitado> -p <ruta-script> -n <nombre-servicio> -au <autor>”

    Donde:

    -a -> 0 = Servicio sin autentificación del usuario, 1 = servicio con autentificación del usuario
    -e -> 0 = Servicio deshabilitado inicialmente, 1 = servicio habilitado inicialmente
    -v, -n, -au -> Opcionales

  • O bien, podemos ejecutar esta otra orden (también como administrador) e ir dando valores a las mismas propiedades según nos lo vaya pidiendo la interfaz de usuario de terminal:

    “predesys-server services add”

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: