Tous les produits
Search
Centre de documentation

IoT Platform:Soumettre un script pour analyser les données TSL

Dernière mise à jour :Aug 09, 2026

Cette rubrique explique comment rédiger et soumettre un script d'analyse des données du langage de spécification des objets (TSL) pour les produits dont le paramètre Type de données est défini sur Personnalisé. Elle fournit également des exemples de scripts permettant d'analyser les données de propriété ascendantes et descendantes.

Prérequis

Lors de la création du produit, vous avez défini le paramètre Type de données sur Custom. Pour plus d'informations, consultez la rubrique Créer un produit.

Contexte

Le paramètre Type de données est défini sur ICA Standard Data Format (Alink JSON). Dans ce cas, les appareils génèrent des données au format Alink JSON, puis les envoient à IoT Platform. Pour en savoir plus sur le format de données Alink JSON, consultez la rubrique Propriétés, événements et services des appareils.

Le paramètre Type de données est défini sur Custom. Dans ce scénario, IoT Platform utilise les scripts d'analyse de données que vous avez soumis pour convertir les données TSL ascendantes en données au format Alink JSON, et transforme les données TSL descendantes en données d'appareil dans un format personnalisé lors de la communication entre les appareils et IoT Platform.

Remarque

Cet exemple utilise les propriétés du module par défaut. Si vous utilisez un module personnalisé, vous devez spécifier chaque identifiant au format suivant : ${Module identifier}:${Property identifier}. Par exemple : model1:prop_int16.

Étape 1 : Rédiger un script

  1. Créer un produit. Dans la console IoT Platform, créez un produit et définissez le paramètre Data Type sur Custom.

  2. Ajouter une fonctionnalité TSL : Définissez un modèle TSL pour le produit.

    Dans cet exemple, trois propriétés sont définies. Le tableau suivant les décrit.

    Identifier

    Data type

    Valid value

    Read/write type

    prop_float

    FLOAT

    -100~100

    Read and write

    prop_int16

    INT32

    -100~100

    Read and write

    prop_bool

    BOOLEAN

    0: enabled and 1: disabled

    Read and write

    Le script analyse les données TSL ascendantes et descendantes en se basant sur le modèle TSL.

    Cet exemple spécifie la longueur des valeurs des paramètres utilisés pour la communication des données. Le tableau ci-dessous détaille ces longueurs.

    • Requêtes envoyées par les appareils pour signaler des données

      Parameter

      Number of bytes

      Frame Type

      1 byte

      The ID of the request

      4 bytes

      prop_int16

      2 bytes

      prop_bool

      1 byte

      prop_float

      4 bytes

    • Réponses aux requêtes de signalisation de données

      Parameter

      Number of bytes

      Frame Type

      1 byte

      The ID of the request

      4 bytes

      Result code

      1 byte

    • Requêtes de configuration des propriétés

      Parameter

      Number of bytes

      Frame Type

      1 byte

      The ID of the request

      4 bytes

      prop_int16

      2 bytes

      prop_bool

      1 byte

      prop_float

      4 bytes

    • Réponses aux requêtes de configuration des propriétés

      Parameter

      Number of bytes

      Frame Type

      1 byte

      The ID of the request

      4 bytes

      Result code

      1 byte

  3. Rédigez un script.

    1. Sur la page Products, localisez le produit à gérer et cliquez sur View dans la colonne Actions.

    2. Sur la page product details, cliquez sur Message Analysis.

    3. Sélectionnez un langage de programmation et rédigez le script dans le champ Edit Script.

      Supported scripting language

      The function that converts upstream data in a custom format to Alink JSON-formatted data:

      The function that converts Alink JSON-formatted data to downstream data in a custom format:

      Sample code

      JavaScript (ECMAScript 5)

      rawDataToProtocol

      protocolToRawData

      Exemple de script JavaScript

      Python 2.7

      raw_data_to_protocol

      protocol_to_raw_data

      Exemple de script Python

      PHP 7.2

      rawDataToProtocol

      protocolToRawData

      Exemple de script PHP

      Remarque

      Vous devez rédiger un script capable d'analyser les données envoyées vers des rubriques personnalisées. Pour savoir comment écrire ce script, consultez la rubrique Soumettre un script d'analyse de messages.

      Pour consulter les exemples complets de scripts permettant d'analyser les données envoyées vers des rubriques personnalisées ainsi que les données TSL, reportez-vous aux rubriques suivantes : Exemple de code JavaScript pour l'analyse de données personnalisées, Code complet d'exemple pour l'analyse de données de transmission ou personnalisées en Python et Exemple de code PHP pour l'analyse de données personnalisées.

Étape 2 : Tester le script en ligne

Important

La chaîne hexadécimale et les données au format JSON spécifiées et renvoyées dans cet exemple servent uniquement aux tests et ne peuvent pas être utilisées pour le débogage dans des scénarios réels.

