FuncionalidadesV1Texto - Jusaba/Domo-Serverpic GitHub Wiki

Comandos Genericos del Servidor

firmwares usuarios servidores broadcast avisodesconexion

  • firmwares

    Lista los firmwares registrados para cada uno de los dispositivos

  • usuarios

    El Servidor devuelve un listado con todos los dispositivos conectados a el. El formato de la información es el siguiente:

      	cliente-:-servidor-:-fecha-:-UC-:-VF -:-UV-:-AD-:-TD
    
      	cliente.- Nombre del usuario
      	servidor.- Servidor dobnde está conectado este cliente 
      	fecha.- Fecha y hora a la que se proporciona la informacion
      	UC.- Ultimo comando tramitado por el cliente
      	VF.- Número de versión de firmware del cliente
      	UV.- Ultimo valor enviado/recibido por/del cliente
      	AD.- Nombre del cliente push/telegram al que notificar el aviso desconexión
      	TD.- Tipo de dispositivo para HomeKit
    
  • servidores

    El Servidor devuelve un listado con los servidores conectados al ‘mundo’ al que pertenece el usuario que lo solicita. El formato de la información es el siguiente:

      	servidor-:-IP-:CC -:-fecha-:-VF
    
      	servidor.- Nombre del servidor
      	IP.- Dirección IP del servidor
      	CC.- Número de clientes conectados a ese servidor
      	fecha.- Fecha y hora a la que se proporciona la informacion
      	VF.- Versión de firmware del servidor 
    
  • broadcast

    broadcast-:

    Manda a todos os usuarios conectados al servidor el texto

  • info

    Manda un broadcast con el texto #Info Los dispositivos conectados al servidor, responden al comando #Info proporcionando información del dispositivo La información que transmite el dispositivo se detalla en la librería Serverpic

  • avisodesconexion

    Habilita a un dispositivo para enviar avisos push o telegram de desconexion/conexión del dispotivo Cuando el dispositivo está habilitado, el servidor mandará un aviso Push/Telegram cuando se desconecte o reconecte al 'mundo' que pertenece

      	avisodesconexion-:-<Dispositivo>-:-<on/off>-:-<CP/CT>
    
      	Dispositivo.- Nombre del cliente al que se le desea implementar el servicio
      	On/off.- Habilita/deshabilita el servicio para este cliente
      	CP/CT.-	Cliente Push/Telegram al que notificar la conexión/desconexion 
    
### Comandos Genericos del Cliente<a name="id2"></a>
Relación de comandos genéricos para  los usuarios/dispositivos
Los dispositivos, cuando se conectan se comportan como un usuario más del sistema por lo que, cuando en estos 
comandos nos referimos a usuarios, lo hacemos de forma genérica, entre los usuarios se encuentran los dispositivos.

![mensaje](Imagenes/Funcionalidades/mensaje.png)
![latido](Imagenes/Funcionalidades/latido.png)
![exit](Imagenes/Funcionalidades/exit.png)
![buzon](Imagenes/Funcionalidades/buzon.png)
![nombre](Imagenes/Funcionalidades/nombre.png)

  • mensaje

    mensaje-:--:-

    Manda al usuario 'Usuario' el texto 'Texto Mnesaje'

      Usuario Julian manda      mensaje-:-Pepe-:-Hola
      Usuario Pepe recibe       Julian-:-Hola
    
  • Latido

    El Servidor devuelve Ok al dispositivo que le manda el texto Latido Sirve m para mantener la conexión con el servidor pues, tras 4 minutos sin actividad de un dispositivo, el servidor cierra el socket y lo elimina de la lista activa Existe la opcion de enviar

      Latido-:-<Version firmware>
    

    El servidor memorizará la versión de firmware 'Version firmware' para ese dispositivo

  • exit

    El servidor cierra el socket del cliente que lo envia y lo elimina de la lista de usuarios activos

  • buzon

    El servidor remite al dispositivo que lo solicita el ultimo mensaje que se le envio cuando estaba desconectado

  • nombre

    Devuelve el nombre del servidor al que esta conectado el dispositivo

### Listas<a name="id3"></a>
Las listas se utilizan para agrupar varios clientes/dispositivos como un solo dispositivo
A un grupo de dispositivos se le asigna un nombre de lista de forma que cualquier comando mandado a la lista
se envia a todos los componentes de la misma


  • lista

    Crea lista de broadcast de dispositivos

    	Opciones:
    
      	lista-:-anadir-:-<Nombre Lista>-:-<Nombre Usuario> .- Añade un usuario a la lista
      	lista-:-eliminar-:-<Nombre Lista>-:-<Nombre Usuario> .- Borra un usuario de la lista
      	lista-:-info .- Devuleve relación de listas creadas
      	lista-:-eliminar-:-<Nombre Lista> .- Elimina una lista
    

