Webservice

Via de adresregel van een browser kunnen verschillende webservice-commando’s worden gebruikt om bijvoorbeeld informatie van de Miniserver op te vragen, instellingen te doen of uitgangen te schakelen.
Meer gedetailleerde informatie over de API

ALGEMEEN

Web service-commando’s worden ondersteund voor zowel interne als externe toegang.
De huidige Miniserver ondersteunt ook HTTPS.

De structuur van een webservice commando is als volgt

http://Benutzer:[email protected]/command/control/value

Bij gebruik van HTTP worden de toegangsgegevens in de URL in platte tekst verzonden! 

Daarom moeten bij gebruik van HTTP (Miniserver Gen.1) de toegangsgegevens voorlopig worden weggelaten wanneer in de adresregel een opdracht wordt ingevoerd.

De toegangsgegevens worden dan opgevraagd via een venster in de browser::

Sommige commando’s vereisen de toegangsgegevens van een gebruiker met volledige toegang.

Vervolgens wordt het commando uitgevoerd en wordt het resultaat in de browser weergegeven.
In het volgende voorbeeld zien we de huidige softwareversie van de miniserver:

Detail opbouw

  • “control”: kan elke ingang of uitgang zijn (ook virtuele in- en uitgangen). Uitgangen kunnen echter alleen worden gebruikt om statussen op te vragen.
  • „value“: Wanneer “value” niet aanwezig is, wordt de actuele waarde van de control gegeven. De volgende waarden zijn toegelaten voor “value”: “Ein, “On”, “Aus”, “Off”, “Impuls”, “Pulse” of een decimale waarde (met cijfers na de komma).
  • Voor digitale virtuele ingangen met 2 uitgangen (omhoog-omlaag, links-rechts, vanaf versie 1.5.4.16) gelden de volgende waarden:
    ImpulsPlus
    ImpulsMinus
    PulseUp
    PulseDown
    ImpulsAuf
    ImpulsAb
    PulseOpen
    PulseClose
    PlusEin
    PlusAus
    UpOn
    UpOff
    AufEin
    AufAus
    OpenOn
    OpenOff
    MinusEin
    MinusAus
    DownOn
    DownOff
    AbEin
    AbAus
    CloseOff
    CloseOff

     

  • Bij digitale in- en uitgangen wordt voor “Aan” altijd 1 en voor “Uit” altijd 0 gebruikt.
  • Analoge (0-10V) ingangen werken in het bereik tussen 0 en 10,00. Er is geen formele begrenzing (bijv. bij EIB-temperaturen zoals 21,5 of -5,2).
  • Voor de uitvoer wordt als decimaalteken de punt gebruikt.

STATUS EN SCHAKELEN

STATUS OPVRAGEN VAN EEN CONTROL

Commando http://miniserver/dev/sps/io/LichtWohnzimmer/state
Functie Levert de status van de ingang
Antwoord <LL control=“dev/sps/io/LichtWohnzimmer“ value=“0“ Code=“200“/>
Commando http://miniserver/dev/sps/io/LichtWohnzimmer/astate
Functie Levert de waarde van de toegewezen uitgangen (een unieke waarde voor alle – of een ? bij verschillende waarden)
Antwoord <LL control=“dev/sps/io/LichtWohnzimmer“ value=“1“ Code=“200“/>
Commando http://miniserver/dev/sps/io/LichtWohnzimmer/all
Functie Levert het aantal toegewezen uitgangen en een lijst met de waarden van alle uitgangen.
Antwoord <LL control=“dev/sps/io/ LichtWohnzimmer /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″/>
Commando http://miniserver/data/status
Functie Vermeldt alle apparaten die op de Miniserver aangesloten zijn, samen met hun status.
Antwoord <Status Modified=““>
<Miniserver Name=“Miniserver Büro“ Internalname=““ IP=““ Mask=““ Gateway=““ DHCP=““ DNS1=““ DNS2=““ MAC=““ Device=““ Version=““>
<Extension Name=““ Internalname=““ Serial=““ Version=““ Online=““/>
</Miniserver>
</Status>

Statusopvraging via webservice is alleen mogelijk bij in- en uitgangen, niet bij programmacomponenten.

SCHAKELEN

Commando http://miniserver/dev/sps/io/TasterLichtWohnzimmer/Ein
Functie Schakelen van de analoge of digitale ingang
Antwoord <LL control=“dev/sps/io/TasterLichtWohnzimmer“ value=“1“ Code=“200“/>

Als een visualiseringscode vereist is, moet die ook worden opgegeven. Bijv.: http://miniserver/dev/sps/io/Visualisierungskennwort/TasterLichtWohnzimmer/Ein

ALLE UITGANGSWIJZIGINGEN OPVRAGEN

