X-Git-Url: https://git.llucax.com/z.facultad/75.42/plaqui.git/blobdiff_plain/d46988670a776e174147fc0cce35652383177785..9075115540d133ca048025e719884121007b9e87:/Server/include/plaqui/server/documentacion.h?ds=inline
diff --git a/Server/include/plaqui/server/documentacion.h b/Server/include/plaqui/server/documentacion.h
index ddf5a02..06a78ba 100644
--- a/Server/include/plaqui/server/documentacion.h
+++ b/Server/include/plaqui/server/documentacion.h
@@ -3,7 +3,7 @@
\section page_server_general Descripción General
El servidor está dividido en 2 módulos que provean 2 servicios diferentes.
- \subsection page_server_general_control Módulo de Control.
+ \subsection page_server_general_control Módulo de Control
El módulo de control se basa en el protocolo TCP y se encarga de listar
los archivos de planta disponibles en el servidor, permitiendo cambiar
las propiedades de cada uno y conocer su estado en términos generales
@@ -23,7 +23,7 @@
Este módulo está implementado por las clases PlaQui::Server::ControlServer
y PlaQui::Server::ControlClient.
- \subsection page_server_general_transmision Módulo de Transmisión.
+ \subsection page_server_general_transmision Módulo de Transmisión
Este módulo se encarga de transmitir la simulación en tiempo real por UDP
(como si fuera un video). Comienza luego de que el módulo de control recibe
una petición de transmisión y continúa transmitiendo (en un principio)
@@ -43,7 +43,7 @@
PlaQui::Server::Receiver.
-\section page_server_protocolo Comandos del Módulo de Control.
+\section page_server_protocolo Comandos del Módulo de Control
Todos los comandos son rutas de archivos. En un principio no se van a utilizar
los query string de los datos pasados por GET ni datos adicionales
recibidos por POST. Es decir, de un request HTTP solo se usara la ruta
@@ -72,14 +72,14 @@
- transmission: Comandos para las transmisiones.
- plant: Comandos para las plantas.
- \subsection page_server_protocolo_general Comandos para el Servidor.
+ \subsection page_server_protocolo_general Comandos para el Servidor
Los comandos para el servidor, como se vio previamente, comienzan con
/server/ seguido de alguna de las siguientes opciones:
Comando | Descripción | Respuesta |
- status |
- Obtiene estado general del servidor. |
+ info |
+ Obtiene información sobre el servidor. |
Cantidad de plantas, conexiones, transmisiones, versión,
uptime, etc. |
@@ -90,7 +90,7 @@
- \subsection page_server_protocolo_control Comandos para una Conexión de Control.
+ \subsection page_server_protocolo_control Comandos para una Conexión de Control
Todos los comandos de transmisiones comienzan con /connection/
y continúan con alguna de las siguientes opciones:
@@ -107,9 +107,9 @@
Nada. |
- \note Los nombres entre [ y ] denotan un argumento.
+ \note Los nombres entre [ y ] representan un argumento.
- \subsection page_server_protocolo_transmision Comandos para una Transmisión.
+ \subsection page_server_protocolo_transmision Comandos para una Transmisión
Todos los comandos de transmisiones comienzan con /transmission/
y continúan con alguna de las siguientes opciones:
@@ -121,8 +121,8 @@
etc).
- start/[plant]/[host]/[port] |
- Comienza la transmisión de la planta [plant] al [host]
+ | start/[pl]/[host]/[port] |
+ Comienza la transmisión de la planta [pl] al [host]
en el puerto [port]. |
Nada. |
@@ -133,9 +133,9 @@
Nada. |
- \note Los nombres entre [ y ] denotan un argumento.
+ \note Los nombres entre [ y ] representan un argumento.
- \subsection page_server_protocolo_planta Comandos para una Planta.
+ \subsection page_server_protocolo_planta Comandos para una Planta
Todos los comandos de plantas comienzan con /plant/ y continúan con
alguna de las siguientes opciones:
@@ -147,34 +147,92 @@
corriendo o no, uptime, cantidad de elementos,etc).
- get/[planta] |
- Obtiene la planta de nombre [planta]. |
+ get/[pl] |
+ Obtiene la planta de nombre [pl]. |
El mismo archivo que se crea en el Constructor. |
- stop/[planta] |
- Finaliza la simulación de la planta de nombre . |
+ set/[pl]/[el]/[pr]/[val] |
+ Cambia la propiedad [pr] del elemento [el], asignándole
+ el valor [val] a planta de nombre [pl]. |
Nada. |
- set/[planta]/[elem]/[prop]/[val] |
- Cambia la propiedad [prop] del elemento [elem], asignándole
- el valor [val] a planta de nombre [planta]. |
+ set_frequency/[pl]/[hz] |
+ Cambia la frecuencia de refresco de la simulación de la
+ planta de nombre [pl] a [hz] veces por segundo. Si [hz]
+ es cero ("0"), se usa la frecuencia de refresco por
+ omisión del servidor. |
+ Nada. |
+
+
+ start/[pl] |
+ Reanuda (o comienza) la simulación de la planta de nombre
+ [pl]. |
+ Nada. |
+
+
+ stop/[pl] |
+ Pausa la simulación de la planta de nombre
+ [pl]. |
+ Nada. |
+
+
+ remove/[pl] |
+ Finaliza la simulación de la planta de nombre
+ [pl] eliminandola del servidor. |
Nada. |
- \note Los nombres entre [ y ] denotan un argumento.
+ \note Los nombres entre [ y ] representan un argumento.
+
+\section page_server_uso Modo de uso
+ \subsection page_server_uso_inicio Inicio del servidor
+ Para iniciar el servidor es necesario disponer de un archivo XML de
+ planta (por ejemplo, generado por el Constructor).
-\section page_server_uso Modo de uso.
- Para utilizar el servidor es necesario disponer de un archivo XML de planta
- (por ejemplo, generado por el Constructor).
+ Invocación del servidor:
+ \verbatim ./plaqui-server [archivo] [puerto] \endverbatim
- Invocación del servidor:
- \verbatim ./plaqui-server [planta.xml] [puerto] \endverbatim
+ Ambos argumentos son opcionales. El primero, [archivo], es la
+ ubicación del archivo con la descripción de la planta a simular (por omisión
+ planta.xml). El segundo, [puerto], es el puerto en el cual
+ se van a atender las peticiones al servidor (por omisión 7522).
- Ambos argumentos son opcionales. El primero, [planta.xml], es la
- ubicación del archivo con la descripción de la planta a simular (por omisión
- prueba.xml). El segundo, [puerto], es el puerto en el cual
- se van a atender las peticiones al servidor (por omisión 7522).
+ \subsection page_server_uso_estado Estado del servidor
+ Mientras el servidor se ejecuta, va imprimiendo en la salida estándar su
+ estado. Se imprime cada vez que llega una conexión entrante y cada vez que
+ se detecta un error.
+
+ Otro tipo de información del estado del servidor puede ser obtenida desde
+ el cliente a través del comando /server/info (ver
+ \ref page_server_protocolo_general).
+
+ \note Los errores se imprimen en la salida de error, no en la salida
+ estándar.
+
+ \subsection page_server_uso_fin Finalización del servidor
+ Hay varias formas de finalizar el servidor:
+ - Enviando una señal de interrupción (SIGINT), por ejemplo,
+ presionando la combinación de teclas CTRL-C.
+ - Enviando una señal de salida (SIGQUIT) o de terminación
+ (SIGTERM), por ejemplo, a través del comando
+ kill(1).
+ - Enviando un comando /server/stop desde un cliente (ver
+ \ref page_server_protocolo_general).
+
+ Cualquiera de estos métodos es válido y finaliza el servidor de forma
+ correcta.
+
+*/
+
+/** \namespace PlaQui::Server
+
+Infrastructura cliente-servidor para PlaQui.
+
+Bajo este espacio de nombres (namespace) se encuentran todas las clases para la
+comunicación cliente-servidor de PlaQui. Esto no incluye la interfaz gráfica del
+cliente.
*/
+