Aller au contenu

Cron Jobs

La fonctionnalité Cron Jobs vous permet de créer des URL de point de terminaison uniques qui, une fois déclenchées, ferment automatiquement tous les journaux de Suivi du temps actifs pour un ensemble spécifique de Postes de travail. C’est utile pour terminer les postes, fermer les minuteurs non terminés en fin de journée ou se coordonner avec des planificateurs externes (cron serveur, plateformes d’automatisation, webhooks planifiés).

Paramètres de l'application — Cron Jobs


Chaque cron job se compose de :

ChampDescription
NomUn libellé descriptif qui décrit ce que fait le cron job (par exemple, « Fin de journée — équipe d’assemblage »). Ce nom est également utilisé comme sujet de l’e-mail récapitulatif.
URL du point de terminaisonUne URL unique générée automatiquement contenant un jeton secret. Toute personne ayant cette URL peut déclencher le cron job, traitez-la donc comme un identifiant.
E-mail de notification (optionnel)Si renseigné, un e-mail récapitulatif est envoyé à cette adresse chaque fois que le cron job est déclenché. Laissez vide pour désactiver les notifications par e-mail.
Postes de travailUn ou plusieurs Postes de travail dont les entrées de Suivi du temps actives seront fermées lorsque l’URL est appelée.
Dernière exécutionHorodatage du déclenchement réussi le plus récent.

Vous pouvez créer autant de cron jobs que nécessaire, chacun avec son propre ensemble de Postes de travail et sa propre URL. Cela facilite la fermeture des journaux à différents moments pour différentes équipes ou départements — par exemple, un cron job pour la chaîne d’assemblage à 16 h et un autre pour l’atelier de peinture à 18 h.


Scénarios courants :

  • Nettoyage de fin de poste — arrêter automatiquement toutes les entrées de Suivi du temps qu’un employé a oublié d’arrêter avant de partir.
  • Plannings par équipe — différents départements terminent à différents moments, chacun obtient donc son propre cron job et sa propre heure de la journée.
  • Intégration avec les plateformes d’automatisation — planifier un workflow Zapier, Make.com ou similaire pour appeler l’URL sur une base récurrente.
  • Cron serveur — appeler le point de terminaison depuis un cron Linux, le Planificateur de tâches Windows ou tout planificateur basé sur HTTP.

Ouvrez Paramètres de l’application → Cron Jobs pour gérer la liste.

  1. Cliquez sur Ajouter un cron job.
  2. Donnez-lui un Nom descriptif — c’est aussi le sujet de l’e-mail de notification.
  3. Saisissez éventuellement un E-mail de notification. Si renseigné, un e-mail récapitulatif est envoyé à cette adresse chaque fois que le cron job est déclenché. Laissez vide pour désactiver les notifications par e-mail.
  4. Cochez un ou plusieurs Postes de travail dans la liste. Seuls les journaux de temps actifs de ces Postes de travail seront fermés par cette URL.
  5. Cliquez sur Enregistrer.

Une URL de point de terminaison unique est générée automatiquement pour vous.

Cliquez sur l’icône crayon à côté d’un cron job pour modifier son nom ou ses affectations de Postes de travail. L’URL du point de terminaison reste la même — les intégrations existantes continuent de fonctionner.

Cliquez sur l’icône corbeille et confirmez. L’URL du point de terminaison cesse de fonctionner immédiatement. C’est permanent et ne peut pas être annulé.

Cliquez sur l’icône de copie à côté de l’URL. L’icône passe à une coche verte pendant un instant pour confirmer que l’URL est dans votre presse-papiers.


L’URL du point de terminaison accepte à la fois les requêtes GET et POST — choisissez celle qui est la plus facile pour votre planificateur. Aucun en-tête d’authentification n’est requis ; le jeton dans l’URL est l’identifiant.

curl

Fenêtre de terminal
curl https://your-board.example.com/cron/abc123xyz...

crontab Linux (fermer le poste tous les jours de la semaine à 17 h)

