Compteur en Python via mx API REST - V1

Analyse de la requête API REST

Paramétrage de la requête JSON (Swagger) :

 :

1
{
2
  "assetCode": "PDG-ESSAIS-01",
3
  "dateTime": "2024-01-01T08:00:00.000Z",
4
  "name": "KM_CPT_PDG_ESSAIS_01",
5
  "unitCode": "Km",
6
  "userName": "GIM12",
7
  "value": 20000
8
}

Requête CURL

1
curl -X 'POST' \
2
  'https://prod.mydimomaintmx.cloud/IUT_EHC/connector/Asset/MeterUpdate' \
3
  -H 'accept: application/json' \
4
  -H 'X-API-Key: API_KEY' \
5
  -H 'Content-Type: application/json' \
6
  -d '{
7
  "assetCode": "PDG-ESSAIS-01",
8
  "dateTime": "2024-01-01T08:00:00.000Z",
9
  "name": "KM_CPT_PDG_ESSAIS_01",
10
  "unitCode": "Km",
11
  "userName": "GIM12",
12
  "value": 20000
13
}'

AttentionUtilisation du code ci-dessous

Attention à modifier le code en l'appliquant à un autre équipement (code ZZ- ? ? ? ? ?) qui serait sous votre niveau d'arborescence étudiant (22BL - Nom etudiant) sous E-ETU.

Le compteur doit aussi être ajouté au niveau de votre équipement (le coder systématiquement avec ZZ-{reste du code})

Ensuite, vous pourrez exécuter ce code en saisissant éventuellement plusieurs valeurs proportionnellement dans le temps.

Code en python avec des variables et une procédure

1
import requests
2
import os
3
4
def AssetAjouteCompteur(assetCode, dateTime, name, unitCode, userName, value):
5
    api_key = os.getenv('API_MX')
6
    url = 'https://prod.mydimomaintmx.cloud/IUT_EHC/connector/Asset/MeterUpdate'
7
    headers = {
8
        'accept': 'application/json',
9
        'X-API-Key': api_key,
10
        'Content-Type': 'application/json'
11
    }
12
    data = {
13
        'assetCode': assetCode,
14
        'dateTime': dateTime,
15
        'name': name,
16
        'unitCode': unitCode,
17
        'userName': userName,
18
        'value': value
19
    }
20
    response = requests.post(url, headers=headers, json=data)
21
    response.raise_for_status()
22
    return response.json()
23
Asset = "PDG-ESSAIS-01"
24
Date = "2024-01-02T08:00:00"
25
Valeur = "20100"
26
27
reponse = AssetAjouteCompteur(Asset, Date, "KM_CPT_PDG_ESSAIS_01", "Km", "GIM12", Valeur)
28
print (reponse)