Une fois le script rédigé, configurez le paramètre Simulation Type et spécifiez les données simulées dans l'onglet Input Simulation pour tester le script.

  • Testez le script en utilisant des données de propriété simulées qu'un appareil envoie à IoT Platform.

    Définissez le paramètre Simulation Type sur Upstreamed Device Data, saisissez les données simulées suivantes, puis cliquez sur Run.

    Remarque

    Cet exemple utilise des données JavaScript simulées. Pour plus d'informations sur les exemples de scripts JavaScript, consultez la rubrique Exemple de script JavaScript.

    Pour consulter les exemples de scripts Python et PHP, reportez-vous aux rubriques Exemple de script Python et Exemple de script PHP.

    Vous pouvez utiliser un outil de conversion de chaînes en données hexadécimales pour transformer les données au format JSON en données hexadécimales. Par exemple, si les données hexadécimales converties sont 00002233441232013fa00000, spécifiez les données suivantes :

    0x00002233441232013fa00000

    Le moteur d'analyse de données convertit les données de transmission en données au format JSON selon les règles définies dans le script.

    Cliquez sur Parsing Results. L'onglet Parsing Results affiche les données analysées.

    {
        "method": "thing.event.property.post", 
        "id": "2241348", 
        "params": {
            "prop_float": 1.25, 
            "prop_int16": 4658, 
            "prop_bool": 1
        }, 
        "version": "1.0"
    }
  • Testez le script en utilisant les données de résultat simulées que IoT Platform renvoie à un appareil.

    Définissez le paramètre Simulation Type sur Received Device Data, saisissez les données au format JSON suivantes, puis cliquez sur Run.

    {
      "id": "12345",
      "version": "1.0",
      "code": 200,
      "method": "thing.event.property.post",
      "data": {}
    }

    Le moteur d'analyse de données convertit les données au format JSON en les données suivantes :

    0x0200003039c8
  • Testez le script en utilisant des données simulées que IoT Platform envoie à un appareil pour lui demander de modifier ses propriétés.

    Définissez le paramètre Simulation Type sur Received Device Data, saisissez les données au format JSON suivantes, puis cliquez sur Run.

    {
        "method": "thing.service.property.set", 
        "id": "12345", 
        "version": "1.0", 
        "params": {
            "prop_float": 123.452, 
            "prop_int16": 333, 
            "prop_bool": 1
        }
    }

    Le moteur d'analyse de données convertit les données au format JSON en les données suivantes :

    0x0100003039014d0142f6e76d
  • Testez le script en utilisant les données de résultat simulées qu'un appareil renvoie à IoT Platform après avoir modifié ses propriétés.

    Définissez le paramètre Simulation Type sur Upstreamed Device Data, saisissez les données suivantes, puis cliquez sur Run.

    0x0300223344c8

    Le moteur d'analyse de données convertit les données de transmission en les données au format JSON suivantes :

    {
      "code": "200",
      "data": {},
      "id": "2241348",
      "version": "1.0"
    }

Étape 3 : Soumettre le script

Important

Avant que IoT Platform puisse exécuter les scripts, vous devez les lui soumettre. Les scripts à l'état Brouillon ne peuvent pas être appelés.

Lorsque vous avez confirmé que le script analyse les données comme prévu, cliquez sur Submit pour soumettre le script à IoT Platform. IoT Platform pourra alors utiliser ce script pour analyser les données ascendantes et descendantes.

Étape 4 : Utiliser un appareil physique pour le débogage

Avant d'utiliser le script dans votre environnement de production, faites communiquer un appareil physique avec IoT Platform. Cela vous permettra de vérifier que IoT Platform peut appeler le script et analyser correctement les données ascendantes et descendantes.

Vous pouvez utiliser un SDK Link IoT Platform pour configurer un appareil et le connecter à IoT Platform. Pour plus d'informations, consultez la rubrique Link SDK.

  • Vérifiez que IoT Platform peut appeler le script pour analyser les données de propriété ascendantes.

    1. Utilisez l'appareil pour envoyer des données de propriété à IoT Platform, par exemple 0x00002233441232013fa00000.

    2. Dans la console IoT Platform, sélectionnez Devices > Devices dans le volet de navigation de gauche.

    3. Sur la page Devices, localisez l'appareil et cliquez sur View dans la colonne Actions. Sur la page Device Details, cliquez sur l'onglet TSL Data, puis sur l'onglet Status. Vérifiez si les données de propriété signalées sont présentes.

  • Vérifiez que IoT Platform peut appeler le script pour analyser les données de propriété descendantes.

    1. Connectez-vous à la console IoT Platform. Dans le volet de navigation de gauche, sélectionnez Maintenance > Online Debug.

    2. Sur la page Online Debug, sélectionnez le produit et l'appareil à déboguer, puis choisissez Default Module. Sélectionnez l'identifiant de la propriété à déboguer, par exemple prop_int16. Définissez la méthode sur Set. Saisissez les données suivantes et cliquez sur Send Command.

      {
          "method": "thing.service.property.set", 
          "id": "12345", 
          "version": "1.0", 
          "params": {
              "prop_float": 123.452, 
              "prop_int16": 333, 
              "prop_bool": 1
          }
      }
    3. Vérifiez que l'appareil a reçu la commande de configuration des propriétés.

    4. Sur la page Device Details, sélectionnez TSL Data > Status. Sur l'onglet qui s'affiche, vérifiez si les données actuelles des propriétés ont été signalées par l'appareil.

(Facultatif) Mettre à jour le script d'analyse de messages

Après avoir soumis un script d'analyse de messages, vous pouvez revenir à l'onglet Message Parsing pour modifier ou supprimer le script. Suivez les étapes de la section Procédure pour tester et soumettre vos modifications. Les changements prennent effet en environ une minute. Le script mis à jour s'applique à tous les appareils existants et nouveaux associés au produit.

Avertissement
  • Si vous modifiez et resoumettez le script, vous devez également mettre à jour la logique métier associée au service d'analyse de messages. Sinon, vos services risquent d'être interrompus.

  • Si vous supprimez le script, le service d'analyse de messages pour les appareils associés au produit devient indisponible. Cela peut perturber vos services.

Agissez avec prudence.

Références