### Push<a name="id4"></a>
Comandos para el servicio de alertas Push.
Para utilizar este servicio es necesario tener una cuanta Pushover, más información en la  [web oficial de Pushover](https://pushover.net/)

![push](Imagenes/Funcionalidades/push.png)
![createpush](Imagenes/Funcionalidades/createpush.png)
![sendpush](Imagenes/Funcionalidades/sendpush.png)
![delpush](Imagenes/Funcionalidades/delpush.png)
![pushall](Imagenes/Funcionalidades/pushall.png)

  • push

    Manda un pushover

      	push-:-<Token>-:-<KEY>-:-<Dispositivo>-:-<Titulo>-:-<Mensaje>-:-<Sonido>
            
    	Este comando utiliza la aplicación Pushover para mandar mensajes emergentes
    	a teléfonos, tablets, ....
      
      		Token.-	Parametro proporcionado por Pushover en la suscripción
      		KEY.- Parametro proporcionado por Pushover al crear una aplicación
      		Dispositivo.- Nombre del dispositivo registrado en Pusover al que se quiere enviar la     				notificación
      		Titulo.- Titulo de la notificación
      		Mensaje.- Cuerpo del mensaje de la notificación
      		Sonido.- Sonido del aviso cuando se reciba en un dispositivo ( lista de sonidos en 				 Pushover)
    
  • createpush

    Crea un cliente push en el servidor

      	createpush-:-<Nombre cliente>-:-<Token>-:-<KEY>-:-<Dispositivo>-:-<Sonido>
    
      Nombre cliente.- Nombre que se le quiere asignar en el servidor al cliente push
      Token.-	Parametro proporcionado por Pushover en la suscripción
      KEY.- Parametro proporcionado por Pushover al crear una aplicación
      Dispositivo.- Nombre del dispositivo registrado en Pusover al que se quiere enviar la notificación
      Sonido.- Sonido del aviso cuando se reciba en un dispositivo ( lista de sonidos en Pushover)
    
  • sendpush

    Manda una alerta push a un cliente registrado en el servidor

      	sendpush-:-<Nombre cliente>-:-<Titulo>-:-<Cuerpo Mensaje>
    
      Nombre cliente.- Nombre del cliete push registrado en el servidor
      Titulo.- Titulo de la notificación
      Mensaje.- Cuerpo del mensaje de la notificación
    
  • delpush

    Borra un cliente push del servidor

      delpush-:-<Nombre cliente>
    

    Nombre cliente.- Nombre del cliente push registrado en el servidor que se desea borrar

  • pushall

    Lista todos los clientes push creados en el servidor

### Variables<a name="id5"></a>

Los dispositivos tienen la posibilidad de almacenar datos en variables en el servidor
Cada dispositivo tiene sus variables, aunque dos dispositivos usen el mismo nombre para una variable
estas son exclusivas para cada dispositivo, como ejemplo, los dispositivos tienen la posibilidad de guardar
estadisticas de funcionamiento en unas variables cuyos nombres se repiten en cada dispositivo pero los
datos son propios de cada dispositivo

![save](Imagenes/Funcionalidades/save.png)
![load](Imagenes/Funcionalidades/load.png)
![delete](Imagenes/Funcionalidades/delete.png)
![show](Imagenes/Funcionalidades/show.png)


  • save

    Guarda una variable en el servidor para el uso del dispositivo

      	save-:-<Nombre Variable>-:-<Valor>
    
      		Nombre Variable.- Nombre de la variable que se desea crear/actualizar
      		Valor.- Valos que se le asigna a la variable
    
      Ejemplo:
    
      	save-:-temperatura-:-22
      
     Para el usuario que lo manda, el servidor crea una variable llamada
     temperatura y le asigna el valor 22
    
  • load

    Recupera una variable almacenada en el servidor

      load-:-<Nombre Variable>
    
      		Nombre Variable.- Nombre de la variable que se desea crear/actualizar
    
      Ejemplo:
    
      	load-:-temepratura
    

    El servidor recupera el contenido de temperatura almacenada para este dispositivo y se lo envia

  • delete

    Borra una variable creada por el dispositivo

      delete:-<Nombre Variable>
    
      		Nombre Variable.- Nombre de la variable que se desea crear/actualizar
    
    
      Ejemplo:
    
      	delete-:-temperatura
    
  • show

    El servidor devuelve un listado con todas las variables almacenadas para este usuario

Para poder gestionar las variables de un dispositivo desde un cliente terminal se crean los siguentes comandos

![delete_r](Imagenes/Funcionalidades/delete_r.png)
![deleteall_r](Imagenes/Funcionalidades/deleteall_r.png)

  • delete

    Borra una variable de un dispositivo

      delete-:-<Dispositivo>-:-<Nombre variable>
    
      	Dispositivo.- Nombre del dispositivo del que se quiere borrar la variable
      	Nombre Variable.- Nombre de la variable que se desea borrar
    
  • deleteall

    Borra todas las variables de un dispositivo

      deleteall-:-<Dispositivo>
    
      	Dispositivo.- Nombre del dispositivo del que se quieren borrar todas las variable
    
  • show

    Visualiza todas las variables de un dispositivo

      show-:-<Dispositivo>
    
      	Dispositivo.- Nombre del dispositivo del que se quiere visualizar las variables
    
  • showall

    Visualiza todas las variables de todos los dispositivos

⚠️ **GitHub.com Fallback** ⚠️