Package lynx
Funktioner
apiCall
Genomför ett autentiserat anrop till API:et med gatewayens användarnamn och lösenord. Svara med ett LUA objekt.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| Method | Nej | HTTP Metod att använda. |
| Path | Nej | Path of the URL to request. |
| Body | Ja | Body i requester. |
| IoTCfg | Ja | En config att ladda parametrar och autentisering ifrån. |
Exempel
local res = lynx.apiCall("POST", "/api/v2/functionx/1", {
type = "test",
meta = {key1 = "val1"}
})
apiCallRaw
Gör en GET request till API:et med gatewayens eller angiven autentisering. Resultatet ges tillbaka som en sträng vid okej eller error som objekt.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| Path | Nej | Path i IoT Open API:et att använda. |
| IoTCfg | Ja | En config att ladda parametrar och autentisering ifrån. |
Exempel
local resRaw = lynx.apiCallRaw("/api/vw/functionx/1")
getFunctions
Hämta en lista på funktioner för den här installationen genom API:et.
Parametrar
| Name | Optional | Description |
|---|---|---|
| Filter | Ja | Metadata eller type för att filtrera listan på funktioner. |
Exempel
local functions = lynx.getFunctions({
key1 = "value1",
key2 = "value2"
})
createFunction
Skapa en ny funktion för tillhörande installation via API:et.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| fn | Nej | Hela funktionsobjektet som skal skapas. |
Exempel
local fn = {
type = "example",
installation_id = 12,
meta = {
name = "My exmaple",
topic_read = "obj/example/sensor/1/value"
}
}
lynx.createFunction(fn)
deleteFunction
Ta bort en funktion på tillhörande installation via API:et.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| id | Nej | ID på funktionen som skall tas bort. |
Exempel
lynx.deleteFunction(7)
getApps
Hämtar alla configurerade edge-appar för tillhörande installation.
Exempel
local apps = lynx.getApps()
downloadApp
Laddar ner den exekverbara koden som fil för en app. Svaret ges som exekverbara koden i en textsträng.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| App-ID | Ja | ID på appen som ska laddas ner. |
| Version | Ja | Version på appen som ska laddas ner. |
Exempel
local appCode = lynx.downloadApp(1, "0.3.5")
getStatus
Hämta senaste kända värde för specifierade topics eller alla topics vid nil. Observera att det finns ett kort avbrott mellan ett publicerat värde och att det kan hämtas från API:et.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| topics | Ja | Lista med topics att hämta data för. |
Exempel
local statuses = lynx.getStatus()
getLog
Hämnta historisk data av MQTT värden från den tillhörande installationen. Ger ofta stora mängder data.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| to | Nej | Hämta loggar fram till detta unix-timestamp. |
| from | Nej | Hämta loggar från detta unix-timestamp. |
| limit | Nej | Begränsa antalet rader med svar. |
Exempel
local logs = lynx.getLog(1603365159, 1603355159, 100)
getDevices
Hämta en lista på enheter för installationen via API:et.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| Filter | Ja | Metadata eller type för att filtrera listan på enheter. |
Exempel
local devices = lynx.getDevices({
key1 = "value1",
key2 = "value2"
})
createDevice
Skapa en nu enhet för tillhörande installation via API:et.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| dev | Nej | Hela enhets-objektet som skall skapas. |
Exempel
local dev = {
type = "example",
installation_id = 12,
meta = {
name = "A device",
serial = "ABCD1234"
}
}
lynx.createDevice(fn)
deleteDevice
Ta bort en enhet på tillhörande installation via API:et.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| id | Nej | ID på enheten som skall tas bort. |
Exempel
lynx.deleteDevice(7)
notify(id, body)
Gör så att backendet använder ett notifieringsutskick via API:et.
Parametrar
| Namn | Valfri | Beskrivning |
|---|---|---|
| id | Nej | ID för utskick att använda. |
| body | Ja | Data som inkluderas till servern, kan användas i mallar. |
Exempel
local myData = {
value = 23.5,
action = "over"
}
lynx.notify(12, myData)