+----------------------------+
- | PROPUESTA DE SERVIDOR v0.2 |
+ | PROPUESTA DE SERVIDOR v0.4 |
+----------------------------+
$Id$
video en tiempo real).
-Lista de comandos disponibles para el módulo de control:
-========================================================
+Descripción de los comandos para el 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 pasados
status | Obtiene estado general | Cantidad de plantas, conexiones,
| del servidor. | transmisiones, versión, uptime, etc.
---------+------------------------+---------------------------------------------
+stop | Detiene el servidor. | Nada.
Comandos para una Planta:
-------------------------
---------------+-----------------------------+----------------------------------
set/<planta> |Cambia la propiedad <prop> |Nada (a ver si no retorna el valor
/<elem> |del elemento <elem>, |realmente aceptado).
- /<prop> |asignándole el valor <v> a |
- /<v> |planta de nombre <planta>. |
+ /<prop> |asignándole el valor <val> a |
+ /<val> |planta de nombre <planta>. |
NOTA: Los nombres entre "<" y ">" denotan un argumento.
Todos los comandos de transmisiones comienzan con /transmission/ y continúan con
alguna de las siguientes opciones:
-Comando |Descripción |Respuesta
+Comando |Descripción |Respuesta
-------------------+-----------------------------------------+------------------
-list |Obtiene una lista de las las |Lista de transmi-
- |transmisiones activas. |siones activas
+list |Obtiene una lista de las transmisiones |Lista de transmi-
+ |activas. |siones activas
| |(host, puerto,
| |uptime, etc).
-------------------+-----------------------------------------+------------------
-start/<host>/<port>|Comienza la transmisión al <host> en el |Nada.
- |puerto al <host> en el puerto <port>. |
+start/<plant> |Comienza la transmisión de la planta |Nada.
+ /<host>/<port> |<plant> al <host> en elpuerto al <host> |
+ |en el puerto <port>. |
-------------------+-----------------------------------------+------------------
-stop/<host>/<port> |Finaliza la transmisiónal <host> en el |Nada.
- |puerto <port>. Si se omite el <host>, se |
+stop/<host>/<port> |Finaliza la transmisión al <host> en el |Nada.
+ |puerto <port>. Si se omite el <port>, se |
+ |finalizan todas las transmisiones al |
+ |<host>. Si se omite el <host>, se |
|finalizan todas las transmisiones. |
+Comandos para una Conexión de Control:
+--------------------------------------
+Todos los comandos de transmisiones comienzan con /transmission/ y continúan con
+alguna de las siguientes opciones:
+
+Comando |Descripción |Respuesta
+-------------------+-----------------------------------------+------------------
+list |Obtiene una lista de las conexiones de |Lista de conexio-
+ |control activas. |nes activas (host,
+ | |puerto, uptime,
+ | |etc).
+-------------------+-----------------------------------------+------------------
+stop/<host>/<port> |Finaliza la conexión de control del host |Nada.
+ |<host> en el puerto <port>. Si se omite |
+ |el <port> se finalizan todas las |
+ |conexiones al <host>. Si se omite también|
+ |el <host>, se finalizan todas las |
+ |conexiones de control. |
+
NOTA: Los nombres entre "<" y ">" denotan un argumento.
+Descripción de los comandos para el módulo de control:
+======================================================
+
+Todas las respuestas consisten de un archivo XML con esta forma (falta hacer la
+DTD):
+<plaqui version="0.1">
+ <response code="[código]" />
+</plaqui>
+El código es obligatorio e informará si el comando se realizó con éxito y en
+caso de no hacerlo, indicará la razón (los códigos faltan definirlos, pero usar
+un esquema similar a los códigos de HTTP sería un buen comienzo).
+La respuesta también puede tener otros contenidos (listado de plantas,
+conexiónes, transmisiones, descripción de una planta completa, etc). Dichos
+contenidos irán contenidos en el tag response:
+<plaqui version="0.1">
+ <response code= "[código]">
+ <list type="plants">
+ <item id="[id1]">
+ <prop name="[nombre1]" value="[valor1]" />
+ <prop name="[nombre2]" value="[valor2]" />
+ <!-- ... más ... -->
+ </item>
+ <item id="[id2]">
+ <prop name="[nombre1]" value="[valor3]" />
+ <prop name="[nombre2]" value="[valor4]" />
+ <!-- ... más ... -->
+ </item>
+ </list>
+ </response>
+</plaqui>
+
+TODO: Ver si la lista va dentro o fuera del tag <response>, ver si el tag
+ <plaqui> está bien, es útil y correcto.
+
+
Características adicionales (a desarrollar si el tiempo lo permite):
====================================================================