Gestion des plages d’utilisation d’un capteur

Ce web-service permet de gérer les plages d’utilisation d’un capteur.

Paramètres HTTP

Paramètre

Valeur

Route

plagecapteur

Méthode

POST ou PUT

Contenu

une plage d’utilisation d’un capteur au format json

Droit de gestion

L’utilisateur doit posséder un des rôles ADM, POLE2, POLE3, POLE4 ou PREVI sur la station du capteur.

Règles techniques

Le site, la station hydro et le capteur doivent exister.

La station hydro doit dépendre du site hydro et le capteur de la station.

La date de début doit être inférieure à la date de fin d’utilisation.

Paramètre ActivePlageUtilCapteur

Si cet attribut est à true, cette plage va être insérée en PHyC.

Comme 2 capteurs de même grandeur ne peuvent être actifs en même temps, la PHyC va désactiver les plages des autres capteurs de même grandeur intersectant la nouvelle plage d’utilisation.

Si cet attribut est à false, la plage va être désactiver. Les observations du capteur sur cette plage ne remonteront plus à la station.

Recalcul

L’appel de ce web-service génère des recalculs asynchrones sur la période d’utilisation fournie.

Contenu de la requête HTTP

La requête HTTP doit contenir un json hydrométrie contenant la plage d’utilisation du capteur.

Format JSON

Schéma de validation
{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://phyc.org/ws/gererPlageUtilisationCapteur.json",
  "type": "object",
  "properties": {
    "Scenario": {
      "type": "object"
    },
    "RefHyd": {
      "type": "object",
      "properties": {
        "SitesHydro": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "CdSiteHydro": {"type": "string"},
              "StationsHydro": {
                "type": "array",
                "items": {
                  "type": "object",
                  "properties": {
                    "CdStationHydro": {"type":  "string"},
                    "Capteurs": {
                      "type": "array",
                      "items": {
                        "type": "object",
                        "properties": {
                          "CdCapteur": {"type":  "string"},
                          "PlagesUtilCapteur": {
                            "type": "array",
                            "items": {
                              "type": "object",
                              "properties": {
                                "DtDebPlageUtilCapteur": {"type":  "string", "format": "date-time"},
                                "DtFinPlageUtilCapteur": {"type":  "string", "format": "date-time"},
                                "ActivePlageUtilCapteur": {"type":  "boolean"}
                              },
                              "required": ["DtDebPlageUtilCapteur", "ActivePlageUtilCapteur"],
                              "additionalProperties": false
                            },
                            "minItems": 1
                          },
                          "CdCapteurAncienRef": {"type":  "string"}
                        },
                        "required": ["CdCapteur", "PlagesUtilCapteur"],
                        "additionalProperties": false
                      },
                      "minItems": 1
                    }
                  },
                  "required": ["CdStationHydro", "Capteurs"],
                  "additionalProperties": false
                }
              }
            },
            "required": ["CdSiteHydro", "StationsHydro"],
            "additionalProperties": false
          },
          "minItems": 1
        }
      },
      "required": ["SitesHydro"],
      "additionalProperties": false
    }
  },
  "required": ["Scenario", "RefHyd"],
  "additionalProperties": false
}
  • Les attributs RefHyd (associé à l’objet Refhyd) et Scenario sont obligatoires;

  • L’objet RefHyd ne doit contenir qu’un seul attribut SitesHydro associé à une liste non vide d’objets SiteHydro;

  • L’objet SiteHydro doit contenir obligatoirement les attributs CdSiteHydro et StationsHydro;

  • StationsHydro doit être une liste non vide d’objets StationHydro;

  • StationHydro doit contenir les attributs CdStationHydro et Capteurs;

  • Capteurs doit être une liste non vide d’objets Capteur;

  • Capteur oit contenir uniquement les attributes CdCapteur et PlagesUtilCapteur

  • PlagesUtilCapteur doit être une liste non vide d’objets PlageUtilCapteur

  • PlageUtilCapteur doit contenir obligatoiremen les attributs DtDebPlageUtilCapteur et ActivePlageUtilCapteur

  • PlageUtilCapteur peut contenir l’attribut DtFinPlageUtilCapteur.

Réponse du service

Le web-service renverra le json hydrométrie contenant la plage d’utilisation du capteur.

En fonction de la valeur ActivePlageUtilCapteur, le web-service rajoutera les attributs DtActivationPlageUtilCapteur et DtDesactivationPlageUtilCapteur.