Ikona TapHome

TapHome má jeden skriptovací jazyk pre smart rules, notifikácie a integrácie zariadení. Syntax a funkcie sú všade rovnaké; od miesta, kde skript beží, závisia iba dostupné premenné, konštanty a funkcie. Aplikácia v editore skriptu zvýrazňuje syntax.

Kde sa skripty používajú

Ten istý skriptovací jazyk beží v smart rules, notifikáciách a v integráciách Modbus a Packet parser:

KontextČo skript robíŠpecifické pre kontext
Smart rule typu RovnicaJeden výraz nad hodnotami zariadení. TRUE spustí akcie pre pravdu, FALSE akcie pre nepravdu.LastState, TriggerName
Smart rule typu VzorecVypočíta hodnotu, ktorá sa zapíše do každého výstupného zariadenia.LastState, TriggerName
Smart rule typu SkriptČíta hodnoty zariadení a priraďuje nové; z každého priradenia sa stane akcia na zariadení.Premenné na čítanie a zápis, TriggerName
Obmedzujúca podmienka typu VzorecRozhoduje, či smart rule smie bežať.TRUE dovolí smart rule bežať
Názov a text notifikácieZostavuje text notifikácie.Musí vrátiť text; konštanty notifikácií
Modbus skript na čítanie moduluDopytuje modul, typicky kvôli chybám zariadení.Funkcie MODBUS*
Modbus skripty na čítanie a zápis zariadeniaPrevedie registre na hodnotu zariadenia a požadovanú hodnotu späť na registre.Výsledok skriptu na čítanie sa stane hodnotou zariadenia
Modbus inicializačný skriptSpustí sa raz po pripojení modulu.Typicky MODBUSWNE
Packet parser skripty na čítanie a zápisPošle požiadavku alebo príkaz cez HTTP, FTP, TCP, UDP alebo MQTT; pri HTTP a FTP spracuje aj odpoveď.SENDHTTPREQUEST, SENDDATA, MQTTPUBLISH
Packet parser listener skriptSpracuje každý prichádzajúci TCP alebo UDP paket a každú MQTT správu.RECEIVEDMSG
Servisné atribúty a akcie (Modbus, Packet parser)Diagnostické riadky a tlačidlá s parametrami v aplikácii.Parametre akcie podľa ich skratky

SLEEP je v smart rules a notifikáciách odmietnutý (výnimkou je obmedzujúca podmienka typu Vzorec). ADDERROR, ADDWARNING a ADDINFO fungujú iba v skriptoch zariadení. Čo jednotlivé smart rules odovzdávajú svojmu skriptu, popisuje stránka Skripty v smart rules a notifikáciách; integrácie majú vlastné stránky, Funkcie Modbus a Funkcie Packet parsera.

Výsledok skriptu

Skript je zoznam príkazov. Výsledkom skriptu je hodnota posledného vyhodnoteného príkazu. RETURN ukončí skript predčasne so zadanou hodnotou.

VAR a := 1;
VAR b := 2;
a + b;
# Result: 3

Výsledok skriptu na čítanie zariadenia musí zodpovedať hodnote zariadenia, inak skript skončí chybou Return value 'X' does not match required return type constraint:

Hodnota zariadeniaPovolený výsledok
Stav spínača, stavový kontaktTRUE alebo FALSE (akceptujú sa aj čísla), NaN, Null
Stav viachodnotového prepínačaČíslo (stav vyberá celé číslo; desatinná hodnota sa neodmietne), NaN, Null
Akákoľvek iná hodnotaČíslo, NaN, Null

NaN znamená „hodnota je neznáma“, Null znamená „hodnota neexistuje“. Ako sa obe správajú vo výrazoch, popisuje časť Null a NaN.

Stránky v tejto sekcii

Referencia skriptovacieho jazyka má štyri skupiny stránok: sprievodcu jazykom, funkcie podľa oblastí, funkcie integrácií a referenčné zoznamy.

Sprievodca

  • Syntax a riadenie toku — príkazy, komentáre, literály, IF, SWITCH, cykly WHILE a DO, RETURN.
  • Dátové typy — čísla, text, štruktúrované a enum typy, kolekcie, .Type, povýšenie typov, Null a NaN.
  • Premenné a konštanty — premenné zariadení, Info o hodnote, premenné modulu, VAR a typované deklarácie, vlastnosti, kontextové konštanty.
  • Operátory — zoznam operátorov, priorita, skrátené vyhodnocovanie, ekvivalenty v Exceli.
  • Skripty v smart rules a notifikáciách — Rovnica, Vzorec, Skript, obmedzujúca podmienka typu Vzorec a notifikácie.

Funkcie

Integrácie

  • Funkcie Modbus — typy registrov, MODBUSR, MODBUSW, MODBUSWNE, MODBUSRBLOCK, MODBUSWBLOCK, MODBUSWBLOCKNE.
  • Dátové typy Modbus — dátové typy funkcií Modbus, varianty poradia bajtov, 64-bitové typy, text.
  • Skripty Modbus a prefetch — aké skripty má Modbus modul a zariadenie, kedy bežia, prefetch a cache.
  • Funkcie Packet parsera — HTTPREQUEST, SENDHTTPREQUEST, SENDDATA, MQTTPUBLISH, FTPDOWNLOAD, FTPUPLOAD, COMPLETESERVICEATTRIBUTE, COMPLETESERVICEACTION.
  • Listener skripty — listener skript modulu Packet parser, RECEIVEDMSG a RECEIVEDBYTES.

Referencia