Commando http://miniserver/dev/sps/changes
Functie Verzendt alle uitgangen die sinds de laatste oproep werden gewijzigd
Antwoord  <LL control=“dev/sps/changes“ value=“5″ Code=“200″ n1=“Aktor (Relais) Q1″ u1=“68347a0e-3bfc-11df-8604ea34eeb9b08a“ v1=“0″ n2=“Aktor (Relais) Q2″ u2=“68347a0e-3bfc-11df-8605ea34eeb9b08a“ v2=“0″ n3=“Aktor (Relais) Q3″ u3=“68347a0e-3bfc-11df-8606ea34eeb9b08a“ v3=“0″ n4=“Aktor (Relais) Q4″ u4=“68347a0e-3bfc-11df-8607ea34eeb9b08a“ v4=“0″ n5=“Aktor (Relais) Q5″ u5=“68347a0e-3bfc-11df-8608ea34eeb9b08a“ v5=“1″/>
Commando http://miniserver/dev/sps/event
Functie Genereert een gebeurtenisserver binnen de webserver. Een gebeurtenishandler moet in de webclient worden geprogrammeerd (bijv.: new EventSource(http://miniserver/dev/sps/event).
Antwoord Verzendt alle uitgangen die werden gewijzigd, zonder opnieuw een aanvraag te moeten verzenden.
http://www.w3.org/TR/eventsource/
Event: changed
data: Name
data: uuid
data: Wert
Commando http://miniserver/dev/sps/enablestatusupdate
Functie Laat automatisch verzenden van statuswijzigingen in websockets toe.
Antwoord Verzendt de actuele status via websockets.

CONFIGURATIE EN STATISTIEK

PLC-COMMANDO’S

Commando Functie
http://miniserver/dev/sps/state PLC-statusopvraging

0 – geen status
1 – PLC wordt momenteel opgestart
2 – PLC-programma wordt geladen
3 – PLC wordt gestart
4 – Bus wordt gestart
5 – PLC actief
6 – PLC Change
7 – PLC fout
8 – Update wordt momenteel uitgevoerd

http://miniserver/dev/sps/status actuele PLC-frequentie opvragen
http://miniserver/dev/sps/restart PLC opnieuw starten
http://miniserver/dev/sps/stop PLC stoppen
http://miniserver/dev/sps/run PLC verderzetten
http://miniserver/dev/sps/log PLC globale aanmelding toestaan
http://miniserver/dev/sps/enumdev alle apparaten van de PLC vermelden (Miniserver, Extensions, …)
http://miniserver/dev/sps/enumin alle ingangen van de PLC vermelden
http://miniserver/dev/sps/enumout alle uitgangen van de PLC vermelden
http://miniserver/dev/sps/identify vanaf versie 1.5.6.7: Miniserver identificeren
Voor uitbreidingen moet het serienummer als parameter worden opgegeven

CONFIG-COMMANDO’S

Commando Functie
http://miniserver/dev/cfg/mac MAC-adres ophalen
http://miniserver/dev/cfg/version Firmwareversie ophalen
http://miniserver/dev/cfg/versiondate Aanmaakdatum van firmware ophalen
http://miniserver/dev/cfg/dhcp DHCP-configuratie ophalen
http://miniserver/dev/cfg/ip IP-adres ophalen
http://miniserver/dev/cfg/mask IP-masker ophalen
http://miniserver/dev/cfg/gateway Gateway-adres ophalen
http://miniserver/dev/cfg/device Miniserver apparaatnaam ophalen
http://miniserver/dev/cfg/dns1 DNS-adres 1 ophalen
http://miniserver/dev/cfg/dns2 DNS-adres 2 ophalen
http://miniserver/dev/cfg/ntp NTP-adres ophalen
http://miniserver/dev/cfg/timezoneoffset Tijdzone-offset ophalen
http://miniserver/dev/cfg/http HTTP-poort ophalen
http://miniserver/dev/cfg/ftp FTP-poort ophalen
http://miniserver/dev/cfg/LoxPLAN Configuratiesoftware-poort ophalen
http://miniserver/dev/cfg/ftllocalonly “FTP, Telnet, softwaretoegang alleen lokaal toestaan” ophalen

SYSTEEMCOMMANDO’S

 

Commando Functie
http://miniserver/dev/lan/txp Aantal via LAN verzonden pakketten ophalen
http://miniserver/dev/lan/txe Aantal via LAN verzonden pakketten met fout ophalen
http://miniserver/dev/lan/txc Aantal via LAN verzonden pakketten met botsing ophalen
http://miniserver/dev/lan/exh Aantal LAN-bufferfouten ophalen
http://miniserver/dev/lan/txu Aantal LAN-underrunfouten ophalen
http://miniserver/dev/lan/rxp Aantal via LAN ontvangen pakketten ophalen
http://miniserver/dev/lan/eof Aantal LAN EOF-fouten ophalen
http://miniserver/dev/lan/rxo Aantal LAN-ontvangstoverloopfouten ophalen
http://miniserver/dev/lan/nob Aantal LAN “Geen ontvangstbuffer”-fouten ophalen
http://miniserver/dev/bus/packetssent Aantal verzonden pakketten op Loxone-Link ophalen
http://miniserver/dev/bus/packetsreceived Aantal ontvangen pakketten op Loxone-Link ophalen
http://miniserver/dev/bus/receiveerrors Aantal ontvangstfouten op Loxone-Link ophalen
http://miniserver/dev/bus/frameerrors Aantal frame-fouten op Loxone-Link ophalen
http://miniserver/dev/bus/overruns Aantal overloopfouten op Loxone-Link ophalen
http://miniserver/dev/bus/parityerrors Aantal pariteitsfouten op Loxone-Link ophalen
http://miniserver/dev/sys/numtasks Aantal taken ophalen
http://miniserver/dev/sys/cpu CPU-belasting ophalen
http://miniserver/dev/sys/contextswitches Aantal omschakelingen tussen taken ophalen
http://miniserver/dev/sys/contextswitchesi Aantal omschakelingen tussen taken ophalen die door interrupts werden geactiveerd
http://miniserver/dev/sys/heap Geheugengrootte ophalen
http://miniserver/dev/sys/ints Aantal systeemonderbrekingen ophalen
http://miniserver/dev/sys/comints Aantal communicatieonderbrekingen ophalen
http://miniserver/dev/sys/lanints Aantal LAN-onderbrekingen ophalen
http://miniserver/dev/sys/watchdog Watchdog-bits ophalen
http://miniserver/dev/sys/date Levert de lokale datum
http://miniserver/dev/sys/time Levert de lokale tijd
http://miniserver/dev/sys/setdatetime Systeemdatum en -tijd instellen notatievorm: 2010-04-20 14:35:00 of 2010/20/04 14:35:00
http://miniserver/dev/sys/spscycle Aantal PLC-cycli ophalen
http://miniserver/dev/sys/ntp NTP-aanvraag forceren
http://miniserver/dev/task0/name Taak 0 naam ophalen
(0- http://nubuserver/dev/sys/numtasks – 1)
http://miniserver/dev/task0/priority Taak 0 prioriteit ophalen
http://miniserver/dev/task0/stack Taak 0 stack ophalen
http://miniserver/dev/task0/contextswitches Taak 0 aantal omschakelingen ophalen
http://miniserver/dev/task0/waittimeout Taak 0 wachttijd in ms ophalen
http://miniserver/dev/task0/state Taak 0 status ophalen
http://miniserver/dev/sys/reboot Miniserver booten
http://miniserver/dev/sys/check Toont actieve Loxone Config-verbindingen
http://miniserver/dev/sys/logoff Ontkoppelt bestaande Loxone Config-verbindingen
http://miniserver/dev/sys/sdtest Test de SD-kaart
http://miniserver/dev/sys/lastcpu toont laatste waarde van de CPU-belasting en aantal PLC-cycli
http://miniserver/dev/sys/searchdata vermeldt de zoekresultaten
http://miniserver/dev/fslist/ vermeldt de root-map van de SD-kaart
http://miniserver/dev/fslist/path/ vermeldt de map “path” op de SD-kaart
http://miniserver/dev/fsget/filepath/ een bestand oproepen (filepath vervangen door bestandsnaam)
http://miniserver/dev/fsdel/filepath/ wist een bestand (filepath vervangen door bestandsnaam)
http://miniserver/data/status toont status van Miniserver en alle Extensions
http://miniserver/stats toont de statistieken
http://miniserver/data/weatheru.xml toont de weergegevens
http://miniserver/data/LoxAPP3.json Structuurbestand voor de visualisering
http://miniserver/dev/fsget/log/def.log Log oproepen
http://miniserver/dev/sys/
ExtStatistics/05000001
Statistiek van 1-Wire Extension oproepen (05000001 vervangen door serienummer van Extension)
http://miniserver/dev/sys/
AirStatistics/0C000001/DeviceIndex
Statistiek van Air-apparaten oproepen (0C000001 vervangen door serienummer van Extension)
http://miniserver/dev/sys/updateext Update van Extensions starten

Commando’s voor apparaten

De volgende commando’s verwijzen naar specifieke Air of Tree apparaten.
De toegangsgegevens van een gebruiker met volledige toegang zijn vereist.

http://miniserver/dev/sys/wsdevice/serial/ForceUpdate Een firmware-update van een apparaat forceren
http://miniserver/dev/sys/wsdevice/serial/Reboot apparaat opnieuw opstarten
Bij “serial” wordt het serienummer (zonder dubbele punten) van het toestel gebruikt.

De apparaatnaam in Loxone Config kan hier echter ook worden gebruikt.

Dit moet uniek zijn en mag geen speciale tekens bevatten.