Grow with AppMaster Grow with AppMaster.
Become our partner arrow ico

Utilisation du planificateur de tâches dans AppMaster

Utilisation du planificateur de tâches dans AppMaster

Le planificateur de tâches dans le backend de l'application AppMaster, comme dans le cas classique du backend, crée des scénarios répétitifs. Par exemple, lorsque vous devez effectuer une action spécifique selon un calendrier. Un exemple classique de telles tâches est le nettoyage des fichiers temporaires sur le serveur, les sauvegardes hebdomadaires, la génération de rapports selon un algorithme donné, etc.

Considérons un exemple d'utilisation du planificateur de tâches dans le backend de l'application AppMaster. Supposons que vous vouliez construire un processus qui, chaque matin à 9h00, enverra à l'utilisateur la météo sur son numéro de téléphone mobile.

La tâche est donc divisée en plusieurs étapes logiques :

  • Installation et configuration du module d'envoi de messages mobiles.
  • Création et configuration d'un processus API de requête externe
  • Mise en place d'un planificateur dans le backend de l'application.

1. Installation et configuration du module d'envoi de messages mobiles Le module Nexmo permet d'intégrer à l'application AppMaster la possibilité d'envoyer des SMS à un numéro sélectionné.

Nexmo module

  • API Key - clé API qui peut être obtenue dans votre compte Nexmo(https://dashboard.nexmo.com/settings);
  • API Secret - une clé privée qui est utilisée en conjonction avec la clé API pour identifier l'utilisateur. Vous pouvez également l'obtenir dans votre compte Nexmo(https://dashboard.nexmo.com/settings);
  • Du numéro - numéro spécifié lors de l'enregistrement dans votre compte Nexmo.

Les processus d'affaires suivants sont installés automatiquement avec l'installation du module :

  • Nexmo.Send SMS - permet d'envoyer des messages au numéro spécifié par le biais du module Nexmo.

module Nexmo :

  • Phone [phone] - le numéro de téléphone auquel le message sera envoyé ;
  • Content [string] - message texte ;

Nexmo Send SMS

2. La ressource web gratuite OpenWeather API sera utilisée comme source de données météorologiques(https://openweathermap.org/api). La première étape consiste à créer un modèle de demande API externe. Les modèles de demande API sont présentés dans la section Processus métier de l'onglet Demandes API externes. Pour créer un nouveau modèle, cliquez sur Créer une demande API.

Create API request AppMaster

Type de demande : GET

Adresse de la requête : https://api.openweathermap.org/data/2.5/weather

Paramètres de la requête :

  • Lat [string] - latitude
  • Lon [string] - longitude
  • Appid [string] - Clé API OpenWeather

Dans le cadre de cette tâche, nous ne nous intéressons qu'à quelques champs du corps de la réponse dans la partie principale(https://openweathermap.org/api/one-call-3).

  • Temp [float] - température
  • Temp_min [float] - température minimale
  • Temp_max [float] - température maximale
  • Pressure [float] - pression
  • Humidity [float] - humidité

Request GET AppMaster

3. Avant de configurer le planificateur de tâches, vous devez créer un processus métier qui recevra les informations météorologiques via l'API. Le processus d'entreprise se présente comme suit :

Business Process no-code AppMaster

  • Make Weather Query Model In - crée un modèle virtuel de paramètres de requête. Lon, lat - coordonnées de l'emplacement souhaité, appid - clé API du service OpenWeather ;
  • Demande API : Weather - le processus métier responsable de l'interaction avec l'API OpenWeather.
  • Expand Weather : Body Model Out - nécessaire afin de déployer le modèle de réponse Body

Business Process AppMaster

  • Expand Weather : Body Model Out_main - développe le modèle principal du corps de la requête-réponse Body afin d'obtenir la température (temp).
  • To String - convertit la valeur du champ temp en type de chaîne ;
  • Nexmo : Send SMS - envoie un message contenant des informations sur la température (Content) au numéro de téléphone spécifié (Phone).

Configurez un planificateur dans la section Processus d'affaires de l'onglet Planificateur.

Les paramètres du planificateur dans l'onglet Planificateur diffèrent en fonction de leur type.

Examinons chacun d'entre eux en détail

1. Daily - permet de configurer des planifications quotidiennes

Scheduler settings AppMaster

  • Heure - définit l'heure en UTC+0 à laquelle le planificateur démarrera le BP sélectionné ;
  • Jours de la semaine - définit les jours de la semaine où le planificateur doit travailler ;
  • Démarrage automatique - si la valeur est True, un nouveau BP ne démarrera pas si le précédent n'est pas terminé. Valeur par défaut : False.
  • Automatically retry - redémarre automatiquement le processus s'il a été interrompu/ne s'est pas lancé avec succès.

Réessayer le traitement des éléments ayant échoué - nombre de tentatives pour relancer le processus ;

Try AppMaster no-code today!
Platform can build any web, mobile or backend application 10x faster and 3x cheaper
Start Free

Wait before each retry attempt - délai avant chaque tentative de redémarrage du processus ;

  • Forcer la sortie - termine de manière forcée le processus s'il n'est pas terminé dans les quelques secondes. Vrai, par défaut. Le nombre de secondes avant l'achèvement est de 3 secondes, par défaut.

2. Monthly - planificateur mensuel

scheduler monthly planner

  • Time - définit l'heure en UTC+0 à laquelle le planificateur démarrera la BP sélectionnée ;
  • Jours de la semaine - consiste en deux paramètres :

Fréquence de répétition :

  • Chaque premier
  • Chaque deuxième
  • Tous les trois
  • Tous les quatre
  • Ce jour

Jour de la semaine - définit le jour de la semaine

  • Mois - le mois est déterminé
  • Auto Start (Démarrage automatique) - S'il est défini sur True, un nouveau PSU ne sera pas démarré s'il n'est pas terminé bientôt. Valeur par défaut : False.
  • Automatically retry - redémarre automatiquement le processus s'il a été interrompu/non démarré

Retenter le traitement des éléments ayant échoué - le nombre de redémarrages du processus ;

Wait before each retry - délai avant chaque tentative de redémarrage du processus ;

  • Force Quit - met fin à un processus s'il n'est pas terminé dans les quelques secondes qui suivent. Vrai, par défaut. Le nombre de secondes avant l'achèvement est de 3 secondes, par défaut.

3. Périodiquement - permet de configurer de manière flexible la fréquence de l'ordonnanceur.

scheduler periodically no code

  • Chaque - la possibilité de définir la répétitivité toutes les N secondes/minutes/heures/jours. Par défaut : toutes les 1 heure.
  • Démarrage automatique - si cette option est définie sur True, une nouvelle BP ne démarrera pas si la précédente n'est pas terminée. Valeur par défaut : False.
  • Automatically retry - redémarre automatiquement le processus s'il a été interrompu ou n'a pas été lancé avec succès.

Réessayer le traitement des éléments ayant échoué - nombre de tentatives pour relancer le processus ;

Wait before each retry attempt - délai avant chaque tentative de redémarrage du processus ;

  • Force quit - met fin de manière forcée au processus s'il n'est pas terminé dans les quelques secondes qui suivent. Vrai, par défaut. Le nombre de secondes avant l'achèvement est de 3 secondes, par défaut.

4. Après le démarrage de l'application - le planificateur de tâches à temps unique

scheduler after Starting App

  • Delay - définit le délai entre le démarrage de l'application et le démarrage. Par défaut - 0 sec
  • Automatically retry - redémarre automatiquement le processus s'il a été interrompu/ne s'est pas lancé avec succès

Réessayer le traitement des éléments ayant échoué - nombre de tentatives pour relancer le processus ;

Wait before each retry attempt - délai avant chaque tentative de redémarrage du processus ;

  • Force quit - met fin de manière forcée au processus s'il n'est pas terminé dans les quelques secondes qui suivent. Vrai, par défaut. Le nombre de secondes avant l'achèvement est de 3 secondes, par défaut.

5. Avant de terminer l'application - exécute le planificateur chaque fois que l'application se termine.

scheduler no code

  • Réessayer automatiquement - redémarre automatiquement le processus s'il a été interrompu ou n'a pas été lancé avec succès.

Réessayer le traitement des éléments ayant échoué - nombre de tentatives pour relancer le processus ;

Wait before each retry attempt - délai avant chaque tentative de redémarrage du processus ;

  • Forcer la sortie - termine de force le processus s'il n'est pas terminé dans quelques secondes. Vrai, par défaut. Le nombre de secondes avant l'achèvement est de 3 secondes, par défaut.

Dans l'onglet Params des paramètres de l'ordonnanceur, il est également possible de passer des paramètres à l'entrée BP lorsqu'elle est lancée par l'ordonnanceur :

Params no-code

Dans notre exemple, les paramètres du planificateur ressemblent à ceci :

  • Les messages seront envoyés tous les jours à 9 heures UTC+0.
  • Essaie automatiquement de redémarrer le processus 3 fois avec un délai de 10 minutes entre les tentatives si le processus n'a pas démarré immédiatement ;
  • Termine de force un processus s'il n'a pas été achevé dans les trois secondes.

scheduler no-code

Notre application vit et fonctionne dans le backend, donc pour qu'elle fonctionne, il suffit de la publier.

Postes connexes

Comment les plateformes de télémédecine peuvent augmenter les revenus de votre cabinet
Comment les plateformes de télémédecine peuvent augmenter les revenus de votre cabinet
Découvrez comment les plateformes de télémédecine peuvent augmenter les revenus de votre cabinet en offrant un meilleur accès aux patients, en réduisant les coûts opérationnels et en améliorant les soins.
Le rôle d'un LMS dans l'éducation en ligne : transformer l'apprentissage en ligne
Le rôle d'un LMS dans l'éducation en ligne : transformer l'apprentissage en ligne
Découvrez comment les systèmes de gestion de l’apprentissage (LMS) transforment l’éducation en ligne en améliorant l’accessibilité, l’engagement et l’efficacité pédagogique.
Principales caractéristiques à prendre en compte lors du choix d'une plateforme de télémédecine
Principales caractéristiques à prendre en compte lors du choix d'une plateforme de télémédecine
Découvrez les fonctionnalités essentielles des plateformes de télémédecine, de la sécurité à l'intégration, garantissant une prestation de soins de santé à distance transparente et efficace.
Commencez gratuitement
Inspiré pour essayer cela vous-même?

La meilleure façon de comprendre la puissance d'AppMaster est de le constater par vous-même. Créez votre propre application en quelques minutes avec un abonnement gratuit

Donnez vie à vos idées