0 17 * * 1-5 curl -fsS https://your-board.example.com/cron/abc123xyz... > /dev/null

Zapier / Make.com / n8n — utilisez l’action intégrée Webhooks / HTTP Request et pointez-la vers l’URL.

Un déclenchement réussi renvoie une charge utile JSON comme :

{
"success": true,
"closed": 3,
"cron_job": "End of day - assembly"
}

closed est le nombre d’entrées de Suivi du temps actives qui ont été arrêtées.

Si le cron job n’a aucun Poste de travail assigné, la réponse sera :

{
"success": true,
"closed": 0,
"message": "No workstations assigned."
}

Quand le point de terminaison est appelé, le système :

  1. Trouve chaque entrée de Suivi du temps active (un minuteur démarré sans heure d’arrêt) dont le Poste de travail est assigné à ce cron job.
  2. Définit stopped_at à l’heure actuelle et enregistre la durée écoulée.
  3. Écrit une entrée de journal automatique sur chaque tâche affectée, notée Auto-closed by cron job: {name}, afin que le temps enregistré soit préservé sur le journal du Poste de travail.
  4. Met à jour l’horodatage Dernière exécution du cron job.
  5. Si un E-mail de notification est défini, envoie un e-mail récapitulatif (voir ci-dessous).

Les entrées qui ne sont pas actives (minuteurs déjà arrêtés ou s’exécutant sur des Postes de travail non inclus dans la liste de ce cron) ne sont pas touchées.


Si le champ E-mail de notification sur un cron job est renseigné, chaque déclenchement de ce point de terminaison envoie un e-mail récapitulatif à cette adresse.

L’e-mail contient :

  • Sujet — le Nom du cron job, exactement tel que configuré.
  • Déclenché à — la date et l’heure d’exécution du déclenchement.
  • Journaux fermés — un tableau listant chaque entrée de Suivi du temps active qui a été fermée, avec le nom de l’employé, le Poste de travail et la durée écoulée.

Si aucune entrée active n’a été trouvée au moment du déclenchement, l’e-mail est tout de même envoyé mais le corps indique qu’aucun journal n’a été fermé. C’est utile comme heartbeat pour confirmer que le planificateur se déclenche.

Exemple de corps d’e-mail :

Déclenché à : 2026-05-26 17:00:03

Journaux fermés (2) :

EmployéPoste de travailDurée
Jan KowalskiAssemblage 13h 12min
Anna NowakCabine de peinture45min

Pour désactiver les notifications par e-mail, effacez simplement le champ sur le cron job et enregistrez.

La livraison d’e-mail utilise le même transport de messagerie (SMTP, etc.) configuré pour le reste de l’application. Si la livraison échoue pour une raison quelconque, l’échec est journalisé et la réponse de déclenchement renvoie tout de même un succès — fermer les journaux de temps n’est pas bloqué par des problèmes de messagerie.


  • L’URL du point de terminaison contient un jeton aléatoire de 40 caractères et est la seule chose qui se trouve entre l’Internet public et l’action. Traitez-la comme un mot de passe.
  • Si une URL est divulguée, supprimez le cron job — cela révoque l’URL immédiatement — et créez-en un nouveau pour émettre une nouvelle URL.
  • Le point de terminaison est limité à 60 requêtes par minute par IP pour prévenir les abus.
  • L’action est par locataire : un jeton n’affecte jamais que les entrées de temps appartenant au locataire qui a créé le cron job.

  • Donnez à chaque cron job un nom qui reflète à la fois l’équipe et le planning (par exemple, « 17 h en semaine — assemblage ») afin que vous puissiez les distinguer d’un coup d’œil.
  • Utilisez un cron job différent par équipe plutôt qu’un seul gros — cela vous donne un contrôle plus fin sur les plannings et facilite la désactivation ou le changement de comportement pour une seule équipe.
  • Testez l’URL une fois manuellement (depuis votre navigateur ou curl) après l’avoir créée pour confirmer qu’elle renvoie une réponse success: true.