iobroker.lorawan
Version:
converts the desired lora gateway data to a ioBroker structure
934 lines • 22.5 kB
JSON
{
"i18n": true,
"type": "tabs",
"tabsStyle": {
"width": "calc(100% - 100px)"
},
"items":{
"mainTab":{
"type": "panel",
"label": "mainSettings",
"items": {
"ServersettingsHeader": {
"newLine": true,
"type": "header",
"text": "ServersettingsHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"Serverinformation":{
"newLine":true,
"type": "staticText",
"label": "Serverinformation",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"ipUrl":{
"newLine": true,
"type": "text",
"label": "ipUrl",
"tooltip": "ipUrlTooltip",
"default": "",
"xs": 12,
"sm": 4,
"md": 4,
"lg": 4,
"xl": 4
},
"port":{
"type": "number",
"label": "port",
"tooltip": "portTooltip",
"default": 8883,
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
},
"ssl":{
"type": "checkbox",
"label": "SSL",
"tooltip": "sslTooltip",
"default": true,
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
},
"AuthenticationHeader": {
"newLine": true,
"type": "header",
"text": "AuthenticationHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"AuthenticationInformation":{
"newLine":true,
"type": "staticText",
"label": "AuthenticationInformation",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"username":{
"newLine":true,
"type": "text",
"label": "username",
"tooltip": "usernameTooltip",
"default": "",
"xs": 12,
"sm": 4,
"md": 4,
"lg": 4,
"xl": 4
},
"password":{
"type": "password",
"label": "password",
"tooltip": "passwordTooltip",
"default": "",
"xs": 12,
"sm": 3,
"md": 3,
"lg": 3,
"xl": 3
},
"OriginHeader": {
"newLine": true,
"type": "header",
"text": "OriginHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"OriginInformation":{
"newLine":true,
"type": "staticText",
"label": "OriginInformation",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"origin":{
"newLine": true,
"type": "select",
"label": "origin",
"tooltip": "originTooltip",
"options": [
{"label":"TTN","value":"ttn"},
{"label":"Chirpstack","value":"chirpstack"}
],
"default": "ttn",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
"notificationActivation":{
"type": "select",
"label": "notificationActivation",
"tooltip": "notificationActivationTooltip",
"options": [
{"label":"notification","value":"notification"},
{"label":"no notification","value":"no notification"}
],
"default": "notification",
"xs": 12,
"sm": 3,
"md": 3,
"lg": 3,
"xl": 3
}
}
},
"downlinkConfigTab":{
"type": "panel",
"label": "downlinkConfig",
"items": {
"downlinkConfigHeader": {
"newLine": true,
"type": "header",
"text": "downlinkConfigHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"downlinkConfig":{
"newLine": true,
"type":"accordion",
"titleAttr": "deviceType",
"clone": true,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12,
"items":[
{
"newLine": true,
"type": "header",
"attr": "_header",
"text": "downlinkConfigMainHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
{
"type": "text",
"attr": "deviceType",
"label": "deviceType",
"tooltip": "deviceTypeTooltip",
"validator": "if(data.deviceType === '' || data.deviceType === null){return false;}else{return true;}",
"validatorNoSaveOnError": true,
"default": "",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"newLine": true,
"type": "select",
"attr": "sendWithUplink",
"label": "sendWithUplink",
"tooltip": "sendWithUplinkTooltip",
"options": [
{"label":"disabled","value":"disabled"},
{"label":"enabled","value":"enabled"},
{"label":"enabled & collect","value":"enabled & collect"}
],
"default": "disabled",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "number",
"attr": "port",
"label": "portDownlink",
"tooltip": "portDownlinkTooltip",
"hidden": "data.sendWithUplink === 'disabled'",
"default": 1,
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
},
{
"type": "text",
"attr": "priority",
"label": "priority",
"tooltip": "priorityTooltip",
"hidden": "data.sendWithUplink === 'disabled'",
"default": "NORMAL",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "checkbox",
"attr": "confirmed",
"label": "confirmed",
"tooltip": "confirmedTooltip",
"hidden": "data.sendWithUplink === 'disabled'",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"newLine": true,
"type": "header",
"attr": "_header2",
"text": "downlinkConfigSubHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
{
"type":"accordion",
"attr":"downlinkParameter",
"titleAttr": "name",
"clone": true,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12,
"items":[
{
"type": "text",
"attr": "name",
"label": "name",
"tooltip": "nameTooltip",
"default": "",
"validator": "if(data.name === '' || data.name === null){return false;}else{const myRegEx = /^([0-9a-z_ ])*$/i; return myRegEx.test(data.name);}",
"validatorNoSaveOnError": true,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "number",
"attr": "port",
"label": "portDownlink",
"tooltip": "portDownlinkTooltip",
"default": 1,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "text",
"attr": "priority",
"label": "priority",
"tooltip": "priorityTooltip",
"default": "NORMAL",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "select",
"attr": "type",
"label": "type",
"tooltip": "typeTooltip",
"options": [
{"label":"button","value":"button"},
{"label":"boolean","value":"boolean"},
{"label":"number","value":"number"},
{"label":"ASCII","value":"ascii"},
{"label":"String","value":"string"}
],
"default": "boolean",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "checkbox",
"attr": "swap",
"label": "swap",
"tooltip": "swapTooltip",
"hidden": "data.type !== 'number'",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "staticText",
"attr": "_statciText",
"label": "",
"hidden": "data.type === 'number'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "checkbox",
"attr": "confirmed",
"label": "confirmed",
"tooltip": "confirmedTooltip",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"newLine": true,
"type": "text",
"attr": "front",
"label": "front",
"tooltip": "frontTooltip",
"default": "03",
"validator": "if(data.type !== 'string'){const myRegEx = /^([0-9a-f]{2})*$/i; return myRegEx.test(data.front)}else{return true}",
"validatorNoSaveOnError": true,
"hidden": "data.type === 'boolean' || data.type === 'button'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "text",
"attr": "end",
"label": "end",
"tooltip": "endTooltip",
"default": "11",
"validator": "if(data.type !== 'string'){const myRegEx = /^([0-9a-f]{2})*$/i; return myRegEx.test(data.front)}else{return true}",
"validatorNoSaveOnError": true,
"hidden": "data.type === 'boolean' || data.type === 'button'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "number",
"attr": "lengthInByte",
"label": "lengthInByte",
"tooltip": "lengthInByteTooltip",
"default": 2,
"min":1,
"max": 20,
"hidden": "data.type === 'boolean' || data.type === 'button' || data.type === 'string'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"newLine": true,
"type": "text",
"attr": "on",
"label": "on",
"tooltip": "onTooltip",
"default": "01",
"validator": "const myRegEx = /^([0-9a-f]{2})*$/i; return myRegEx.test(data.on);",
"validatorNoSaveOnError": true,
"hidden": "data.type !== 'boolean'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "text",
"attr": "off",
"label": "off",
"tooltip": "offTooltip",
"default": "11",
"validator": "const myRegEx = /^([0-9a-f]{2})*$/i; return myRegEx.test(data.off);",
"validatorNoSaveOnError": true,
"hidden": "data.type !== 'boolean'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"newLine": true,
"type": "text",
"attr": "onClick",
"label": "onClick",
"tooltip": "onClickTooltip",
"default": "030111",
"validator": "const myRegEx = /^([0-9a-f]{2})*$/i; return myRegEx.test(data.onClick);",
"validatorNoSaveOnError": true,
"hidden": "data.type !== 'button'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "number",
"attr": "multiplyfaktor",
"label": "multiplyfaktor",
"tooltip": "multiplyfaktorTooltip",
"default": 1,
"hidden": "data.type !== 'number'",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "number",
"attr": "decimalPlaces",
"label": "decimalPlaces",
"tooltip": "decimalPlacesTooltip",
"default": 0,
"min": 0,
"max": 5,
"hidden": "data.type !== 'number'",
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
},
{
"type": "text",
"attr": "unit",
"label": "unit",
"tooltip": "unitTooltip",
"default": "",
"hidden": "data.type === 'boolean' || data.type === 'button' || data.type === 'string'",
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
},
{
"type": "select",
"attr": "crc",
"label": "crc",
"tooltip": "crcTooltip",
"options": [
{"label":"no crc","value":"noCrc"},
{"label":"CRC-8","value":"CRC-8"},
{"label":"KERMIT","value":"KERMIT"},
{"label":"KERMIT (Little Endian)","value":"KERMIT.LittleEndian"}
],
"default": "noCrc",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"newLine": true,
"type": "checkbox",
"attr": "limitMin",
"label": "limitMin",
"tooltip": "limitMinTooltip",
"hidden": "data.type !== 'number'",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "number",
"attr": "limitMinValue",
"label": "limitMinValue",
"tooltip": "limitMinValueTooltip",
"default": 0,
"hidden": "data.type !== 'number' || data.limitMin !== true",
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
},
{
"type": "checkbox",
"attr": "limitMax",
"label": "limitMax",
"tooltip": "limitMaxTooltip",
"hidden": "data.type !== 'number'",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
{
"type": "number",
"attr": "limitMaxValue",
"label": "limitMaxValue",
"tooltip": "limitMaxValueTooltip",
"default": 0,
"hidden": "data.type !== 'number' || data.limitMax !== true",
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
}
]
}
]
}
}
},
"customTab":{
"type": "panel",
"label": "customConfig",
"items": {
"customConfigHeader":{
"newLine": true,
"type": "header",
"text": "customConfigHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"customJsonInformation":{
"newLine":true,
"type": "staticText",
"label": "customJsonInformation",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"customDecodedJsonActive":{
"newLine": true,
"type": "checkbox",
"label": "customDecodedJsonActive",
"tooltip": "customDecodedJsonActiveTooltip",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
"customJson":{
"type": "jsonEditor",
"label": "customJson",
"tooltip": "customJsonTooltip",
"hidden": "data.customDecodedJsonActive === false",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
"customConfigurationJsonActive":{
"newLine": true,
"type": "checkbox",
"label": "customConfigurationJsonActive",
"tooltip": "customConfigurationJsonActiveConfigurationTooltip",
"hidden": "data.customDecodedJsonActive === false",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
"customControlJsonActive":{
"newLine": true,
"type": "checkbox",
"label": "customControlJsonActive",
"tooltip": "customControlJsonActiveTooltip",
"hidden": "data.customDecodedJsonActive === false",
"default": false,
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
"customDesciption":{
"newLine":true,
"type": "staticText",
"label": "customDesciption",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"customDescriptionImage":{
"newLine": true,
"type": "staticImage",
"label": "",
"tooltip": "customDescriptionImageTooltip",
"src": "icons/config/customDescriptionImage.png",
"xs": 12,
"sm": 5,
"md": 5,
"lg": 5,
"xl": 5
},
"customDeleteDesciption":{
"newLine":true,
"type": "staticText",
"label": "customDeleteDesciption",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"customDeleteDescriptionImage":{
"newLine": true,
"type": "staticImage",
"label": "",
"tooltip": "customDeleteDescriptionImageTooltip",
"src": "icons/config/customDeleteDescriptionImage.png",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
}
}
},
"HABridge":{
"type": "panel",
"label": "HABridge",
"items": {
"customConfigHeader":{
"newLine": true,
"type": "header",
"text": "HaBridgeHeader",
"size": 3,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"HABridgeInformation":{
"newLine":true,
"type": "staticText",
"label": "HABridgeInformation",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"MQTTInstance": {
"newLine": true,
"type": "instance",
"label": "MQTTInstance",
"adapter": "mqtt-client",
"allowDeactivate": true,
"xs": 12,
"sm": 12,
"md": 3,
"lg": 3,
"xl": 3
},
"_DeviceIdentifierDiscription":{
"newLine":true,
"type": "staticText",
"hidden": "data.MQTTInstance === ''",
"label": "_DeviceIdentifierDiscription",
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12
},
"DeviceIdentifiers":{
"newLine": true,
"hidden": "data.MQTTInstance === ''",
"type":"accordion",
"titleAttr": "DeviceIdentifier",
"clone": true,
"xs": 12,
"sm": 12,
"md": 12,
"lg": 12,
"xl": 12,
"items":[
{
"type": "select",
"attr": "DeviceIdentifier",
"label": "DeviceIdentifier",
"tooltip": "DeviceIdentifierTooltip",
"options": [
{"label":"applicationId","value":"applicationId"},
{"label":"applicationName","value":"applicationName"},
{"label":"usedApplicationName","value":"usedApplicationName"},
{"label":"deviceEUI","value":"deviceEUI"},
{"label":"deviceId","value":"deviceId"},
{"label":"usedDeviceId","value":"usedDeviceId"}
],
"default": "usedDeviceId",
"xs": 12,
"sm": 4,
"md": 4,
"lg": 4,
"xl": 4
}
]
},
"separator":{
"newLine": true,
"hidden": "data.MQTTInstance === ''",
"type": "select",
"label": "separator",
"tooltip": "separatorTooltip",
"options": [
{"label":"no","value":"no"},
{"label":"space","value":"space"},
{"label":"underline","value":"underline"},
{"label":"minus","value":"minus"}
],
"default": "space",
"xs": 12,
"sm": 2,
"md": 2,
"lg": 2,
"xl": 2
},
"_spare1":{
"type": "staticText",
"hidden": "data.MQTTInstance === ''",
"label": "",
"xs": 12,
"sm": 1,
"md": 1,
"lg": 1,
"xl": 1
},
"_DeviceIdentifierConfiguredDiscription":{
"type": "staticText",
"hidden": "data.MQTTInstance === ''",
"label": "_DeviceIdentifierConfiguredDiscription",
"style": {"font-size":"16px", "font-weight":"bold"},
"xs": 12,
"sm": 3,
"md": 3,
"lg": 3,
"xl": 3
},
"_DeviceIdentifierConfigured":{
"type": "textSendTo",
"hidden": "data.MQTTInstance === ''",
"style": {"font-size":"16px", "font-weight":"bold", "color":"blue"},
"jsonData": "{\"DeviceIdentifiers\":${JSON.stringify(data.DeviceIdentifiers)},\"separator\":\"${data.separator}\"}",
"command": "getTopicConfigured",
"alsoDependsOn":[
"DeviceIdentifiers",
"separator"
],
"xs": 12,
"sm": 6,
"md": 6,
"lg": 6,
"xl": 6
},
"_spare2":{
"newLine": true,
"type": "staticText",
"hidden": "data.MQTTInstance === ''",
"label": "",
"xs": 12,
"sm": 3,
"md": 3,
"lg": 3,
"xl": 3
},
"_DeviceIdentifierExampleDiscription":{
"type": "staticText",
"hidden": "data.MQTTInstance === ''",
"label": "_DeviceIdentifierExampleDiscription",
"style": {"font-size":"16px", "font-weight":"bold"},
"xs": 12,
"sm": 3,
"md": 3,
"lg": 3,
"xl": 3
},
"_DeviceIdentifierExample":{
"type": "textSendTo",
"hidden": "data.MQTTInstance === ''",
"style": {"font-size":"16px", "font-weight":"bold", "color":"blue"},
"jsonData": "{\"DeviceIdentifiers\":${JSON.stringify(data.DeviceIdentifiers)},\"separator\":\"${data.separator}\"}",
"command": "getTopicExample",
"alsoDependsOn":[
"DeviceIdentifiers",
"separator"
],
"xs": 12,
"sm": 6,
"md": 6,
"lg": 6,
"xl": 6
},
"HABridgeDecoded":{
"newLine": true,
"hidden": "data.MQTTInstance === ''",
"type": "select",
"label": "HABridgeDecoded",
"tooltip": "HABridgeDecodedTooltip",
"options": [
{"label":"HABridgeDecodedOff","value":"off"},
{"label":"HABridgeDecodedPublish","value":"publish"}
],
"default": "publish",
"xs": 12,
"sm": 3,
"md": 3,
"lg": 3,
"xl": 3
},
"HABridgeControl":{
"hidden": "data.MQTTInstance === ''",
"type": "select",
"label": "HABridgeControl",
"tooltip": "HABridgeControlTooltip",
"options": [
{"label":"HABridgeControlOff","value":"off"},
{"label":"HABridgeControlPublish","value":"publish"},
{"label":"HABridgeControlPublishSubscribe","value":"publishsubscribe"}
],
"default": "off",
"xs": 12,
"sm": 3,
"md": 3,
"lg": 3,
"xl": 3
}
}
}
}
}