Webservices

Pomocí různých příkazů webové služby můžete z Miniserveru načítat informace prostřednictvím adresního řádku prohlížeče, upravovat nastavení nebo přepínat výstupy.

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

Při použití protokolu HTTP jsou přístupové údaje v adrese URL přenášeny v prostém textu!

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„.
  • 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 010.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ě.

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:

EN_KB_Computer_Postman_HTT_Command

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:

EN_KB_Computer_Postman_HTT_Command_XML_Response

V Loxone Config se také na zlomek sekundy rozsvítí virtuální vstup, pokud je aktivní „Live View“: 
EN_KB_Config_Virtual_Input_On

*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>

Icon Exclamation Mark LoxoneStatus 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:

EN_KB_Computer_Postman_HTTP_Command

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:

EN_KB_Computer_Postman_HTT_Command_XML_Response

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í
Místo slova „serial“ je nutné použít sériové číslo zařízení (bez dvojteček). Alternativně lze použít název zařízení z Loxone Config. Pokud použijete název zařízení, musí být jedinečný a nesmí obsahovat speciální znaky.

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