Ir al artículo
Aniq-UI

TicketoryEventos, recintos y planos de asientos

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

ParteValores
Textos, en inglés y árabeTítulo (160 caracteres), resumen (500) y descripción (5000). El título y la descripción en inglés son necesarios para publicar.
DirecciónUn slug hecho a partir del título en inglés cuando no se da ninguno, que se mantiene único con un número.
Categoríaworkshop, talk o festival en los datos de ejemplo
Recinto y admisiónUn recinto, y asientos reserved (asientos del plano publicado del recinto) o admisión general (una cantidad, sin números de asiento)
ProgramaciónInicio 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)
Visibilidadpublic (listado en el catálogo y la búsqueda) o unlisted (se vende solo con su enlace)
Colorpink, 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 entradaDe 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

EstadoEn el sitio web
BorradorOculto. Todo evento nuevo empieza aquí.
PublicadaListado (si es público), buscable, en el mapa del sitio y a la venta.
AgotadoListado, con todos los tipos de entrada mostrando agotado. La página sigue abierta y el evento aún se puede guardar.
CanceladaFuera del catálogo. Su página dice que se canceló, y sus entradas ya no abren la puerta.
ArchivadaOculto, 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ónQué hace
PublicarNecesita 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.
DespublicarVuelve a borrador: las nuevas ventas se detienen, las reservas activas se liberan y las entradas ya vendidas siguen siendo válidas.
Cancelar eventoLas 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.
DuplicarUn borrador nuevo llamado "(copy)" con los mismos tipos de entrada y sin ventas.
ArchivarPara 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/new crea un evento y /en/dashboard/events/<id>/edit cambia 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>/attendees lista 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_DARK y NEXT_PUBLIC_PLACE_SEARCH_URL en 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, y max_per_order, 8, en los datos de ejemplo). El panel no los edita.

Quién puede hacer qué

PermisoPermite
events.viewVer todos los eventos, borradores incluidos, y sus asistentes
events.editCrear, editar y duplicar eventos
events.publishPublicar, despublicar, cancelar y archivar
venues.viewVer los recintos y sus planos
venues.editCrear 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 code legible por máquinas: VERSION_CONFLICT (alguien guardó primero), PRICE_LOCKED, HAS_SALES, EVENT_CLOSED, NOT_READY (con lo que falta en details.missing), INVALID_TRANSITION y CONFIRMATION_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 400 OVER_CAPACITY.
  • POST /api/holds necesita un Idempotency-Key, y responde la reserva con un token que se muestra una sola vez y se envía después como X-Hold-Token. Un asiento que ya no está es un 409 SEAT_UNAVAILABLE, un tipo agotado un 409 SOLD_OUT, una reserva caducada un 410 HOLD_EXPIRED.
  • GET /api/public/sessions/:code/availability responde 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.

¿Te atascaste en un paso?

Busca una solución antes de empezar de nuevo.

Solución de problemas

Preferencias de Cookies

Utilizamos cookies para mejorar tu experiencia de navegación, analizar el tráfico del sitio y personalizar el contenido. Al hacer clic en "Aceptar Todo", consientes nuestro uso de cookies para análisis y publicidad personalizada.