Grupo de Cabina de votación (2014-15)

De Wiki de EGC
Revisión del 23:34 11 dic 2014 de Carborgar (discusión | contribuciones) (Instalación del subsistema)
Saltar a: navegación, buscar

Definición

Un subsistema de AGORA@US para mostrar las opciones de la votación donde el votante pueda realizar la votación. El voto tiene que cifrarse en cliente, nunca debe llegar al servidor el voto en claro. A la cabina sólo podrán llegar usuarios autenticados que aún no hayan votado. El voto se enviará cifrado al almacenamiento de votos

Miembros

Iteraciones

Subsistemas relacionados

Para que el subsistema de Almacenamiento de votos, pueda obtener dicho voto, le mandaremos un JSON con la siguiente estructura:

{
   "id_votacion":        "xxxxxxxxxxxxxxxxxxxxxx",
   "nombre_usuario":     "xxxxxxxxxxxxxxxxxxxxxx",
   "edad":               "xxxxxxxxxxxxxxxxxxxxxx",
   "genero":             "xxxxxxxxxxxxxxxxxxxxxx",
   "comunidad_autonoma": "xxxxxxxxxxxxxxxxxxxxxx",
   "preguntas":[
                 {
                   "id_pregunta":"xxxxxxxxxxxxxxxxxxxxxx",
                   "texto":      "xxxxxxxxxxxxxxxxxxxxxx",
                   "opcion":     "xxxxxxxxxxxxxxxxxxxxxx"
                 },
                 {
                   "id_pregunta":"xxxxxxxxxxxxxxxxxxxxxx",
                   "texto":      "xxxxxxxxxxxxxxxxxxxxxx",
                   "opcion":     "xxxxxxxxxxxxxxxxxxxxxx"
                 }
               ]
}

Para que el subsistema de Creación/Administración de Censos puedan comunicarse con nuestro subsistema, la URI que debe poner en el botón o enlace para que salga la cabina de votación es la siguiente:

http://localhost:8000/cabinaus/id_votacion/

Donde id_votacion siempre debe ser un número, por ejemplo:

http://localhost:8000/cabinaus/15/

Instalación del subsistema

Probado en Windows 7 SP1 x64 (imagen de DreamSpark disponible en la web de la escuela). Para otros sistemas el procedimiento es el mismo.

Probado en Windows 8 (x64 y x32) y 8.1 (x64 y x32)

  • 1. Instalar Python 2.7.7 (link)
  • 2. Instalar Setuptools (link) teniendo en cuenta python 2.7.7 y 64 o 32 bits
  • 3. Ir a la ruta de instalación de scripts python (por defecto: C:\Python27\Scripts) desde el cmd y ejecutar:
   pip install Django==1.4.7
   pip install djangorestframework==2.4.3
   pip install rsa==3.1.4
   pip install django-cors-headers==0.13
   pip install requests==2.5.0
  • 4. Ir a la carpeta donde esté el proyecto por cmd y ejecutar: manage.py runserver
  • 5. Abrir el navegador en 127.0.0.1:8000

Instalación del subsistema en Ubuntu

1.- Descargar los scripts para Linux: 1)install.sh 2)run.sh

2.- Dar permisos de ejecución a los scripts descargados: Se puede hacer por medio de botón derecho > propiedades > permisos > marcar como ejecutable o bien ejecutando el siguiente comando en un terminal:

chmod +x NOMBRE_DEL_SCRIPT

Cambiando 'NOMBRE_DEL_SCRIPT' por cada uno de los scripts descargados.

3.- Introducir dentro de la carpeta deseada (MAIN) la carpeta descargada con la última versión de cabina-agora-us junto con los dos scripts:

MAIN
|
|- cabina-agora-us
|- install.sh
|- run.sh

4.- Ejecutar desde consola el script: En el caso de la primera ejecución ejecutamos desde un terminal que se encuentre en la carpeta (MAIN) :

./install.sh

En el caso que ya hayamos ejecutado el proyecto anteriormente, ejecutamos desde un terminal que se encuentre en la carpeta (MAIN):

./run.sh

En ambos casos, tras la ejecución de cierto código debería pararse el terminal con la línea

================= OK ===================

Con el proceso corriendo.

Tras esto podemos abrir un navegador y acceder a localhost:8000