Rozdíly
Zde můžete vidět rozdíly mezi vybranou verzí a aktuální verzí dané stránky.
cs:mervis-scada:50-api [2021/04/06 10:22] l.osladil [api/v3/get/history] |
cs:mervis-scada:50-api [2024/05/08 10:42] |
||
---|---|---|---|
Řádek 1: | Řádek 1: | ||
- | ====== API ====== | ||
- | |||
- | Mervis SCADA nabízí otevřené REST-like API postavené na JSON a XML formátech dat. Pro kompletní popis API kontaktujte naši [[cs: | ||
- | |||
- | ===== Přehled základních API metod ===== | ||
- | |||
- | ^Function^Description| | ||
- | |||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^api/ | ||
- | ^/ | ||
- | |||
- | |||
- | ===== Příklad ===== | ||
- | |||
- | ====api/ | ||
- | |||
- | **Request** | ||
- | |||
- | * URL: https:// | ||
- | * Method: POST | ||
- | |||
- | **Request** | ||
- | |||
- | <code javascript> | ||
- | {" | ||
- | </ | ||
- | |||
- | **Response** | ||
- | |||
- | <code xml> | ||
- | <?xml version=" | ||
- | < | ||
- | </ | ||
- | |||
- | * Získaný token **t** lze použít místo dvojice jméno/ | ||
- | |||
- | ====api/ | ||
- | |||
- | **Request** | ||
- | |||
- | * URL: / | ||
- | * Method: POST | ||
- | * V ukázkách je vždy za dvěma lomítky uvedený typ property | ||
- | * V sekci credentials se lze místo " | ||
- | * “seriesParameters” - se uvádí jen pokud chceme rozdílné hodnoty jak v “commonSeriesParameters” | ||
- | * “clientReference” - slouží jen pro dodatečnou identifikaci DP pro klienta | ||
- | * v sekci “provider” se properta “id” nemusí zadávat | ||
- | * sekce “segmenation” s “requestState” a “serverState” se vyplňují podle poslední odpovědi k dané historii a jsou nutné pro správné fungování(offsety atd). Tj. pro první volání se tyto hodnoty neuvádějí. | ||
- | |||
- | |||
- | <code javascript> | ||
- | { | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | } | ||
- | }, | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | } | ||
- | } | ||
- | ] | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | } | ||
- | </ | ||
- | |||
- | **Response** | ||
- | |||
- | * Dokud je v response v sekci “segmentation” uveden “requestState” existují v daném rozsahu další historie. | ||
- | * “requestState” a “serverState” je nutné do dalšího případného dotazu na historii předat. | ||
- | * Ve values se může objevit properta “i” která značí interval pro danou hodnotu. | ||
- | * Hodnota historie(properta “v”) může být více druhů(typů). | ||
- | |||
- | <code javascript> | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | ] | ||
- | }, | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | ] | ||
- | } | ||
- | ] | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | } | ||
- | |||
- | |||
- | </ | ||
- | |||
- | **Funkční demo** | ||
- | <code javascript> | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | } | ||
- | }, | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | } | ||
- | } | ||
- | ] | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | } | ||
- | } | ||
- | |||
- | </ | ||
- | ====api/ | ||
- | |||
- | **Request** | ||
- | |||
- | * URL: / | ||
- | * Method: POST | ||
- | |||
- | <code javascript> | ||
- | { | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | </ | ||
- | |||
- | **Response** | ||
- | |||
- | <code xml> | ||
- | <?xml version=" | ||
- | < | ||
- | <hist projId=" | ||
- | < | ||
- | < | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | </ | ||
- | </ | ||
- | </ | ||
- | |||
- | |||
- | </ | ||
- | |||
- | |||
- | ====api/ | ||
- | |||
- | **Request** | ||
- | |||
- | * URL: / | ||
- | * Method: POST | ||
- | * Content-Type: | ||
- | |||
- | Atribut **i** nastavuje **interval** ([[https:// | ||
- | |||
- | V **cred** lze použít i ověření pomocí jména a hesla, ale využití **tokenu** nabízí vyšší výkon. | ||
- | |||
- | Všechny časové údaje jsou očekávány v UTC. | ||
- | |||
- | <code xml> | ||
- | <?xml version=" | ||
- | < | ||
- | xmlns: | ||
- | xmlns: | ||
- | projId=" | ||
- | dpId=" | ||
- | <n2:cred t=" | ||
- | < | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | <hv ts=" | ||
- | < | ||
- | </hv> | ||
- | </ | ||
- | </ | ||
- | |||
- | **Response** | ||
- | |||
- | * 200 OK | ||
- | |||
- | ====api/ | ||
- | |||
- | **Request** | ||
- | |||
- | * URL: / | ||
- | * Method: POST | ||
- | * Content-Type: | ||
- | |||
- | <code xml> | ||
- | <?xml version=" | ||
- | < | ||
- | xmlns: | ||
- | xmlns: | ||
- | xmlns: | ||
- | <n1:cred t=" | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | < | ||
- | </ | ||
- | </ | ||
- | < | ||
- | </ | ||
- | </ | ||
- | </ | ||
- | </ | ||
- | |||
- | **Response** | ||
- | |||
- | <code xml><? | ||
- | < | ||
- | |||
- | ====api/ | ||
- | |||
- | Nejvhodnější způsob vyčtení aktuálních hodnot datových bodů (property " | ||
- | |||
- | **Request** | ||
- | |||
- | * URL: / | ||
- | * Method: POST | ||
- | |||
- | <code javascript> | ||
- | { | ||
- | " | ||
- | " | ||
- | }, | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | " | ||
- | } | ||
- | ] | ||
- | } | ||
- | |||
- | </ | ||
- | |||
- | **Response** | ||
- | |||
- | <code xml><? | ||
- | <values xmlns: | ||
- | < | ||
- | <v projId=" | ||
- | < | ||
- | <d id=" | ||
- | < | ||
- | <p n=" | ||
- | < | ||
- | </p> | ||
- | </ | ||
- | </d> | ||
- | <d id=" | ||
- | < | ||
- | <p n=" | ||
- | < | ||
- | </p> | ||
- | </ | ||
- | </d> | ||
- | </ | ||
- | </v> | ||
- | </ | ||
- | </ | ||
- | |||
- | |||