Podrobnější informace o rozhraní API
VŠEOBECNÉ
- Příkazy webové služby podporují interní i externí přístup.
- Současný Miniserver podporuje také protokol HTTPS.
Struktura příkazu webové služby je následující:
http://user:password@IPAddressMiniserver/command/control/value
Z bezpečnostních důvodů se při použití protokolu HTTP (Miniserver Gen.1) doporučuje při zadávání příkazu do adresního řádku vynechat přístupové údaje. Místo toho vás prohlížeč vyzve k zadání přihlašovacích údajů v samostatném okně.
Některé příkazy vyžadují uživatele s plným přístupem.
Po provedení příkazu se výsledek zobrazí v prohlížeči.
Následující příkaz například zjistí aktuální verzi softwaru Miniserveru:
Pokud je příkaz úspěšný, odpověď bude obsahovat stavový kód „200“, který znamená, že požadavek byl přijat a zpracován.
Struktura v detailu
- control: může být jakýkoli vstup nebo výstup, skutečný nebo virtuální. Výstupy lze použít pouze pro stavové požadavky.
- value: pokud není k dispozici ‚value‘, je vrácena aktuální hodnota ovládacího prvku.
- Pro digitální hodnoty jsou povoleny následující hodnoty:
- „Ein„, „On„, „Aus„, „Off„, „1„, „0„, „Impuls“ nebo „Pulse„.
- Pro digitální hodnoty jsou povoleny následující hodnoty:
- Virtuální digitální vstupy se 2 výstupy (nahoru-dolů, vlevo-vpravo, počínaje verzí 1.5.4.16), jsou povoleny tyto hodnoty.
ImpulsPlus
ImpulsMinus |
PulseUp
PulseDown |
ImpulsAuf
ImpulsAb |
PulseOpen
PulseClose |
PlusEin
PlusAus |
UpOn
UpOff |
AufEin
AufAus |
OpenOn
OpenOff |
MinusEin
MinusAus |
DownOn
DownOff |
AbEin
AbAus |
CloseOff
CloseOff |
-
- Pro analogové vstupy jsou povoleny následující hodnoty:
- (0-10V) vstupy pracují v rozsahu 0 až 10.00.
- Neexistuje žádné formální omezení (např. platí teploty 21.5 nebo -5.2).
- Jako desetinný oddělovač se používá tečka (
.
).
- Pro textové vstupy jsou povoleny následující hodnoty:
- Miniserver pracuje s UTF-8, takže všechny znaky podporované UTF-8 by měly fungovat správně.
- Pro analogové vstupy jsou povoleny následující hodnoty:
Příklad – Pulse Input
Před odesláním impulsu do systému potřebuje váš Miniserver virtuální vstup, který příkaz přijme.
Jakmile máme náš virtuální vstup přidaný a uložený v Miniserveru, je třeba odeslat příkaz. Níže je uveden příklad aplikace třetí strany*, která do serveru Loxone Miniserver odešle příkaz s impulsem:
V tomto příkladu máme výchozí uživatelské údaje (uživatelské jméno: admin, heslo: admin) a virtuální vstup v příkazu, který má název „Test Input“. Po stisknutí tlačítka ‚Send‘ v aplikaci řetězec pomocí IP adresy vyhledá Miniserver v síti, přihlásí se a poté zpracuje příkaz.
Pokud je příkaz k odeslání přijat, vrátí se odpověď ve formátu XML:
V Loxone Config se také na zlomek sekundy rozsvítí virtuální vstup, pokud je aktivní „Live View“:
*V těchto příkladech je Postman aplikací třetí strany, která se používá k odesílání příkazů.
STAV A KONTROLA
DOTAZ: STAV OVLÁDACÍHO PRVKU
Příkaz | http://miniserver/dev/sps/io/LivingroomLight/state |
Funkce | Vrací stav na vstupu |
Odpověď | <LL control=“dev/sps/io/LivingroomLight“ value=“0″ Code=“200″/> |
Příkaz | http://miniserver/dev/sps/io/LivingroomLight/astate |
Funkce | Vrátí hodnotu na požadovaných výstupech (buď jedinečnou hodnotu pro všechny – nebo ? pro různé hodnoty). |
Odpověď | <LL control=“dev/sps/io/LivingroomLight“ value=“1″ Code=“200″/> |
Příkaz | http://miniserver/dev/sps/io/LivingroomLight/all |
Funkce | Vrací počet požadovaných výstupů a seznam hodnot na těchto výstupech. |
Odpověď | <LL control=“dev/sps/io/LivingroomLight/all“ value=“8″ Code=“200″
n1=“Aktor (Relais) Q1″ u1=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v1=“0″ n2=“Aktor (Relais) Q2″ u2=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v2=“0″ n3=“Aktor (Relais) Q3″ u3=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v3=“0″ n4=“Aktor (Relais) Q4″ u4=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v4=“0″ n5=“Aktor (Relais) Q5″ u5=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v5=“0″ n6=“Aktor (Relais) Q6″ u6=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v6=“1″ n7=“Aktor (Relais) Q7″ u7=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v7=“0″ n8=“Aktor (Relais) Q8″ u8=“68347a0e-3bfc-11df-85f6ea34eeb9b08a“ v8=“0″/> |
Příkaz | http://miniserver/status |
Funkce | Zobrazí seznam všech zařízení připojených k Miniserveru a jejich stav. |
Odpověď | <Status Modified=“ „><Miniserver Name=“LoxMiniserver“ Internalname=“ “ IP=“ “ Mask=“ “ Gateway=“ “ DHCP=“ “ DNS1=“ “ DNS2=“ “ MAC=“ “ Device=“ “ Version=“ „><Extension Name=“ “ Internalname=“ “ Serial=“ “ Version=“ “ Online=“ „/></Miniserver></Status> |
Status requests via web service are only possible with inputs and outputs and are not possible with function blocks.
PUSH BUTTON
Příkaz | http://miniserver/dev/sps/io/PushbuttonLivingRoomLight/On |
Funkce | Ovládání analogového nebo digitálního vstupu |
Odpověď | <LL control=“dev/sps/io/PushbuttonLivingRoomLight“ value=“1″ Code=“200″/> |
Příklad – Push Button
Před odesláním příkazu do systému potřebuje váš Miniserver funkční blok Push Button, který příkaz přijme.
Jakmile máme Push Button přidaný a uložený v Miniserveru, je třeba odeslat příkaz. Níže je uveden příklad aplikace třetí strany*, která odesílá příkaz „On“ do serveru Loxone Miniserver:
V tomto příkladu máme výchozí uživatelské údaje (uživatelské jméno: admin, heslo: admin) a Push Button v příkazu, který má název ‚Push-Button‘. Po stisknutí tlačítka ‚Send‘ v aplikaci řetězec pomocí IP adresy vyhledá Miniserver v síti, přihlásí se a poté zpracuje příkaz. Poslední část příkazu můžeme změnit na ‚On‘ nebo ‚Off‘ v závislosti na různých situacích.
Pokud je příkaz k odeslání přijat, bude vrácena odpověď ve formátu XML:
Kód „200“ znamená, že příkaz byl přijat a zpracován.
V Loxone rozhraní také uvidíte, že Push Button změní stav v závislosti na tom, jaký příkaz je odeslán (zapnuto/vypnuto).
*V těchto příkladech je Postman aplikací třetí strany, která se používá k odesílání příkazů.
DOTAZ: STATUS CHANGES
Příkaz | http://miniserver/dev/sps/enablestatusupdate |
Funkce | Umožňuje automatické odesílání změn stavu ve WebSocket. |
Odpověď | Odešle aktuální stav prostřednictvím WebSocket |
Konfigurace Miniserveru, statistiky a příkazy
Následující příkazy poskytují ovládání systému, operace PLC, statistiky sítě a možnosti konfigurace pro Miniserver.
1. Příkazy PLC (Programmable Logic Controller)
Tyto příkazy umožňují sledovat a ovládat systém PLC.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/dev/sps/state |
Získání stavu PLC (0-8 stavů)
0 – Žádný stav 1 – Spouštění PLC 2 – Program PLC je načten 3 – Program PLC byl spuštěn 4 – Loxone Link byl spuštěn 5 – PLC běží 6 – Změna PLC 7 – Chyba PLC 8 – Probíhá aktualizace |
http://<miniserver-ip>/dev/sps/status |
Získání aktuální frekvence PLC |
http://<miniserver-ip>/dev/sps/restart |
Restart PLC |
http://<miniserver-ip>/dev/sps/stop |
Zastavení PLC |
http://<miniserver-ip>/dev/sps/run |
Obnovení PLC |
http://<miniserver-ip>/dev/sps/log/ip |
Povolení logování na konkrétní IP |
http://<miniserver-ip>/dev/sps/log |
Zastaví logování |
http://<miniserver-ip>/dev/sps/enumdev |
Seznam všech zařízení PLC (Miniserver a Extensiony) |
http://<miniserver-ip>/dev/sps/enumin |
Seznam všech vstupů PLC |
http://<miniserver-ip>/dev/sps/enumout |
Seznam všech výstupů PLC |
http://<miniserver-ip>/dev/sps/identify |
Identifikace Miniserveru nebo extensionu (vyžaduje sériové číslo) |
2. Konfigurační příkazy
Tyto příkazy umožňují načíst nebo upravit nastavení Miniserveru.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/dev/cfg/mac |
Získání adresy MAC |
http://<miniserver-ip>/dev/cfg/version |
Získání verze firmwaru |
http://<miniserver-ip>/dev/cfg/versiondate |
Získání data výroby firmwaru |
http://<miniserver-ip>/dev/cfg/dhcp |
Načtení nebo nastavení konfigurace DHCP |
http://<miniserver-ip>/dev/cfg/ip |
Získání nebo nastavení IP adresy |
http://<miniserver-ip>/dev/cfg/mask |
Získání nebo nastavení masky IP |
http://<miniserver-ip>/dev/cfg/gateway |
Získání nebo nastavení adresy brány |
http://<miniserver-ip>/dev/cfg/device |
Získání nebo nastavení názvu zařízení Miniserver |
http://<miniserver-ip>/dev/cfg/dns1 |
Získání nebo nastavení adresy DNS 1 |
http://<miniserver-ip>/dev/cfg/dns2 |
Získání nebo nastavení adresy DNS 2 |
http://<miniserver-ip>/dev/cfg/ntp |
Získání nebo nastavení adresy NTP |
http://<miniserver-ip>/dev/cfg/timezoneoffset |
Získání nebo nastavení posunu časového pásma |
http://<miniserver-ip>/dev/cfg/http |
Získání nebo nastavení portu HTTP |
http://<miniserver-ip>/dev/cfg/ftp |
Získání nebo nastavení portu FTP |
http://<miniserver-ip>/dev/cfg/ftllocalonly |
Získání nebo nastavení místního přístupu k „FTP, Telnet and local software“. |
3. Příkazy pro monitorování systému
Tyto příkazy poskytují informace o výkonu a statistikách systému.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/dev/sys/numtasks |
Získání počtu úloh |
http://<miniserver-ip>/dev/sys/cpu |
Zjištění zatížení procesoru |
http://<miniserver-ip>/dev/sys/contextswitches |
Získání počtu přepnutí úlohy |
http://<miniserver-ip>/dev/sys/contextswitchesi |
Získání počtu přepínání úloh na základě přerušení |
http://<miniserver-ip>/dev/sys/heap |
Získání využití paměti |
http://<miniserver-ip>/dev/sys/ints |
Získání počtu systémových přerušení |
http://<miniserver-ip>/dev/sys/comints |
Získání přerušení komunikace |
http://<miniserver-ip>/dev/sys/lanints |
Získání přerušení sítě LAN |
http://<miniserver-ip>/dev/sys/watchdog |
Získání watchdog bitů |
4. ‚Nastavení data a času
Správa nastavení data a času systému.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/dev/sys/date |
Získání místního data |
http://<miniserver-ip>/dev/sys/time |
Získání místního času |
http://<miniserver-ip>/dev/sys/setdatetime |
Nastavení systémového data a času (Formát: YYYY-MM-DD HH:MM:SS nebo DD/MM/YYYY HH:MM:SS ) |
http://<miniserver-ip>/dev/sys/ntp |
Vynucení požadavku NTP |
5. Monitorování úkolů
Získání stavu a vlastností systémových úloh.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/dev/task0/name |
Získání názvu úlohy 0 |
http://<miniserver-ip>/dev/task0/priority |
Získání priority úlohy 0 |
http://<miniserver-ip>/dev/task0/stack |
Získání využití zásobníku úlohy 0 |
http://<miniserver-ip>/dev/task0/contextswitches |
Získání množství přepnutí kontextu úlohy 0 |
http://<miniserver-ip>/dev/task0/waittimeout |
Získání čekací doby na načtení úlohy 0 (ms) |
http://<miniserver-ip>/dev/task0/state |
Získání stavu úlohy 0 |
6. Ovládání systému a Správa souborů
Tyto příkazy umožňují restartovat Miniserver a spravovat systémové soubory.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/dev/sys/reboot |
Restart Miniserveru |
http://<miniserver-ip>/dev/sys/wsextension/<serial>/Reboot |
Restartování konkrétního extensionu |
http://<miniserver-ip>/dev/sys/check |
Kontrola aktivních připojení |
http://<miniserver-ip>/dev/sys/logoff |
Odhlášení všech připojení |
http://<miniserver-ip>/dev/sys/sdtest |
Test karty SD |
http://<miniserver-ip>/dev/fslist/ |
Seznam kořenového adresáře karty SD |
http://<miniserver-ip>/dev/fslist/path/ |
Seznam konkrétní cesty k adresáři |
http://<miniserver-ip>/dev/fsget/filepath/ |
Získání souboru z karty SD |
http://<miniserver-ip>/dev/fsdel/filepath/ |
Odstranění souboru z karty SD |
7. Systémové protokoly a statistiky
Získání protokolů a systémových dat.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/data/status |
Výstupní stav systému ve formátu XML |
http://<miniserver-ip>/stats |
Zobrazení systémových statistik |
http://<miniserver-ip>/dev/fsget/log/def.log |
Získání souboru protokolu |
http://<miniserver-ip>/dev/sys/updatetolatestrelease |
Aktualizace Miniserveru na nejnovější firmware |
8. Spuštění externí webové služby
Odesílání požadavků na webové služby externím zařízením.
Příkaz | Funkce |
---|---|
http://<miniserver-ip>/jdev/sys/sendwebservice?json={"address":"192.168.1.70", "webservice":"/monitor/logs/lwsd"} |
Odeslání požadavku na webovou službu jinému zařízení v síti z Miniserveru |
Příkazy pro zařízení
Extensiony
Následující příkazy platí pro Extension.
K jejich spuštění je nutný uživatel s plnými přístupovými právy.
http://<miniserver-ip>/dev/sys/wsextension/<serial>/ForceUpdate/0C000001/DeviceIndex | Vynutí aktualizaci firmwaru pro konkrétní zařízení. |
http://<miniserver-ip>/dev/sys/wsextension/<serial>/Reboot | Restartuje zadané zařízení. |
Zařízení Tree a Air
Následující příkazy platí pro konkrétní zařízení Air nebo Tree.
K jejich spuštění je nutný uživatel s plnými přístupovými právy.
http://<miniserver-ip>/dev/sys/wsdevice/<serial>/ForceUpdate/0C000001/DeviceIndex | Vynucení aktualizace firmwaru pro konkrétní zařízení |
http://<miniserver-ip>/dev/sys/wsdevice/<serial>/Reboot | Restartuje zadané zařízení |
Použití webového rozhraní Miniserveru v iFrame
Ve výchozím nastavení Miniserver z bezpečnostních důvodů neumožňuje vložení do iFrame. Chcete-li tuto funkci povolit, musíte ji explicitně povolit pomocí následujícího příkazu webové služby:
http://<miniserver-ip>/dev/sys/allowhttpiframe/1