Combinar horarios
Una de las características más poderosas de SuperSaaS es la capacidad de combinar múltiples calendarios para crear escenarios de planificación complejos. Por ejemplo:
| Caso de uso | Tipo de combinación |
|---|---|
| Una reserva para un tratamiento requiere que tanto una habitación como un terapeuta estén disponibles. Esto significa que el sistema debe garantizar que ambos recursos estén libres al mismo tiempo. | Múltiples recursos se requieren para una reserva |
| Al solicitar una cita, el usuario puede elegir entre diferentes tratamientos. Cada tratamiento requiere la disponibilidad de un terapeuta diferente. | Diferentes servicios requieren diferentes recursos |
| Solo se puede solicitar asistencia si un voluntario se ha inscrito para ayudar. Esto garantiza que siempre haya alguien disponible para brindar el apoyo necesario. | Ocupar un recurso hace que otro esté disponible |
| Tienes 20 piezas idénticas de equipos en alquiler y no deseas que el cliente seleccione una en particular. | Recursos agrupados, presentados como una sola entidad |
| Un club permite a los socios reservar una cancha de tenis, pero también a los clientes normales. A los socios se les podría permitir reservar la misma cancha a un precio más bajo o con más tiempo de antelación. | Un solo recurso, presentado como múltiples entidades |
| Tienes una restricción diferente en un solo día de la semana. Puedes crear un horario separado para ese día y luego combinarlo para presentar al usuario una vista de semana unificada. | Combinar horarios en una sola vista |
Los horarios de servicios pueden utilizar los horarios de recursos
De los tres tipos de horario en SuperSaaS, el “horario de servicios” es el único que puede conectarse a otros horarios, en particular a “horarios de recursos”. Esta capacidad tiene el compromiso de que no puedes crear citas repetidas o citas de duración variable en el horario de servicios.
Múltiples recursos se requieren para una reserva
Un servicio requiere a menudo que uno o más recursos estén disponibles. Al calcular la disponibilidad, el sistema debería garantizar que todos los recursos necesarios estén disponibles. Para que esto funcione, creas uno o más horarios de recursos de los que depende el servicio. Esto lo puedes hacer antes de crear el horario de servicios o después. Entonces puedes conectar los recursos en la página Configurar > Servicios del horario de servicios. Este tutorial da un ejemplo paso a paso.
Todos los recursos se pueden colocar en un único horario de recursos, o puedes colocarlos en horarios separados. Como regla general, si tienes recursos intercambiables (por ejemplo, tienes varias salas y el servicio se puede proporcionar en cualquiera de ellas), es mejor ubicarlos en el mismo horario de recursos.
Como alternativa, a veces puede resultar útil especificar que se requieren dos recursos idénticos para una misma reserva. Por ejemplo, si tienes una sala de reuniones que se puede dividir en dos con separadores. O si tienes una pista de tenis que se puede dividir en dos pistas de pickleball. En ese caso, se especificaría un servicio separado para las pistas de tenis que requiera dos pistas de pickleball, y también se permitiría que estas se reserven por separado.
Diferentes servicios requieren diferentes recursos
Puedes permitir que los usuarios elijan entre diferentes servicios al reservar una cita. Cada servicio puede requerir uno o más recursos específicos, según las necesidades. Por ejemplo, un tratamiento en particular solo puede estar disponible con un terapeuta que posea las habilidades requeridas. Una vez que el usuario selecciona un servicio, el calendario se actualiza automáticamente para mostrar únicamente las fechas y horas en que un terapeuta adecuado está disponible.
Ocupar un recurso hace que otro esté disponible
Normalmente, un servicio solo está disponible cuando todos los recursos conectados están disponibles, y cuando se reserva un servicio, todos los recursos conectados se marcan como ocupados. Sin embargo, puede cambiar este comportamiento al configurar un servicio. Al hacer clic en el botón y luego seleccionar el botón junto a un recurso, se invertirá esta lógica. El servicio entonces solo estará disponible si el recurso está ocupado. Reservar el servicio no afectará la disponibilidad de ese recurso específico “ocupado”. Para evitar que el servicio se reserve varias veces, es posible que también deba conectar un recurso “disponible” normal además del recurso “ocupado”.
Recursos agrupados, presentados como una sola entidad
Puede ser inconveniente o indeseable permitir que el usuario seleccione entre una cantidad de recursos similares. Por ejemplo, es posible que no desees que un candidato elija de una lista de entrevistadores, sino más bien asignar el primero disponible o asignar uno al azar.
Cuando conectas un servicio a un horario de recursos que tiene múltiples recursos, verá la opción de conectarse a los recursos. También puedes combinar recursos de diferentes horarios haciendo clic en el botón . En la página Configurar > Servicios del horario de servicios puedes encontrar una opción . Tiene la opción de permitir que el usuario seleccione, elegir el primero disponible en el orden indicado en el horario, o elegir arbitrariamente.
Un solo recurso, presentado como múltiples entidades
Es posible que desees presentar diferentes horarios a diferentes audiencias y asegurarse de que el número total de recursos no esté sobrevendido. Un ejemplo sería un consultor que trabaja en múltiples ubicaciones y quiere proporcionar un horario adaptado a cada ubicación. Cada ubicación podría tener un precio diferente, diferentes servicios y diferentes horarios de apertura.
En este caso, crearías un horario de recursos como base y luego crearías uno o más horarios de servicios que se conectan al mismo horario de recursos. Puedes definir grupos de usuarios para garantizar que los usuarios destinados a uno de los horarios no accedan al otro.
Combinar horarios en una sola vista
A veces necesitas más flexibilidad de la que puedes lograr con un solo horario, y la combinación de horarios puede proporcionar una solución. Por ejemplo, los fines de semana necesitas que el tiempo de búfer entre reservas sea diferente que los días de la semana, porque el tiempo de viaje es diferente los fines de semana. O deseas que el límite por usuario sea diferente los viernes para alentar a más personas a reservar ese día.
En este caso, crearías dos (o más) horarios de recursos, por ejemplo “Semana” y “Fin de semana” y aplicarías las diferentes restricciones a cada uno. Después de eso creas un horario de servicios y defines un servicio que depende de “Semana” o “Fin de semana”. El resultado será una combinación lógica de la configuración en cada horario. Consulta la siguiente sección para detalles sobre cómo interactúan los horarios.
Cómo interactúan los horarios
Cuando el sistema verifica la disponibilidad, tiene en cuenta si hay citas en conflicto para cualquiera de los recursos solicitados, por supuesto. Sin embargo, hay muchas otras restricciones de planificación que puedes configurar:- Horarios de apertura
- Días especiales como vacaciones
- Definir la duración de reservas
- Poner restricciones a la hora de inicio de reservas
- Limitar con cuánto tiempo de antelación se puede hacer una reserva
- Limitar la cantidad de reservas por período de tiempo o en total
- Asegurarse de que un Google Calendar sincronizado no contenga eventos en conflicto
- Etcétera.
Un período de tiempo solo está disponible si cumple con todas esas restricciones, tanto para el servicio como para cada recurso del que depende el servicio.
Para los recursos marcados con ⊗ «disponibles cuando están ocupados», se ignoran todas las restricciones, horarios de apertura y demás limitaciones de disponibilidad. El único factor que afecta la disponibilidad del servicio son los periodos en que dichos recursos están ocupados.
Todas las demás configuraciones de un horario solo se aplican a las reservas realizadas en ese horario en particular. Por ejemplo, solo se envía una confirmación y un recordatorio por correo electrónico, tal como se define en la configuración del horario donde el usuario creó la reserva. Si eso es un horario de servicios, la configuración de correo electrónico para los horarios de recursos dependientes se ignora. Además, solo se aplica la configuración de precio y pago del horario donde se realizó la reserva.
También es importante comprender la terminología “y” y en la definición del servicio. Por ejemplo, si el horario A está disponible a las 9:00 y a las 10:00, y el horario B está disponible a las 10:00 y a las 11:00, un servicio que dependa del horario A “y” del horario B solo estará disponible a las 10:00. En cambio, si un servicio depende del horario A del horario B, estará disponible a las 9:00, a las 10:00 y a las 11:00.
Activación de notificaciones en horarios dependientes
En la página Configurar > Proceso del horario de servicios, puede indicar si una cita también debe activar notificaciones y webhooks en cualquier horario conectado. Si una cita afecta a varios horarios, se enviará un correo electrónico adicional por cada horario afectado y un webhook por cada recurso afectado. Por ejemplo, una cita para un viaje que reserva las bicicletas 1, 2 y 3 puede activar un correo electrónico y un webhook en el horario de servicios del viaje, y luego otro correo electrónico y tres webhooks más en el horario de recursos de las bicicletas.
Si un cambio en un horario de servicios traslada una cita de un horario de recursos a otro, solo se envía un evento de actualización para el nuevo horario. No se envía un correo electrónico ni un webhook en el horario donde se eliminó la cita para el recurso.