Eventos, recintos y planos de asientos
Qué contienen un evento y sus tipos de entrada, cómo crea, publica y cancela uno un organizador, los recintos en el mapa, los planos de asientos con borradores y versiones publicadas, y cómo una reserva temporal guarda asientos para un comprador.
Para el paquete Full Stack
Qué contiene un evento
| Parte | Valores |
|---|---|
| Textos, en inglés y árabe | Título (160 caracteres), resumen (500) y descripción (5000). El título y la descripción en inglés son necesarios para publicar. |
| Dirección | Un slug hecho a partir del título en inglés cuando no se da ninguno, que se mantiene único con un número. |
| Categoría | workshop, talk o festival en los datos de ejemplo |
| Recinto y admisión | Un recinto, y asientos reserved (asientos del plano publicado del recinto) o admisión general (una cantidad, sin números de asiento) |
| Programación | Inicio y fin en la zona horaria del propio evento, y una agenda de hasta 24 elementos (una hora, un título y un detalle opcional) |
| Visibilidad | public (listado en el catálogo y la búsqueda) o unlisted (se vende solo con su enlace) |
| Color | pink, yellow, teal o blue. Un evento no tiene fotografía: su título, su fecha y su color se dibujan como una entrada. |
| Tipos de entrada | De 1 a 10, cada uno con un nombre, un precio (0 si es gratis), un aforo, el máximo por pedido (de 1 a 8) y un estado de venta: a la venta, en pausa o cerrado |
Los precios se guardan en unidades menores de la moneda del espacio de trabajo (2000 son 20,00 $), y la columna de precio del editor nombra esa moneda: aquella en la que se fijaron los precios de los tipos de entrada del evento, o, para un evento nuevo, la del espacio de trabajo. La comisión de reserva, un 3 % en los datos de ejemplo, se suma por entrada al pagar y la paga el asistente; una entrada gratuita no lleva ninguna.
Estados y lo que muestra el sitio web
| Estado | En el sitio web |
|---|---|
| Borrador | Oculto. Todo evento nuevo empieza aquí. |
| Publicada | Listado (si es público), buscable, en el mapa del sitio y a la venta. |
| Agotado | Listado, con todos los tipos de entrada mostrando agotado. La página sigue abierta y el evento aún se puede guardar. |
| Cancelada | Fuera del catálogo. Su página dice que se canceló, y sus entradas ya no abren la puerta. |
| Archivada | Oculto, en la pestaña Ended del panel, y quitado de las listas de guardados de los asistentes. |
Unos datos de ejemplo recién creados tienen 36 eventos de cuatro organizadores: 29 publicados, 2 agotados, 1 cancelado y 4 borradores. El sitio web lista los 22 que están a la venta o en curso, 3 de ellos en curso, y 9 ya han terminado.
Publicar, cancelar y las demás acciones
| Acción | Qué hace |
|---|---|
| Publicar | Necesita el título y la descripción en inglés, al menos un tipo de entrada con aforo, un inicio en el futuro y, para asientos reservados, un plano publicado en el recinto. Si no, el editor lista lo que falta. |
| Despublicar | Vuelve a borrador: las nuevas ventas se detienen, las reservas activas se liberan y las entradas ya vendidas siguen siendo válidas. |
| Cancelar evento | Las ventas y la admisión se detienen al instante, las reservas se liberan y se envía un correo a cada pedido pagado. No se mueve dinero: reembolsa cada pedido desde su página. Se confirma escribiendo el slug del evento. |
| Duplicar | Un borrador nuevo llamado "(copy)" con los mismos tipos de entrada y sin ventas. |
| Archivar | Para un borrador, un evento cancelado o uno que ha terminado. Los pedidos y las entradas se conservan. |
Los pedidos y las entradas nunca se borran una vez que se ha movido dinero. Cada acción queda registrada en el historial de auditoría.
La página de eventos y el editor
- Pestañas All, Published, Draft y Ended, una búsqueda y filtros por categoría, estado y fechas (próximos 30 días, próximos 90 días, este año, eventos pasados), ocho eventos por página, con lo vendido frente al aforo y los ingresos en cada fila.
- El menú de cada fila permite ver una vista previa, editar, abrir los asistentes, duplicar, publicar, despublicar, archivar o cancelar el evento.
/en/dashboard/events/newcrea un evento y/en/dashboard/events/<id>/editcambia uno, en cuatro pestañas (Details, Tickets, Schedule, Visibility) junto a una vista previa de la entrada y una lista de comprobación de preparación.- Un precio se bloquea tras la primera venta, para que lo que pagaron los compradores siga siendo cierto. El recinto y el modo de admisión quedan fijos una vez vendidas entradas, un tipo de entrada vendido no se puede quitar y se rechaza un aforo inferior a lo vendido.
- Si otra persona guardó el evento después de que lo abrieras, el editor lo indica y mantiene tu texto sin guardar hasta que recargues.
/en/dashboard/events/<id>/attendeeslista las entradas del evento: titular, asiento, tipo, estado y hora de admisión, con una búsqueda y filtros para admitidas, no admitidas y anuladas.
Recintos
- Un recinto tiene un nombre en ambos idiomas, una dirección, una ciudad, una zona horaria, un aforo, notas de accesibilidad y de transporte en ambos idiomas, y un punto opcional en el mapa.
- La página Venues del panel muestra cada recinto en un mapa y en una lista, con sus asientos (reservados con la versión de su plano, o entrada general) y sus próximos eventos. El editor de recintos tiene un selector de mapa con búsqueda de lugares.
- Los mapas dibujan teselas de OpenFreeMap y la búsqueda de lugares usa el servicio público Photon, ambos sin clave.
NEXT_PUBLIC_MAP_STYLE_LIGHT,NEXT_PUBLIC_MAP_STYLE_DARKyNEXT_PUBLIC_PLACE_SEARCH_URLen el panel los apuntan a otro lugar. - El sitio web tiene una página por recinto con sus eventos y, para un recinto con asientos, su plano publicado.
- Los datos de ejemplo tienen 9 recintos. Room 3 y Mill Street Lecture Hall tienen cada uno un plano publicado de 72 asientos; los demás venden entrada general.
Planos de asientos
Un plano es una cuadrícula de 1 a 40 filas de 1 a 60 asientos, con hasta seis pasillos. Los asientos se etiquetan con la letra de la fila y el número (A12). El editor de asientos se abre en /en/dashboard/venues/<id>/seating.
- Cada asiento se puede marcar como accesible o acompañante (ambos se muestran en el mapa del comprador), deshabilitado (oculto a los compradores, para un asiento roto o la posición de una cámara), y se le puede dar un nivel de precio: el nivel 1 se vende como el primer tipo de entrada del evento, el nivel 2 como el segundo, y así sucesivamente.
- Save layout guarda un borrador, que se edita libremente. Un recinto tiene un solo borrador a la vez.
- Publish congela el borrador como una versión. Una versión publicada no vuelve a cambiar: los asientos vendidos con ella siguen apuntando a ella, y un cambio posterior es una versión nueva creada con Create new version. Publicar requiere al menos un asiento habilitado y no más asientos habilitados que el aforo del recinto.
- Un evento con asientos reservados vende el plano publicado más reciente de su recinto, desde el momento en que se publica el evento.
Reservas temporales de asientos
- Elegir asientos en el mapa no reserva nada; una reserva sí. Guarda los asientos (o una cantidad de entrada general) para un comprador durante el tiempo de reserva del espacio de trabajo, diez minutos en los datos de ejemplo, contado con el reloj del servidor, y el comprador ve la cuenta atrás.
- Dos compradores nunca pueden reservar el mismo asiento. Un asiento tomado un instante antes se rechaza con un mensaje para elegir otro.
- Un pedido reserva como máximo 8 entradas, y nunca más que el límite propio de un tipo de entrada. Un asistente con sesión iniciada tiene una reserva activa por sesión: una nueva elección sustituye a la anterior.
- Cuando se acaba el tiempo, los asientos quedan libres para otros al instante, y un barrido cada 15 segundos limpia las reservas caducadas. Los importes de una reserva son una instantánea, así que un cambio de precio posterior nunca la altera.
- El tiempo de reserva y el límite por pedido son valores del espacio de trabajo (
hold_seconds, 600, ymax_per_order, 8, en los datos de ejemplo). El panel no los edita.
Quién puede hacer qué
| Permiso | Permite |
|---|---|
events.view | Ver todos los eventos, borradores incluidos, y sus asistentes |
events.edit | Crear, editar y duplicar eventos |
events.publish | Publicar, despublicar, cancelar y archivar |
venues.view | Ver los recintos y sus planos |
venues.edit | Crear y editar recintos, y guardar y publicar planos |
Los roles de ejemplo Propietario y Gerente tienen los cinco; Finanzas y Control de acceso no tienen ninguno.
Qué comprueba la API
- El editor y la API rechazan con un
codelegible por máquinas:VERSION_CONFLICT(alguien guardó primero),PRICE_LOCKED,HAS_SALES,EVENT_CLOSED,NOT_READY(con lo que falta endetails.missing),INVALID_TRANSITIONyCONFIRMATION_REQUIRED. - Guardar un borrador de plano que otra persona guardó después de que lo cargaras es un 409
VERSION_CONFLICT; publicar uno por encima del aforo del recinto es un 400OVER_CAPACITY. POST /api/holdsnecesita unIdempotency-Key, y responde la reserva con un token que se muestra una sola vez y se envía después comoX-Hold-Token. Un asiento que ya no está es un 409SEAT_UNAVAILABLE, un tipo agotado un 409SOLD_OUT, una reserva caducada un 410HOLD_EXPIRED.GET /api/public/sessions/:code/availabilityresponde la hora del servidor, el tiempo de reserva, la comisión y, para una sesión con asientos reservados, el estado de cada asiento. El sitio web lo lee cada 20 segundos mientras el mapa está abierto.