Tous les produits
Search
Centre de documentation

IoT Platform:Créer une tâche personnalisée

Dernière mise à jour :Aug 10, 2026

Si les tâches de configuration par lot ou les appels de service par lot ne répondent plus à vos besoins métier, créez des tâches personnalisées et configurez des règles sur mesure pour couvrir divers scénarios. Cette rubrique explique comment créer une tâche personnalisée et consulter ses informations. Elle décrit également les topics utilisés lors de l'exécution de la tâche ainsi que les formats de message correspondants.

Prérequis

Une tâche doit être déployée sur un appareil et la fonctionnalité de gestion associée doit être développée. Pour plus d'informations, consultez la rubrique Présentation.

Processus de gestion des tâches

  1. Créez une tâche personnalisée.

    1. Dans la console IoT Platform, accédez à votre instance. Dans le volet de navigation de gauche, sélectionnez Maintenance > Tasks. Sur la page Tasks, cliquez sur Create Task.

    2. Sur la page Create Task, configurez les paramètres dans les étapes Create Task et Task Schedule. Ensuite, cliquez sur Complete. Placez le pointeur sur l'icône 帮助 située à côté d'un paramètre pour afficher les informations relatives à ce dernier.

      • Create Task

        Parameter

        Description

        Task Name

        Spécifiez un nom valide pour la tâche. Vous pouvez définir un nom personnalisé.

        Task Type

        Définissez le paramètre sur Custom Task.

        Task Description

        Indiquez des informations telles que l'objectif de la tâche, ce qui permet d'identifier facilement les tâches.

        Destination Device, Product, or Group

        Sélectionnez les appareils cibles de la tâche. Le choix peut se faire par appareil, produit ou groupe.
        Important Si vous sélectionnez les appareils par groupe, vous ne pouvez pas choisir un groupe dynamique.

        Task Execution Rules Issued to Devices

        Téléchargez un fichier de règles. Celui-ci doit être au format JSON et ne pas dépasser 64 Ko.

        Cliquez sur Download Template pour obtenir un modèle de règle. Le code suivant illustre le contenu du fichier :

        {
                "key":"value"
            }
        • key : ID d'un champ personnalisé. Type de données : String.

        • value : Valeur correspondant à la key. La valeur doit être au format JSON.

        File Signature Algorithm

        Algorithme de signature. Valeurs valides : MD5 et SHA256.

        Ce paramètre est facultatif. Il s'utilise conjointement avec le paramètre Task File Issued to Devices.

        Task File Issued to Devices

        Téléchargez un fichier pour la tâche personnalisée.

        Ce paramètre est facultatif. Il s'utilise conjointement avec le paramètre File Signature Algorithm.

        Les formats de fichiers suivants sont pris en charge : .bin, .apk, .tar, .gz, .zip, .gzip et .tar.gz. La taille du fichier ne doit pas excéder 1 000 Mo.

        Important

        Vous pouvez créer un fichier de règles personnalisé et spécifier un contenu adapté aux appareils selon vos besoins métier. Vous devez développer la logique d'implémentation des règles de tâche ainsi que le contenu destiné aux appareils spécifiés.

      • Task Configuration

        Parameter Description
        Job execution push configuration
        • Jobs per minute : définissez le nombre de jobs à envoyer par minute.
        • Push message type : s'applique uniquement aux tâches personnalisées et aux tâches Pub Batch Message Push.

          Valeurs valides :

          • QoS 0 : livraison au plus une fois.
          • QoS 1 : livraison au moins une fois. Si aucun message PUBACK n'est reçu pour un message QoS 1, IoT Platform renvoie le message à l'appareil lors de sa reconnexion.
        Job execution timeout configuration Facultatif. Si aucun délai d'expiration n'est défini, le job s'exécute indéfiniment. Ce paramètre s'applique uniquement aux tâches personnalisées.

        Le compte à rebours démarre lorsque le job passe à l'état In Progress. Si le job n'est pas terminé avant l'expiration du délai, son statut devient Timed Out et l'exécution s'arrête.

        Job start time
  2. Une fois la tâche créée, IoT Platform envoie les informations de tâche aux appareils spécifiés via le topic /sys/{productKey}/{deviceName}/thing/job/notify.

    Exemple de message :

    {
        "id": "7542940",
        "version": "1.0",
        "params": {
            "task": {
                "taskId": "i5Ks6***pF010101",
                "status": "SENT",
                "jobDocument": {},
                "jobFile":{
                    "signMethod":"Md5",
                    "sign":"wssxff56dhdsd***",
                    "fileUrl": "https://iotx-***.oss-cn-shanghai.aliyuncs.com/***.zip"
                }
            }
        }
    }

    Le paramètre jobDocument spécifie le contenu d'un fichier de règles.

    Tableau 1. Description des paramètres de requête

    Parameter

    Type

    Description

    id

    String

    ID du message. Doit être une chaîne numérique unique sur l'appareil. Valeurs valides : 0 à 4294967295.

    version

    String

    Version du protocole. Définissez ce paramètre sur 1.0.

    params

    Object

    Paramètres de la requête métier.

    task

    Object

    Paramètres de la sous-tâche.

    taskId

    String

    ID de la sous-tâche, identifiant unique global.

    status

    String

    Statut de la sous-tâche.

    • SENT : planifiée.

    • REMOVED : supprimée.

    • CANCELLED : annulée.

    jobDocument

    Object

    Document de job décrivant les règles d'exécution de la tâche.

    Remarque

    Si le champ status est REMOVED ou CANCELLED, ce champ est vide.

    jobFile

    Object

    Informations sur le fichier téléchargé lors de la création d'une tâche personnalisée.

    • signMethod : méthode de signature. Les valeurs Md5 et Sha256 sont actuellement prises en charge.

    • sign : paramètre de signature généré selon la méthode correspondante.

    • fileUrl : URL de téléchargement du fichier de tâche, valable pendant 1 heure.

    Remarque

    ```html

    Si le champ status est REMOVED ou CANCELLED, ce champ est vide.

  3. Les appareils exécutent le contenu du fichier de règles selon la logique de la tâche personnalisée.

    Si un appareil spécifié est hors ligne et ne peut pas recevoir les informations de tâche, il peut demander les tâches exécutables via le topic /sys/{productKey}/{deviceName}/thing/job/get une fois reconnecté. L'appareil peut ensuite récupérer les détails de la tâche personnalisée afin de la finaliser.

    Exemple de requête pour obtenir les tâches exécutables :

    {
        "id": "123",
        "version": "1.0",
        "params": {
            "taskId": "$list"
        }
    }

    Exemple de requête pour obtenir les informations d'une tâche :

    {
        "id": "123",
        "version": "1.0",
        "params": {
            "taskId": "i5Ks***F010101"
        }
    }

    Tableau 3. Description des paramètres de requête

    Parameter

    Type

    Description

    id

    String

    ID du message. Doit être une chaîne numérique unique sur l'appareil. Valeurs valides : 0 à 4294967295.

    version

    String

    Version du protocole. Définissez ce paramètre sur 1.0.

    params

    Object

    Paramètres de la requête métier.

    taskId

    String

    Trois méthodes de valeur permettent de renvoyer les informations de tâche avec différents statuts.

    • ID de la sous-tâche : renvoie les détails de la tâche correspondant à l'ID de job.

    • $next : renvoie les informations d'une tâche exécutable.

    • $list : renvoie une liste des tâches exécutables, avec un maximum de 10 par défaut.

    Après réception de la requête, IoT Platform envoie une réponse à l'appareil concerné via le topic /sys/{productKey}/{deviceName}/thing/job/get_reply.

    Exemple de réponse incluant les tâches renvoyées :

    {
        "id": "1234",
        "code": 200,
        "data": {
            "statusDetails":{"devs":"test","status":"init"},
            "taskId": "$list",
            "task":[
                {
                    "taskId": "i5Ks***",
                    "status": "IN_PROGRESS"
                },
                {
                    "taskId": "i61s***",
                    "status": "IN_PROGRESS"
                }
            ]
        }
    }

    Exemple de réponse incluant les informations d'une tâche :

    {
        "id": "1234",
        "code": 200,
        "data": {
            "statusDetails":{"devs":"test","status":"init"},
            "taskId": "i5Ks***F010101",
            "task":{
                "taskId": "i5Ks***F010101",
                "status": "IN_PROGRESS",
                "jobDocument": {},
                "jobFile":{
                    "signMethod":"Md5",
                    "sign":"wssxff56dhdsd***",
                    "fileUrl": "https://iotx-***.oss-cn-shanghai.aliyuncs.com/***.zip"
                }
            }
        }
    }
  4. Pendant l'exécution de la tâche, l'appareil spécifié soumet la progression de celle-ci à IoT Platform via le topic /sys/{productKey}/{deviceName}/thing/job/update.

    Exemple de message :

    {
        "id": "123",
        "version": "1.0",
        "params": {
            "taskId": "i5Ks***F010101",
            "status": "IN_PROGRESS",
            "statusDetails": {
                "key": "value"
            },
            "progress": 50
        }
    }

    Tableau 5. Description des paramètres de requête

    Parameter

    Type

    Description

    id

    String

    ID du message. Doit être une chaîne numérique unique sur l'appareil. Valeurs valides : 0 à 4294967295.

    version

    String

    Version du protocole. Définissez ce paramètre sur 1.0.

    params

    Object

    Paramètres de la requête métier.

    taskId

    String

    ID de la sous-tâche, identifiant unique global.

    status

    String

    Statut de la sous-tâche. Valeurs valides :

    • SUCCEEDED : terminée avec succès.

    • FAILED : échec de l'exécution.

    • IN_PROGRESS : en cours d'exécution.

    • REJECTED : exécution rejetée.

    statusDetails

    Object

    Détails de statut personnalisables définis par l'utilisateur. Ils sont visibles sur la page Device Management > Tasks > Task Details de la console IoT Platform.

    progress

    Integer

    Pourcentage d'avancement de l'exécution de la sous-tâche.

  5. Sur la page Maintenance > Tasks de votre instance, consultez les tâches créées et leur statut actuel.

    Important

    Une tâche dont le statut est

    timed out

    ne peut pas être replanifiée pour exécution.

    Le minuteur démarre à la création de la tâche. Si toutes les sous-tâches ne sont pas terminées dans un délai de sept jours, le statut de la tâche passe à timed out.

    Vous pouvez effectuer les opérations suivantes :

    • Annulez une tâche dont le statut est processing.

    • Cliquez sur View à côté d'une tâche pour ouvrir sa page de détails, où vous pouvez consulter les informations de tâche et les statistiques d'exécution des sous-tâches.

      Tab Description
      Task Information Consultez les informations de tâche, modifiez la description de la tâche et la configuration des sous-tâches, et téléchargez le fichier de tâche de l'appareil.
      Task Summary Affichez les statistiques des sous-tâches regroupées par statut.
      • Cliquez sur View à côté d'un appareil pour accéder à sa page Device Details :
        • Dans l'onglet Task, affichez la liste de toutes les tâches de l'appareil.
        • Dans l'onglet Device Log, cliquez sur Go to View. Dans l'onglet cloud run log, sélectionnez cloud-to-device message dans la liste déroulante workload type pour afficher les journaux des tâches de l'appareil.
      • En cas d'échec d'une sous-tâche, cliquez sur Execution Details pour voir la cause de l'échec.
      • Si une sous-tâche est dans l'état timed out ou failed, cliquez sur le bouton de statut correspondant pour afficher la liste des sous-tâches dans cet état.

        Cliquez sur Rerun au-dessus de la liste pour relancer toutes les sous-tâches ayant expiré ou échoué pour la tâche actuelle.

    • Cliquez sur Delete à côté de la tâche cible, puis sur OK.

      Avertissement

      La suppression d'une tâche d'appareil efface toutes les données associées. Si des services dépendent de cette tâche, ils peuvent devenir indisponibles ou votre activité risque d'être impactée. Agissez avec prudence.