Programación de maestros
La programación de maestros en TimelyChurch conecta maestros, clases y lecciones en fechas específicas. El sistema de programación admite asignación de maestros, flujos de confirmación, selección de lecciones, administración de tareas de preparación y gestión de días festivos.
Cómo funciona la programación
Los horarios se crean a través del módulo de Eventos (Event Hub) y se vinculan al sistema de clases. Cada registro de horario representa una sola sesión de clase en una fecha específica e incluye:
- Clase — Qué clase se enseña.
- Fecha — La fecha de la sesión de clase.
- Maestro — El maestro asignado, si ya hay uno confirmado.
- Lección — La lección a enseñar (opcional al crear, puede asignarse después).
- Estado — Si la sesión todavía necesita un maestro, está cancelada, ya se impartió o cae en un festivo. Si el maestro asignado ha confirmado realmente es una señal aparte -- vea abajo.
Estados del horario
| Estado | Significado |
|---|---|
| Programado | Existe una sesión para esta fecha, haya confirmado el maestro o no. |
| Necesita suplente | El maestro que había confirmado ya no puede asistir y la clase busca cobertura. Vea Solicitudes de maestro suplente. |
| Cancelado | La sesión de clase ha sido cancelada. |
| Completado | La sesión de clase se ha impartido (marcada como completada). |
| Festivo | La fecha es un día festivo y no habrá clase. |
La confirmación no es un estado del horario. Usa la misma invitación de servicio que usa cualquier equipo de su iglesia -- vea el Flujo de confirmación de maestros más abajo. La página de detalle de la clase muestra el maestro de cada sesión con una pequeña nota de «Confirmado» o «Aún sin confirmar» debajo de su nombre.
Asignar maestros a clases
Al crear la clase
Al crear una clase nueva, puede seleccionar maestros durante el proceso de creación. Estos maestros se asignan como líderes de la clase -- y el primer líder (el principal) es quien recibe la invitación automática para enseñar cuando se crea una sesión de esa clase.
Desde la página de detalle de la clase
- Abra la clase desde la lista de Clases.
- Use la sección de administración de maestros para agregar o cambiar maestros.
- Los maestros asignados a una clase están disponibles como maestros predeterminados al crear horarios para esa clase.
En horarios individuales
Los maestros también pueden asignarse directamente a entradas de horario individuales, anulando los maestros predeterminados de la clase. Esto es útil para asignaciones puntuales o cuando un maestro habitual no está disponible.
Flujo de confirmación de maestros
Ya no existe un sistema de confirmación exclusivo para maestros. El maestro de una clase se invita, se le recuerda y se confirma mediante el mismo motor de servicio que usa cualquier equipo de su iglesia para sus propias posiciones -- «Maestro» es simplemente una posición en la clase, igual que «Recibidor» o «Sonido» es una posición en un equipo.
- Se crea un evento de clase (o se agrega una sesión) — el líder principal de la clase es invitado como maestro automáticamente, o un admin elige a un maestro específico desde la página de detalle de la clase.
- El maestro recibe una invitación personal — por Telegram si está vinculado, por correo si no — y puede confirmar o declinar con un toque, o desde su portal.
- Confirmar lo asegura; Declinar (o el silencio, ver abajo) pasa el lugar al flujo de reemplazo automáticamente. Esto solo se aplica a una invitación que nadie ha respondido todavía -- una vez que un maestro YA confirmó y luego necesita retirarse, ese es un flujo distinto: vea Solicitudes de maestro suplente.
Recordatorios automáticos — ahora los ajustas tú
A los maestros sin confirmar se les recuerda en los días que el grupo de la CLASE configure en Configuración de programación → Recordar a quienes no han confirmado — el valor por defecto es el clásico 4 y 2 días antes de la sesión, y cada clase puede elegir sus propios días (por ejemplo, 5 y 1). Máximo un recordatorio por día.
Cuando un maestro no responde
Activa Continuar cuando alguien no responde en el grupo de la clase y define un plazo: una invitación sin respuesta pasado el plazo expira y el sistema invita automáticamente a la siguiente persona elegible — los rechazos y los silencios comparten el mismo presupuesto de intentos. Consulta Cascada, invitaciones de suplentes y solicitudes de cobertura.
Si nadie en la rotación toma el lugar antes de que alguien llegue a confirmar, el sistema abre una solicitud de suplente igual que lo haría para cualquier otra posición de equipo -- vea Solicitudes de suplente. Ese es un mecanismo distinto y más temprano que el que se explica en Solicitudes de maestro suplente más abajo, que es lo que usa un maestro una vez que ya confirmó y luego necesita retirarse.
Asignación de lecciones
Los maestros y administradores pueden asignar lecciones a horarios de varias formas:
El administrador asigna una lección
- Al crear o editar un horario, seleccione una lección de la biblioteca de lecciones.
- Solo las lecciones aprobadas están disponibles para selección.
El maestro selecciona una lección
Si la opción «Teacher Picks Lesson» está habilitada en un horario:
- El maestro recibe una notificación de que debe seleccionar una lección.
- Explora la biblioteca de lecciones desde el portal.
- Selecciona una lección y se asigna al horario.
El maestro propone una lección
Si un maestro desea enseñar contenido que aún no está en la biblioteca:
- Desde el portal, elige proponer una lección nueva para su horario.
- Completa el título, la descripción y la referencia bíblica de la lección.
- La propuesta se envía con estado «Pendiente».
- Un administrador revisa la propuesta y puede:
- Aprobar — La lección se crea en la biblioteca y se asigna al horario. Se notifica al maestro.
- Rechazar — Se notifica al maestro con el motivo del rechazo y puede enviar una propuesta revisada.
El maestro crea una lección
Si «Allow teachers to create lessons» está habilitado en Configuración de lecciones:
- Los maestros pueden crear lecciones nuevas directamente desde el portal.
- Si se requiere aprobación, la lección comienza como Borrador.
- Una vez aprobada, queda disponible para programación.
Notificaciones de lección requerida
Cuando un horario tiene un maestro asignado pero ninguna lección seleccionada, el sistema notifica automáticamente al maestro de que debe elegir una lección. Esta notificación se activa cuando:
- Se crea un horario nuevo con maestro pero sin lección.
- Se asigna un maestro nuevo a un horario existente que no tiene lección.
- Se elimina una lección de un horario existente.
No se envían notificaciones para horarios pasados o días festivos.
Tareas de preparación
Los horarios pueden tener tareas de preparación asociadas para ayudar a los maestros a prepararse para su clase.
Qué son las tareas de preparación
Las tareas de preparación son elementos pendientes vinculados a un horario específico. Ejemplos:
- "Print worksheets for the lesson"
- "Set up classroom with craft supplies"
- "Prepare snack for 15 kids"
Campos de tarea de preparación
Cada tarea incluye:
- Título — Lo que hay que hacer.
- Descripción — Detalles adicionales.
- Tipo de tarea — El tipo de preparación necesaria.
- Cantidad — Cuántas unidades se necesitan (si aplica).
- Asignado a — Quién es responsable de esta tarea.
- Fecha de vencimiento — Cuándo debe completarse la tarea.
- Prioridad — Baja, normal o alta.
- Tiempo estimado — Cuántos minutos se espera que tome la tarea.
- Estado — Pendiente, completada u omitida.
Seguimiento de tareas de preparación
- El horario muestra un porcentaje de finalización de todas las tareas de preparación.
- Las tareas vencidas se marcan automáticamente.
- Las tareas marcadas como que requieren atención aparecen en la cola de atención del administrador.
Gestión de días festivos
Para marcar una fecha como festivo (sin clase):
- Cree una entrada de horario para la fecha.
- Habilite la bandera Festivo.
- Opcionalmente ingrese el nombre del festivo (p. ej., «Domingo de Pascua» o «Vacaciones de Navidad»).
Los horarios festivos:
- No requieren maestro ni lección.
- Muestran el nombre del festivo en lugar de un estado.
- Se excluyen de los informes de «requiere atención».
- No activan notificaciones de lección requerida.
Marcar una sesión como impartida
Después de que se haya completado una sesión de clase:
- Encuentre la entrada del horario.
- Haga clic en Marcar como impartida.
- El estado cambia a «Completado».
- Hacer clic de nuevo lo devuelve a «Programado» si se marcó por error.
Cuando una lección se marca como impartida, se incrementa el conteo de enseñanzas de la lección y se actualiza su fecha de «última enseñanza».
Visibilidad del horario y acceso a materiales
Visibilidad pública
Cada horario puede controlar qué información es visible al público. El campo public_visibility en el modelo Schedule acepta uno de cuatro valores, coincidiendo con las constantes definidas en App\Models\Schedule:
| Etiqueta de interfaz | Valor almacenado | Constante | Comportamiento |
|---|---|---|---|
| Global Default | null |
PUBLIC_VISIBILITY_GLOBAL |
Usa la configuración de visibilidad de toda la iglesia. Es el valor predeterminado para horarios nuevos. |
| Public | 'public' |
PUBLIC_VISIBILITY_PUBLIC |
Los detalles de la lección son visibles en páginas públicas. |
| Private | 'private' |
PUBLIC_VISIBILITY_PRIVATE |
Los detalles de la lección están ocultos de la vista pública. |
| Limited | 'limited' |
PUBLIC_VISIBILITY_LIMITED |
Solo se muestra información básica (fecha, nombre de la clase); el título, la descripción y los adjuntos de la lección están ocultos. |
Las anulaciones por campo (p. ej., «mostrar título pero ocultar descripción para este horario») se almacenan en la columna JSON visibility_overrides y se combinan con los valores predeterminados de toda la iglesia cuando se renderiza la página pública.
Acceso a materiales
Controle cómo son accesibles los adjuntos y materiales de la lección. El campo materials_access_mode (con materials_pin opcional) en cada horario se asigna a estas cuatro constantes:
| Etiqueta de interfaz | Valor almacenado | Constante |
|---|---|---|
| Inherit (Church Default) | null |
MATERIALS_ACCESS_INHERIT |
| Public | 'public' |
MATERIALS_ACCESS_PUBLIC |
| PIN Protected | 'pin_protected' |
MATERIALS_ACCESS_PIN_PROTECTED |
| Hidden | 'hidden' |
MATERIALS_ACCESS_HIDDEN |
Cuando se selecciona Protegido con PIN, primero se comprueba el campo materials_pin del horario. Si está vacío, se usa como respaldo el public_materials_pin de toda la iglesia (configurado en la configuración de compartir públicamente). Los PIN pueden configurarse en dos niveles: por horario o para toda la iglesia.
Para instrucciones sobre cómo habilitar y personalizar la página pública de lecciones (donde entra en vigor esta protección con PIN), consulte Compartir lecciones públicamente.
Consejos para una programación efectiva
- Programe con anticipación — Configure horarios con varias semanas de antelación para que los maestros tengan tiempo de prepararse.
- Confíe en el estado de confirmación — Cada invitación de maestro usa el mismo Confirmar/Declinar que cualquier posición de servicio, así que la página de detalle de la clase siempre le dice quién se ha comprometido realmente y quién todavía no ha respondido.
- Aproveche las tareas de preparación — Agregue tareas de preparación a los horarios para que nada se quede sin atender.
- Supervise los elementos de «Necesita atención» — Los horarios sin maestro, sin lección o que necesitan suplente se marcan automáticamente.
- Marque los festivos con anticipación — Agregue entradas de festivo al horario para que los maestros puedan planificar alrededor de los descansos.