Agentes n8n para crear horario de trabajo
Budget: $750 – $1,500 USD
Hola, estoy buscando un desarrollador que me ayude con un proyecto en n8n para automatizar la creación de un horario de empleados basado en un conjunto de reglas específicas mediante agestes hechos en n8n, te envió un documento PDF con las reglas y detalles del trabajo que te solicitaría, léelo y déjame saber qué opinas por favor
Me gustaría convertir cada regla en un agente (o nodo dentro de n8n) que trabaje de forma combinada con los demás para generar el horario de manera eficiente y automatizada. A
continuación, te detallo lo que necesito, las reglas que deben seguirse y el propósito de la contratación. También estoy interesada en recibir una cotización y agendar una videollamada para explicarte los detalles más a fondo.
Lo que quiero que hagas
Quiero que construyas un flujo en n8n donde cada una de las reglas que te proporciono se implemente como un agente individual. Estos agentes deben interactuar entre sí, respetando el orden de prioridad de las reglas, para producir un horario de empleados que cumpla con todas las condiciones. El resultado final debe ser un archivo en formato JSON que mantenga exactamente la estructura original, sin ninguna modificación en claves, anidaciones o formatos de valores.
Reglas para crear el horario (en orden de prioridad)
Aquí están las reglas que deben seguirse. Cada una debería convertirse en un agente en n8n:
1. Restricciones Absolutas (No Negociables)
• Los turnos fijos, turnos bloqueados, todos los tipos de Leave (vacaciones, enfermedad, etc.) y turnos marcados como fixed shift one time no pueden
modificarse bajo ninguna circunstancia. Estas son restricciones inviolables para el o los agentes.
2. Máximo de Turnos Consecutivos y Descanso Obligatorio
• Respetar el máximo de turnos consecutivos definido para cada empleado (o el valor general si no hay uno específico para un empleado).
• Al alcanzar este límite de Máximo de Turnos Consecutivos, asignar el mínimo de días libres indicado en el "days Off after max Consecutive": " ",
days off after maximum consecutive shifts.
3. Descanso Mínimo entre Turnos
• Garantizar el mínimo de horas de descanso entre turnos según Minimum rest hours between shifts, especialmente en cambios que cruzan la medianoche.
4. Cumplimiento de Horas Laborales Semanales y Quincenales
• Cada empleado debe cumplir exactamente con el mínimo de horas requeridas
cada dos semanas (Minimum hours per two weeks), sin exceder este límite importante cuando existe alguna licencia como vaciones o enfermedad el sistema no contabiliza esas horas, pero en teoría eso es un turno completo por eso veras que algunos empleados no tienen las 80 horas
5. Asignación Equitativa de Fines de Semana Libres
• Otorgar a cada empleado el mínimo de fines de semana libres al mes (Weekends off per month), osea sábado y domingo, combinándolos con días cercanos
(viernes o lunes) si es necesario. Los turnos de fines de semana deben cubrirse según la regla #6.
6. Prioridad de las Necesidades del horario de trabajo
• Priorizar los turnos establecidos en Shitf Priorities (necesidades críticas del empleador) sobre las preferencias individuales de los empelados
• Usar Ideal Number of Personnel per Shift and Day como guía para asignar
personal, acercándose lo más posible a estos valores, pero si falta personal darás prioridad a agsinar los turnos escogidos como Shift Priorities
7. Preferencias de Turno de los Empleados
• Asignar turnos según las preferencias individuales (1ª > 2ª > 3ª), dando prioridad a la primera preferencia siempre que no contradiga las reglas anteriores. Si no hay suficientes empleados, priorizar shift Priorities y dejar turnos sin cubrir de forma aleatoria.
8. Equidad y Antigüedad
• Distribuir turnos equitativamente entre empleados con preferencias similares, usando la antigüedad como desempate para turnos deseados o menos deseados.
9. Minimización de la Rotación de Turnos
• Favorecer la estabilidad en el horario, evitando cambios innecesarios y manteniendo patrones consistentes según las preferencias de los empleados.
10. Aplicación de Comentarios y Reglas Específicas
• Aplicar peticiones específicas que son individuales para cada empleado en Comment or Rules (ej. “prefiere los luneslibres”) siempre que sea posible y no interfiera con las reglas anteriores.
11. Generación de Reportes y Explicaciones Detalladas
• Generar un Summary and/or Considerations for this Schedule para cada empleado, explicando brevemente la lógica detrás de su asignación de turnos (ej. “No pudiste tener más turnos de tu preferencia #1 porque otros empleados también los prefieren y se distribuyeron equitativamente”).
12. Balanceo Dinámico
• Reajustar continuamente el equilibrio entre Shift Priorities, cobertura ideal y preferencias personales mientras se construye el horario.
13. Formato JSON Inalterado
• El JSON debe mantener su estructura exacta: no modificar claves, anidaciones ni formatos de valores.
• No agregar ni eliminar campos, mantener el orden de los elementos y validar que todos los campos requeridos estén presentes antes de generar el resultado.
• En caso de error, corregirlo automáticamente para evitar estructuras inválidas.
• No incluir texto fuera del JSON (ni ```json ni comentarios adicionales).
Propósito de la contratación
Quiero que construyas este sistema en n8n y lo hagas funcionar correctamente. Una vez que esté listo y probado, me gustaría que me enseñes cómo crearlo y modificarlo yo mismo en n8n. Esta enseñanza debe ocurrir después de que el sistema esté operativo y funcionando, no antes, para nuestra garantía toda la contratación y pagos se realizaran dentro de freelancer.com
Próximos pasos
• Me gustaría agendar una videollamada contigo para explicarte más detalles y resolver cualquier duda y que así me puedas hacer una cotización
• Te envió este mensaje directamente porque veo que hablas español y haces referencia ha que usas o haz usado n8n
• En la video llamada te doy acceso al software ( esta en codepen.io ) donde se alojara el formato json no tienes que hacer ninguna integración con el software peo lo debes usar para ver que el formato json generado es el correcto y esta funcionando
• Tengo disponibilidad para una video llamada el martes de 8 am a 1 pm y también el jueves luego de las 11 am hasta las 3 pm, déjame saber si podrías para agendarlo, Gracias
Aquí te pongo una copia del formato json con solo 4 empleados pero a mod generar serán desde 20 hasta 100 empleados en el mismo formato json.
Post data como mediremos que el agentes creado cumple con lo solicitado para poder liberar el pago muy fácil.
1. Debe modo general respetar las reglas establecidas en en JSON
A. Minimum hours per two weeks:
B. Minimum days off after maximum consecutive shifts:
C. Máximum consecutive shift establecido
D. Number of Weekends off per month:
E. Minimum rest hours between shifts:
F. Written Rule 1 y 2:
2. Mantener las Restricciones Absolutas (No Negociables)
3. Creará el horario basado en el rango del Start Date y End Date que esta en el JSON
4. Los agentes serán capaces de gestionar y asignar los turnos de hasta 100 empleados
5. Hacer la distribución del personas basado en el Ideal Number of Personnel per Shift and Day o lo mas cercano a esos valores
6. El forma JSON debe ser idéntico al entregado
7. Alguna regla que no hayamos tenido en consideración y que afecte el resultado esperado.
Me gustaría convertir cada regla en un agente (o nodo dentro de n8n) que trabaje de forma combinada con los demás para generar el horario de manera eficiente y automatizada. A
continuación, te detallo lo que necesito, las reglas que deben seguirse y el propósito de la contratación. También estoy interesada en recibir una cotización y agendar una videollamada para explicarte los detalles más a fondo.
Lo que quiero que hagas
Quiero que construyas un flujo en n8n donde cada una de las reglas que te proporciono se implemente como un agente individual. Estos agentes deben interactuar entre sí, respetando el orden de prioridad de las reglas, para producir un horario de empleados que cumpla con todas las condiciones. El resultado final debe ser un archivo en formato JSON que mantenga exactamente la estructura original, sin ninguna modificación en claves, anidaciones o formatos de valores.
Reglas para crear el horario (en orden de prioridad)
Aquí están las reglas que deben seguirse. Cada una debería convertirse en un agente en n8n:
1. Restricciones Absolutas (No Negociables)
• Los turnos fijos, turnos bloqueados, todos los tipos de Leave (vacaciones, enfermedad, etc.) y turnos marcados como fixed shift one time no pueden
modificarse bajo ninguna circunstancia. Estas son restricciones inviolables para el o los agentes.
2. Máximo de Turnos Consecutivos y Descanso Obligatorio
• Respetar el máximo de turnos consecutivos definido para cada empleado (o el valor general si no hay uno específico para un empleado).
• Al alcanzar este límite de Máximo de Turnos Consecutivos, asignar el mínimo de días libres indicado en el "days Off after max Consecutive": " ",
days off after maximum consecutive shifts.
3. Descanso Mínimo entre Turnos
• Garantizar el mínimo de horas de descanso entre turnos según Minimum rest hours between shifts, especialmente en cambios que cruzan la medianoche.
4. Cumplimiento de Horas Laborales Semanales y Quincenales
• Cada empleado debe cumplir exactamente con el mínimo de horas requeridas
cada dos semanas (Minimum hours per two weeks), sin exceder este límite importante cuando existe alguna licencia como vaciones o enfermedad el sistema no contabiliza esas horas, pero en teoría eso es un turno completo por eso veras que algunos empleados no tienen las 80 horas
5. Asignación Equitativa de Fines de Semana Libres
• Otorgar a cada empleado el mínimo de fines de semana libres al mes (Weekends off per month), osea sábado y domingo, combinándolos con días cercanos
(viernes o lunes) si es necesario. Los turnos de fines de semana deben cubrirse según la regla #6.
6. Prioridad de las Necesidades del horario de trabajo
• Priorizar los turnos establecidos en Shitf Priorities (necesidades críticas del empleador) sobre las preferencias individuales de los empelados
• Usar Ideal Number of Personnel per Shift and Day como guía para asignar
personal, acercándose lo más posible a estos valores, pero si falta personal darás prioridad a agsinar los turnos escogidos como Shift Priorities
7. Preferencias de Turno de los Empleados
• Asignar turnos según las preferencias individuales (1ª > 2ª > 3ª), dando prioridad a la primera preferencia siempre que no contradiga las reglas anteriores. Si no hay suficientes empleados, priorizar shift Priorities y dejar turnos sin cubrir de forma aleatoria.
8. Equidad y Antigüedad
• Distribuir turnos equitativamente entre empleados con preferencias similares, usando la antigüedad como desempate para turnos deseados o menos deseados.
9. Minimización de la Rotación de Turnos
• Favorecer la estabilidad en el horario, evitando cambios innecesarios y manteniendo patrones consistentes según las preferencias de los empleados.
10. Aplicación de Comentarios y Reglas Específicas
• Aplicar peticiones específicas que son individuales para cada empleado en Comment or Rules (ej. “prefiere los luneslibres”) siempre que sea posible y no interfiera con las reglas anteriores.
11. Generación de Reportes y Explicaciones Detalladas
• Generar un Summary and/or Considerations for this Schedule para cada empleado, explicando brevemente la lógica detrás de su asignación de turnos (ej. “No pudiste tener más turnos de tu preferencia #1 porque otros empleados también los prefieren y se distribuyeron equitativamente”).
12. Balanceo Dinámico
• Reajustar continuamente el equilibrio entre Shift Priorities, cobertura ideal y preferencias personales mientras se construye el horario.
13. Formato JSON Inalterado
• El JSON debe mantener su estructura exacta: no modificar claves, anidaciones ni formatos de valores.
• No agregar ni eliminar campos, mantener el orden de los elementos y validar que todos los campos requeridos estén presentes antes de generar el resultado.
• En caso de error, corregirlo automáticamente para evitar estructuras inválidas.
• No incluir texto fuera del JSON (ni ```json ni comentarios adicionales).
Propósito de la contratación
Quiero que construyas este sistema en n8n y lo hagas funcionar correctamente. Una vez que esté listo y probado, me gustaría que me enseñes cómo crearlo y modificarlo yo mismo en n8n. Esta enseñanza debe ocurrir después de que el sistema esté operativo y funcionando, no antes, para nuestra garantía toda la contratación y pagos se realizaran dentro de freelancer.com
Próximos pasos
• Me gustaría agendar una videollamada contigo para explicarte más detalles y resolver cualquier duda y que así me puedas hacer una cotización
• Te envió este mensaje directamente porque veo que hablas español y haces referencia ha que usas o haz usado n8n
• En la video llamada te doy acceso al software ( esta en codepen.io ) donde se alojara el formato json no tienes que hacer ninguna integración con el software peo lo debes usar para ver que el formato json generado es el correcto y esta funcionando
• Tengo disponibilidad para una video llamada el martes de 8 am a 1 pm y también el jueves luego de las 11 am hasta las 3 pm, déjame saber si podrías para agendarlo, Gracias
Aquí te pongo una copia del formato json con solo 4 empleados pero a mod generar serán desde 20 hasta 100 empleados en el mismo formato json.
Post data como mediremos que el agentes creado cumple con lo solicitado para poder liberar el pago muy fácil.
1. Debe modo general respetar las reglas establecidas en en JSON
A. Minimum hours per two weeks:
B. Minimum days off after maximum consecutive shifts:
C. Máximum consecutive shift establecido
D. Number of Weekends off per month:
E. Minimum rest hours between shifts:
F. Written Rule 1 y 2:
2. Mantener las Restricciones Absolutas (No Negociables)
3. Creará el horario basado en el rango del Start Date y End Date que esta en el JSON
4. Los agentes serán capaces de gestionar y asignar los turnos de hasta 100 empleados
5. Hacer la distribución del personas basado en el Ideal Number of Personnel per Shift and Day o lo mas cercano a esos valores
6. El forma JSON debe ser idéntico al entregado
7. Alguna regla que no hayamos tenido en consideración y que afecte el resultado esperado.