Salas

oTree te permite configurar «salas», que proporcionan:

  • Enlaces que puedes asignar a los participantes o a las computadoras del laboratorio, que permanecen constantes a lo largo de las sesiones.

  • Una «sala de espera» que te permite ver qué participantes están actualmente esperando para comenzar una sesión.

  • Enlaces cortos que son fáciles de escribir para los participantes, ideales para demostraciones rápidas en vivo.

Aquí hay una captura de pantalla:

_images/room-combined.png

Creando salas

Puedes crear múltiples salas, por ejemplo, para diferentes clases que enseñas o diferentes laboratorios que gestionas.

Si estás utilizando oTree Studio

En la barra lateral, ve a «Settings» y luego añade una sala en la parte inferior.

Si estás utilizando PyCharm

Ve a tu settings.py y configura ROOMS.

Por ejemplo:

ROOMS = [
    dict(
        name='econ101',
        display_name='Econ 101 class',
        participant_label_file='_rooms/econ101.txt',
        use_secure_urls=True
    ),
    dict(
        name='econ_lab',
        display_name='Experimental Economics Lab'
    ),
]

Si estás utilizando etiquetas de participante (ver más abajo), necesitas un participant_label_file que es una ruta relativa (o absoluta) a un archivo de texto con las etiquetas de participante.

Configurando una sala

Etiquetas de participante

Esta es la «lista de invitados» para la sala. Debe contener una etiqueta de participante por línea. Por ejemplo:

LAB01
LAB02
LAB03
LAB04
LAB05
LAB06
LAB07
LAB08
LAB09
LAB10

Si no especificas etiquetas de participante, cualquiera puede unirse siempre que conozca la URL del salón. Consulta Si no tienes un participant_label_file.

use_secure_urls (opcional)

Esta configuración proporciona seguridad adicional sobre el participant_label_file. Por ejemplo, sin URLs seguras, tus URLs de inicio se verían algo así:

http://localhost:8000/room/econ101/?participant_label=Student1
http://localhost:8000/room/econ101/?participant_label=Student2

Si Student1 es travieso, podría cambiar la etiqueta de participante de su URL de «Student1» a «Student2», para poder hacerse pasar por Student2. Sin embargo, si usas use_secure_urls, cada URL obtiene un código único como este:

http://localhost:8000/room/econ101/?participant_label=Student1&hash=29cd655f
http://localhost:8000/room/econ101/?participant_label=Student2&hash=46d9f31d

Entonces, Student1 no puede hacerse pasar por Student2 sin el código secreto.

Uso de salas

En la interfaz de administración, haz clic en «Salas» en la barra de encabezado y haz clic en la sala que creaste. Desplázate hacia abajo hasta la sección con las URL de los participantes.

Si tienes un participant_label_file

En la página de administración de la sala, monitorea qué participantes están presentes y, cuando estés listo, crea una sesión para el número deseado de personas.

Puedes usar las URL específicas de los participantes o la URL general de la sala.

Las URL específicas para participantes ya contienen la etiqueta del participante. Por ejemplo:

http://localhost:8000/room/econ101/?participant_label=Student2

La URL de la sala no la contiene:

http://localhost:8000/room/econ101/

Entonces, si usas URLs de sala, se requerirá que los participantes ingresen su etiqueta de participante:

_images/room-combined.png

Si no tienes un participant_label_file

Simplemente haz que cada participante abra la URL de la sala. Luego, en la página de administración de la sala, verifica cuántas personas están presentes y crea una sesión para el número deseado de personas.

Aunque esta opción es simple, es menos confiable que usar etiquetas de participantes, porque alguien podría jugar dos veces abriendo la URL en 2 navegadores diferentes.

Reutilización para múltiples sesiones

Las URLs de las salas están diseñadas para ser reutilizadas entre sesiones. En un laboratorio, puedes configurarlas como la página de inicio del navegador (usando URLs generales de la sala o URLs específicas de participantes).

En experimentos en el aula, puedes dar a cada estudiante su URL que pueden usar durante el semestre.

¿Qué pasa si no todos los participantes se presentan?

Si estás realizando un experimento de laboratorio y el número de participantes es impredecible, puedes considerar usar la URL de la sala y pedir a los participantes que ingresen manualmente su etiqueta de participante. Los participantes solo se cuentan como presentes después de que ingresen su etiqueta de participante.

O puedes abrir los navegadores en URLs específicas para participantes, pero antes de crear la sesión, cierra los navegadores en las computadoras desatendidas.

Los participantes pueden unirse después de que se haya creado la sesión, siempre que queden lugares disponibles.

Asignación previa de participantes a etiquetas

oTree asigna a los participantes según el tiempo de llegada, por ejemplo, la primera persona en llegar es el participante 1. Sin embargo, en algunas situaciones esto puede no ser deseable, por ejemplo:

  • Quieres que las etiquetas de los participantes se alineen con los IDs de oTree, en un orden fijo, por ejemplo, para que LAB29 sea siempre el participante 29.

  • Quieres que Alice/Bob/Charlie sean siempre los participantes 1/2/3, para que se agrupen y jueguen juntos.

Simplemente asigna esas etiquetas de participantes en creating_session:

def creating_session(subsession):
    labels = ['alice', 'bob', 'charlie']
    for player, label in zip(subsession.get_players(), labels):
        player.participant.label = label

Si alguien abre un enlace de inicio con participant_label=alice, oTree verifica si algún participante en la sesión ya tiene esa etiqueta. (Esto es necesario para que al hacer clic en un enlace de inicio dos veces se asigne de nuevo al mismo participante.)

Pasar datos sobre un participante a oTree

Consulta «Participant vars for room» endpoint.