diff --git a/application/src/main/data/json/tenant/dashboards/gateways.json b/application/src/main/data/json/tenant/dashboards/gateways.json
deleted file mode 100644
index 1f32024d7f..0000000000
--- a/application/src/main/data/json/tenant/dashboards/gateways.json
+++ /dev/null
@@ -1,7023 +0,0 @@
-{
- "title": "ThingsBoard IoT Gateways",
- "image": "tb-image:Z2F0ZXdheS1kYXNoYm9hcmRfKDEpLnBuZw==:Z2F0ZXdheS1kYXNoYm9hcmQucG5n;data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALwAAAC8CAYAAADCScSrAAAKeUlEQVR4Ae3dS2xc1R3H8eP3jBMnxChpSVDaOAuUl2grpERFpRVRKxYVXXRDUTeVuqzUTVd0zxqk7hq13VStVOiCCqkCKaIPUKiCghpIhFAcEYhTErBpTGyPxw/md6//9rXxY2Z8PXPP/L8faTQPewa49zf/87/nHl+6ZmdnFwPgRHcAHCHwcIXAwxUCD1cIPFwh8HCFwMMVAg9XCDxcIfBwhcDDFQIPVwg8XCHwcIXAwxUCD1cIPFwh8HCFwMMVAg9XCDxcIfBwhcDDFQIPVwg8XCHwcIXAwxUCD1cIPFwh8HCFwMMVAg9XCDxcIfBwhcDDFQIPVwg8XCHwcIXAwxUCD1d6Q4dbXFwM8/PzYW5ubvmxve5ZV1fX8q27uzv09vaGnp6e5Hkn6+rU/xO3Al77bwsLCwvuw90IBb+vry+570QdF3gFfWZmZlXItQNVvezeKptnNtrpXtusWq0m90ZVv7+/P9lmnaRjAq9KrqBby6JAl0ql5OY93PXSNlTwp6enk8ei4A8ODnbMNuyIwKt10U3VSjumXC4nQUfzKpXKcvC1TVXtdYtd9IHXjlHYRSFX2Kno+VDYFXptY1HgBwYGQsyiDnw27Bp2qeo7Q63i1NRU8jj20EcbeAu7qvnQ0FDHzioUhQ5oJycnk7Yx5tBHeeLJenYh7K2hbbx79+7kcXb7xya6wKuvzLYxhL11NEWpbS42SRCb6AKvgyhtaA2p9OytZ1O92gfaF7GJKvCaI1aF19ywZmPQHjYTZks2YhJV4G16TBtcoUd72LkOsX0Si2hSY4u/FPTY54I7gZ3B1ohrZ7djEE3g1c4IrUxxWOGJqcpHEXhb4CSdtpgpZlZ8YlqRGkXgbchU2Ondi0MtjaaFs39nUHRRpMeqO3PuxWP7JJbZmigCb0tVtZYdxWKBp6XJkW1MAl88FngrSkUXVeDp34vHlmJT4XNkG5N17sVD4IECI/BwhcDDFQIPVwg8XCHwcIXAwxUCD1cIPFwh8HCFwLfJzL25MHr5/wGtxQLzNlDQ//js1ST0+w6Uws+fPRXuO8Df6bYCFb4Nzv/pRhJ2mbg9E15/6WZAaxB4uELg2+DbTx5cfqyW5tEnDwW0RhRXD9ZVa2V4eDh0iomPZ8JndyrhgSO7QmlX3IdS4+Pjyb0ubFt0VPg2uTtWCh/9Z2+oTjFv0EoEvk3mKrWpycn0Hq1DedkBE7e3TvHwSHpLf3/z3y3v6om+7SkKtmLOzj1zOVx/J/8TSo8/dTicffpwwPbQ0uRIJ5QUdlXjY2fuT17TYx2Ybtf5P98I2D4CvwOOnNobfvrMsXDkZO3+18eSM6koBlqaHXC9VulfPjeaVPsXn3s/fP3knoBiIPA7QMsG3nhpLHmspQMT52cCioGWJkdlZlIKj8Dn6IGRXauWDeTp7E+YockDSwuwbSwtwLrGPwrh1edDePfV1a//63fp69h5BB6uEHi4wrTCDpi8k7YvaxeGTd/d/H3XLqw87h0I4cDR2swPU/i5IvA5U6gvvrj5Ksh9a/7e42vfDOG9f4Yw+ubq1/X8Oz9Lw498EPicTSxV9oPHvxxsUcXe9+Dq1w7XAj+0f/UIcHs0hDvXavfX0s9CPgj8DlHYGwmqvgT7Ms8VfgUe+SLwOVPfPfxgc23IxRfS96viq805dHz152R/juYwS5MzBbS0p7nAT9xMW5mNPif7czSHM605+M0vL4Vb1+9t+HNdmeBX5x7Z8OdXL3waXnj+/eVr1WylaBdviulMKy1NDu6rBbC0u/FNqYPbu7UpzL//Ib0wk9bibPWnfLragVZgvvaXm+GxH40k7RPqR+Bz8IOnjoVqJZ2ByQZQc/Gbzb1r3v3G2yF8Pp5W9l88t3VzfqU2GugyfR/+dz68VXvbwz9M+3rUh8Dn4L1/pFcg0ExLNvBjV0K4dTV9fGidGRsdmKpHv3ix9mRpyby+IHqfKMh6rhNZcvRMWB4BNI05cjqEPfsDGkDgc6RgvvvKyvOJLS4ZqVFhZs0IoIDbCSiNGBol7EujwBu1Q7pxUqoxBD5HCuDY1fp/X5Vcv9/MtWn0xVA7pFGFlqZ+BD4H5b1pS7ORoQ3ajoe+m4b17cu19y+1NGpRHvnxyvt0W68dUut05umNPxvrYx6+AarE1k+rOtvjhx7b/H1HT6//us6kvvPK6rZGszZ6TTe1M/rn2PMs/Z7W1du/A+pD4BugAGphmCTtyNLBpaqsFnmpvdDJIrvpuar1/g1ajmQGp+vLr2u0sMvwVSsrz9eqcpm+htHSNKBvYOVgUWFWD63T/OWlgFsrUi+9V1+GC6+vtDR9S2dYRQek2edZ9mVi+XBjCHwDVMkVwg8upVOKmj1RxT8wki4Ua7Sf1nSmvjTZlsZGC6MeX73+WmqH/v175uEbReAboLAf/kYaUoVMFVbhn/wkDW2jgdeXZG629rlL8/Av/3Y0fHVk88vy/W80XcKgyq73Mw/fGALfIM2Ff34nrew6GLWWphn6gpz4fi3En3wl+f8+vfG3sbrf+60n9oYTZwMaxOKxJunkkKq7zaFvd4rwypufhrf+Opd8xu7a7VbtgPjgifTAduLDWlvzvVoL9Fr6z3j4iVJy3cqiYPGYAzqtr/ZG04LTd7c/H3789P3h40vp5+hzFz8L4dSj6V88DczXKvrjIdz7IP35kZMBTaLCF4iOA3ScoJu+SPYl0uuaqcn+vEio8GhKdvoxO2LY6yWmILeNE09whcDDFQIPVwg8XCHwcIXAwxUCD1cIPFwh8HCFwMOVKALf1ZX+HdziYuGX/bhj+8T2UdFFVeEJfPHMz88n9wQ+Rz09Pcn93Fx9FxtF6ywsLCT3BD5HtjEJfPFYhe/ujqNZiOLfsrc3XcVsGxfFUa1Wk3vbR0UXTUujKq+NSx9fHCpANupa21l00bQ0NmTO2AVc0HYWdlV3evicDQykf9dG4Itjeno6ue/r6wuxiCbw1taopSH07VepVJIZGo28sfTvEtU8fKlUSu5VWejl20e9u1X3/v7+EJOoAq9KokqvsE9NTQW0h8Ju1T2mdkaiW0ujKq/WRkMqrU3raZvPzs4m+2BwcDDEJrrAq6rYMKoqz8mo1tG2tpFVkwixzMxkRblaUoG3WRtdpInQ7zydA7ELYmnbx9bKmCiuPLYRDa1qbUTDqx3UIl9qY7KVPbYD1ayoAy/Z0GtHlMvlaM76FZ1NDtj2jT3sEn3gRaHXTTtIPb5Cby0PmqOqbtO/6tVjbmOyOiLwomkymy4TC75NZWJrCre2oSq6nefQttN2jPEAdT0dE3ijg6vsDhNVJgu+vgh21tYzbR/ddMCfvRltJ1X1mM6i1qPjAm+08xR+ZnDqZ4v0FPROHRU7NvBGVcyWsardscrmfWmCjXA22tkI2OkjX8cHHsjiMh1whcDDFQIPVwg8XCHwcIXAwxUCD1cIPFwh8HCFwMMVAg9XCDxcIfBwhcDDFQIPVwg8XCHwcIXAwxUCD1cIPFwh8HCFwMMVAg9XCDxcIfBwhcDDFQIPVwg8XCHwcIXAwxUCD1cIPFwh8HCFwMMVAg9XCDxcIfBwhcDDFQIPVwg8XPkCcAEXfkdt4uwAAAAASUVORK5CYII=",
- "mobileHide": false,
- "mobileOrder": 6,
- "configuration": {
- "description": "",
- "widgets": {
- "23b9adc5-b3bd-040f-e5eb-a45925c73257": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 60000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1680624762213,
- "endTimeMs": 1680711162213
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Gateways list",
- "enableSearch": true,
- "enableSelectColumnDisplay": false,
- "enableStickyHeader": true,
- "enableStickyAction": false,
- "showCellActionsMenu": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": false,
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Gateways list",
- "dropShadow": true,
- "enableFullscreen": false,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 600,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "9b7a1caa-3510-3daa-e05a-fc39b851d2c1",
- "filterId": "abdfdcf9-75d4-001d-783a-920cb8e2a7e1",
- "dataKeys": [
- {
- "name": "createdTime",
- "type": "entityField",
- "label": "Created time",
- "color": "#2196f3",
- "settings": {
- "columnWidth": "140px",
- "useCellStyleFunction": false,
- "useCellContentFunction": false,
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.4570900758216545,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "name",
- "type": "entityField",
- "label": "Gateway name",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "20%",
- "useCellStyleFunction": false,
- "useCellContentFunction": false,
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.45934623767875316,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#f44336",
- "settings": {
- "columnWidth": "20%",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "var newValue = value == 'true' ? \"Active\" : \"Inactive\";\r\nvar bgColor = value == 'true' ? 'rgba(25,128,56, .06)': 'rgba(203,37,48, .06)',\r\ncolor = value == 'true' ? 'rgb(25,128,56)': 'rgb(203,37,48)';\r\nreturn `
${newValue}
`",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.7189327146035449,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": false,
- "postFuncBody": ""
- },
- {
- "name": "active_connectors",
- "type": "attribute",
- "label": "Enabled Connectors",
- "color": "#3f51b5",
- "settings": {
- "columnWidth": "20%",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "return value?JSON.parse(value).length:0;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.3929515708982403,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "Version",
- "type": "attribute",
- "label": "Version",
- "color": "#8bc34a",
- "settings": {
- "columnWidth": "40%",
- "useCellStyleFunction": false,
- "useCellContentFunction": false,
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.4705163811361781,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ]
- }
- ],
- "displayTimewindow": true,
- "actions": {
- "actionCellButton": [
- {
- "name": "Launch command",
- "icon": "terminal",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "customPretty",
- "customHtml": "\n
\n {{ 'gateway.launch-command' | translate }}
\n \n \n \n \n
\n
\n \n
\n
\n",
- "customCss": ".container {\n display: grid;\n grid-template-rows: min-content minmax(auto, 1fr) min-content;\n height: 100%;\n max-height: 100vh;\n width: 600px;\n max-width: 100%;\n}",
- "customFunction": "let $injector = widgetContext.$scope.$injector;\nlet customDialog = $injector.get(widgetContext.servicesMap.get('customDialog'));\n\nopenCommands();\n\nfunction openCommands() {\n customDialog.customDialog(htmlTemplate, CommandsDialogController, {panelClass: \"test\"}).subscribe();\n}\n\nfunction CommandsDialogController(instance) {\n let vm = instance;\n \n vm.entityId = entityId.id;\n\n vm.cancel = function() {\n vm.dialogRef.close(null);\n };\n}\n",
- "customResources": [],
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "ae2e5995-505f-a241-5fb2-6cbaf08b1b55"
- },
- {
- "name": "Gateway configuration",
- "icon": "settings",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "customPretty",
- "customHtml": "\n\n\n",
- "customCss": ".gateway-config {\n width: 800px !important;\n padding: 0 !important;\n min-height: 75vh;\n max-width: 100%;\n display: grid !important;\n}\n\n@media screen and (max-width: 599px) {\n .mat-mdc-dialog-content {\n max-height: calc(100% - 60px) !important;\n }\n}",
- "customFunction": "let $injector = widgetContext.$scope.$injector;\nlet customDialog = $injector.get(widgetContext.servicesMap.get('customDialog'));\n\nopenAddEntityDialog();\n\nfunction openAddEntityDialog() {\n customDialog.customDialog(htmlTemplate, AddEntityDialogController).subscribe();\n}\n\nfunction AddEntityDialogController(instance) {\n let vm = instance;\n \n vm.device = additionalParams.entity.id;\n\n vm.cancel = function() {\n vm.dialogRef.close(null);\n };\n}\n",
- "customResources": [],
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "a54acd30-5c5f-d709-b892-5fc14f780e34"
- },
- {
- "name": "Connectors",
- "icon": "private_connectivity",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "connectors",
- "setEntityId": true,
- "stateEntityParamName": "",
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "e27eea56-c57c-0a45-eb1d-f48f19e5356b"
- }
- ],
- "rowClick": [
- {
- "name": "Show geteway details",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "gateway_details",
- "setEntityId": true,
- "stateEntityParamName": "",
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "40cd37f1-6d1c-38a4-aba5-7dc408376647"
- }
- ],
- "headerButton": [
- {
- "name": "Add Gateway",
- "icon": "add",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "customPretty",
- "customHtml": "\n",
- "customCss": ".add-entity-form {\r\n min-width: 400px !important;\r\n}\r\n\r\n.add-entity-form .boolean-value-input {\r\n padding-left: 5px;\r\n}\r\n\r\n.add-entity-form .boolean-value-input .checkbox-label {\r\n margin-bottom: 8px;\r\n color: rgba(0,0,0,0.54);\r\n font-size: 12px;\r\n}\r\n\r\n.relations-list .header {\r\n padding-right: 5px;\r\n padding-bottom: 5px;\r\n padding-left: 5px;\r\n}\r\n\r\n.relations-list .header .cell {\r\n padding-right: 5px;\r\n padding-left: 5px;\r\n font-size: 12px;\r\n font-weight: 700;\r\n color: rgba(0, 0, 0, .54);\r\n white-space: nowrap;\r\n}\r\n\r\n.relations-list .mat-form-field-infix {\r\n width: auto !important;\r\n}\r\n\r\n.relations-list .body {\r\n padding-right: 5px;\r\n padding-bottom: 15px;\r\n padding-left: 5px;\r\n}\r\n\r\n.relations-list .body .row {\r\n padding-top: 5px;\r\n}\r\n\r\n.relations-list .body .cell {\r\n padding-right: 5px;\r\n padding-left: 5px;\r\n}\r\n\r\n.relations-list .body .md-button {\r\n margin: 0;\r\n}\r\n\r\n",
- "customFunction": "let $injector = widgetContext.$scope.$injector;\r\nlet customDialog = $injector.get(widgetContext.servicesMap.get('customDialog'));\r\nlet assetService = $injector.get(widgetContext.servicesMap.get('assetService'));\r\nlet deviceService = $injector.get(widgetContext.servicesMap.get('deviceService'));\r\nlet attributeService = $injector.get(widgetContext.servicesMap.get('attributeService'));\r\nlet entityRelationService = $injector.get(widgetContext.servicesMap.get('entityRelationService'));\r\nlet userSettingsService = $injector.get(widgetContext.servicesMap.get('userSettingsService'));\r\n\r\nopenAddEntityDialog();\r\n\r\nfunction openAddEntityDialog() {\r\n customDialog.customDialog(htmlTemplate, AddEntityDialogController).subscribe();\r\n}\r\n\r\nfunction AddEntityDialogController(instance) {\r\n let vm = instance;\r\n let userSettings;\r\n userSettingsService.loadUserSettings().subscribe(settings=> {\r\n userSettings = settings;\r\n if (!userSettings.createdGatewaysCount) userSettings.createdGatewaysCount = 0;\r\n });\r\n \r\n\r\n vm.addEntityFormGroup = vm.fb.group({\r\n entityName: ['', [vm.validators.required]],\r\n entityType: ['DEVICE'],\r\n entityLabel: [''],\r\n type: ['', [vm.validators.required]],\r\n });\r\n\r\n vm.cancel = function() {\r\n vm.dialogRef.close(null);\r\n };\r\n\r\n\r\n vm.save = function($event) {\r\n vm.addEntityFormGroup.markAsPristine();\r\n saveEntityObservable().subscribe(\r\n function (device) {\r\n widgetContext.updateAliases();\r\n userSettingsService.putUserSettings({ createdGatewaysCount: ++userSettings.createdGatewaysCount }).subscribe(_=>{\r\n });\r\n vm.dialogRef.close(null);\r\n openCommandDialog(device, $event);\r\n }\r\n );\r\n };\r\n \r\n function openCommandDialog(device, $event) {\r\n vm.device = device;\r\n let openCommandAction = widgetContext.actionsApi.getActionDescriptors(\"actionCellButton\").find(action => action.name == \"Launch command\");\r\n widgetContext.actionsApi.handleWidgetAction($event, openCommandAction, device.id, device.name, {newDevice: true});\r\n goToConfigState();\r\n }\r\n\r\n \r\n function goToConfigState() {\r\n const stateParams = {};\r\n stateParams.entityId = vm.device.id;\r\n stateParams.entityName = vm.device.name;\r\n const newStateParams = {\r\n targetEntityParamName: 'default',\r\n new_gateway: {\r\n entityId: vm.device.id,\r\n entityName: vm.device.name\r\n }\r\n }\r\n const params = {...stateParams, ...newStateParams};\r\n widgetContext.stateController.openState('gateway_details', params, false);\r\n }\r\n\r\n function saveEntityObservable() {\r\n const formValues = vm.addEntityFormGroup.value;\r\n let entity = {\r\n name: formValues.entityName,\r\n type: formValues.type,\r\n label: formValues.entityLabel,\r\n additionalInfo: {\r\n gateway: true\r\n }\r\n };\r\n return deviceService.saveDevice(entity);\r\n }\r\n}\r\n",
- "customResources": [],
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "9aab301f-a305-520b-4842-b02ca92a5970"
- }
- ]
- },
- "showTitleIcon": false,
- "titleTooltip": "",
- "enableDataExport": false,
- "widgetStyle": {},
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "configMode": "advanced",
- "titleFont": null,
- "titleColor": null,
- "titleIcon": null,
- "iconColor": null,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "23b9adc5-b3bd-040f-e5eb-a45925c73257",
- "typeFullFqn": "system.cards.entities_table"
- },
- "d4a1ffc4-c9f6-7b15-bca0-17feb58bac99": {
- "type": "latest",
- "sizeX": 9.5,
- "sizeY": 6,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": []
- }
- ],
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 60000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1680685647526,
- "endTimeMs": 1680772047526
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "AVG",
- "limit": 25000
- }
- },
- "showTitle": false,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "0px",
- "settings": {},
- "title": "New Gateway configuration",
- "showTitleIcon": false,
- "titleTooltip": "",
- "dropShadow": true,
- "enableFullscreen": false,
- "enableDataExport": false,
- "widgetStyle": {},
- "widgetCss": "",
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 500
- },
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "showLegend": false,
- "useDashboardTimewindow": true,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "d4a1ffc4-c9f6-7b15-bca0-17feb58bac99",
- "typeFullFqn": "system.gateway_widgets.gateway_general_configuration"
- },
- "02a05113-d878-b086-328e-75bd6f02b2bb": {
- "type": "latest",
- "sizeX": 11,
- "sizeY": 8,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [
- {
- "name": "activeConnectors",
- "type": "attribute",
- "label": "activeConnectors",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.7454705362378311
- },
- {
- "name": "lastConnectTime",
- "type": "attribute",
- "label": "lastConnectTime",
- "color": "#4caf50",
- "settings": {},
- "_hash": 0.7249585632235194
- },
- {
- "name": "lastDisconnectTime",
- "type": "attribute",
- "label": "lastDisconnectTime",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.9812430092707332
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "active",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.9216097189544408
- }
- ]
- }
- ],
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 60000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1680769601167,
- "endTimeMs": 1680856001167
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "AVG",
- "limit": 25000
- }
- },
- "showTitle": false,
- "backgroundColor": "#FFFFFF01",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "0px",
- "settings": {},
- "title": "New Gateway connector",
- "showTitleIcon": false,
- "titleTooltip": "",
- "dropShadow": false,
- "enableFullscreen": false,
- "enableDataExport": false,
- "widgetStyle": {},
- "widgetCss": "",
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 500
- },
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "showLegend": false,
- "useDashboardTimewindow": true
- },
- "row": 0,
- "col": 0,
- "id": "02a05113-d878-b086-328e-75bd6f02b2bb",
- "typeFullFqn": "system.gateway_widgets.gateway_connectors"
- },
- "79f59106-758f-c428-8b93-4341faea705d": {
- "type": "latest",
- "sizeX": 5,
- "sizeY": 3.5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [
- {
- "name": "name",
- "type": "entityField",
- "label": "Name",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.1375998537558516
- },
- {
- "name": "type",
- "type": "entityField",
- "label": "Type",
- "color": "#4caf50",
- "settings": {},
- "_hash": 0.9806146353493157
- },
- {
- "name": "activeDevices",
- "type": "attribute",
- "label": "activeDevices",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.09421132942226995
- },
- {
- "name": "inactiveDevices",
- "type": "attribute",
- "label": "inactiveDevices",
- "color": "#607d8b",
- "settings": {},
- "_hash": 0.35218481621567044
- },
- {
- "name": "active_connectors",
- "type": "attribute",
- "label": "active_connectors",
- "color": "#3f51b5",
- "settings": {},
- "_hash": 0.45076316106117176
- },
- {
- "name": "inactive_connectors",
- "type": "attribute",
- "label": "inactive_connectors",
- "color": "#e91e63",
- "settings": {},
- "_hash": 0.36755550699981954
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#e91e63",
- "settings": {},
- "_hash": 0.10301612696488416,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "var newValue = value == 'true' ? \"Active\" : \"Inactive\";\nreturn newValue;"
- },
- {
- "name": "ALL_ERRORS_COUNT",
- "type": "timeseries",
- "label": "ALL_ERRORS_COUNT",
- "color": "#ffeb3b",
- "settings": {},
- "_hash": 0.2770587478725004
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "bd33a006-fd40-3efc-7863-505c6e64f2b8",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "count",
- "color": "#3f51b5",
- "settings": {},
- "_hash": 0.6470244865405319
- }
- ]
- },
- {
- "type": "entityCount",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "956cf341-7cdf-82a7-ea2a-50cc9586f1f1",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "count 2",
- "color": "#e91e63",
- "settings": {},
- "_hash": 0.46058668157030436
- }
- ]
- }
- ],
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 60000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1683116949383,
- "endTimeMs": 1683203349383
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "AVG",
- "limit": 25000
- }
- },
- "showTitle": false,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "useMarkdownTextFunction": true,
- "markdownTextPattern": "# Markdown/HTML card \\n - **Current entity**: **${entityName}**. \\n - **Current value**: **${Random}**.",
- "markdownTextFunction": "var blockData = '';\nvar connectorsIndex = ctx.actionsApi.getActionDescriptors('elementClick').findIndex(action=>action.name==\"Connectors\");\nvar logsIndex = ctx.actionsApi.getActionDescriptors('elementClick').findIndex(action=>action.name==\"Logs\");\nfunction generateMatHeader(index) {\n if( index !== undefined && index > -1) {\n return ``\n } else {\n return \"\" \n }\n}\nfunction createDataBlock(value, label, dividerStyle, mobile, index) {\n blockData += `\n \n \n \n ${generateMatHeader(index)}\n ${label}\n \n ${value}\n `;\n}\ncreateDataBlock(data[0].Status, \"Status\", data[0].Status === \"Active\"? 'divider-green' : 'divider-red');\ncreateDataBlock(data[0].Name, \"Gateway Name\", '', ctx.isMobile);\ncreateDataBlock(data[0].Type, \"Gateway Type\", '');\ncreateDataBlock(\n `${(data[1]?data[1].count:0)} `\n + \" | \" + \n `${(data[2]?data[2][\"count 2\"]:0)} `\n , \"Devices (Active | Inactive)\", '');\ncreateDataBlock(\n `${(data[0].active_connectors?JSON.parse(data[0].active_connectors).length:0)} `\n + \" | \" + \n `${(data[0].inactive_connectors?JSON.parse(data[0].inactive_connectors).length:0)} `\n , \"Connectors (Enabled | Disabled)\", '', '', connectorsIndex);\ncreateDataBlock(data[0].ALL_ERRORS_COUNT || 0, \"Errors\", (data[0].ALL_ERRORS_COUNT || 0) === 0 ? 'divider-green' : 'divider-red', '', logsIndex);\nreturn `${blockData}
`;",
- "applyDefaultMarkdownStyle": false,
- "markdownCss": ".divider {\n position: absolute;\n width: 3px;\n top: 8px;\n border-radius: 2px;\n bottom: 8px;\n border: 1px solid rgba(31, 70, 144, 1);\n background-color: rgba(31, 70, 144, 1);\n left: 10px;\n}\n.divider-green .divider {\n border: 1px solid rgb(25,128,56);\n background-color: rgb(25,128,56);\n}\n\n.divider-green .mat-mdc-card-content {\n color: rgb(25,128,56);\n}\n\n.divider-red .divider {\n border: 1px solid rgb(203,37,48);\n background-color: rgb(203,37,48);\n}\n\n.divider-red .mat-mdc-card-content {\n color: rgb(203,37,48);\n}\n\n.mdc-card {\n position: relative;\n padding-left: 10px;\n margin-bottom: 1px;\n}\n\n.mat-mdc-card-subtitle {\n font-weight: 400;\n font-size: 12px;\n}\n\n.mat-mdc-card-header {\n padding: 8px 16px 0;\n}\n\n.mat-mdc-card-content:last-child {\n padding-bottom: 8px;\n font-size: 16px;\n}\n\n.cards-container {\n height: calc(100% - 1px);\n justify-content: stretch;\n align-items: center;\n margin-bottom: 1px;\n}\n\n::ng-deep.tb-home-widget-link > div {\n flex-grow: 1;\n cursor: pointer;\n}\n\n .tb-home-widget-link {\n width: 100%;\n }\n\n .tb-home-widget-link:hover::after{\n color: inherit;\n }\n \n .tb-home-widget-link::after{\n content: 'arrow_forward';\n display: inline-block;\n transform: rotate(315deg);\n font-family: 'Material Icons';\n font-weight: normal;\n font-style: normal;\n font-size: 18px;\n color: rgba(0, 0, 0, 0.12);\n vertical-align: bottom;\n margin-left: 6px;\n}"
- },
- "title": "Connectors",
- "showTitleIcon": false,
- "iconColor": "rgba(0, 0, 0, 0.87)",
- "iconSize": "24px",
- "titleTooltip": "",
- "dropShadow": true,
- "enableFullscreen": false,
- "widgetStyle": {},
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "showLegend": false,
- "useDashboardTimewindow": true,
- "margin": "0",
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "displayTimewindow": true,
- "borderRadius": "4px",
- "actions": {
- "elementClick": [
- {
- "name": "Connectors",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "connectors",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "ee7216d8-ad7a-20db-1abc-2531e221f24c"
- },
- {
- "name": "Logs",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "logs",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "ceec0446-c25f-2b9b-b1b1-58ed751476ff"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "79f59106-758f-c428-8b93-4341faea705d",
- "typeFullFqn": "system.cards.markdown_card"
- },
- "60dcf518-8fc3-3539-8ff8-ce94bda39f3a": {
- "type": "alarm",
- "sizeX": 10.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 0,
- "timewindowMs": 2592000000,
- "quickInterval": "CURRENT_DAY",
- "interval": 1000
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "enableSelection": true,
- "enableSearch": true,
- "enableSelectColumnDisplay": false,
- "enableFilter": true,
- "enableStickyHeader": true,
- "enableStickyAction": false,
- "reserveSpaceForHiddenAction": "true",
- "displayDetails": true,
- "allowAcknowledgment": true,
- "allowClear": true,
- "allowAssign": true,
- "displayActivity": true,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "-createdTime",
- "useRowStyleFunction": false
- },
- "title": "Alarms",
- "dropShadow": true,
- "enableFullscreen": false,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "alarmSource": {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [
- {
- "name": "createdTime",
- "type": "alarm",
- "label": "Created time",
- "color": "#2196f3",
- "settings": {
- "useCellStyleFunction": false,
- "cellStyleFunction": "",
- "useCellContentFunction": false,
- "cellContentFunction": ""
- },
- "_hash": 0.021092237451093787
- },
- {
- "name": "type",
- "type": "alarm",
- "label": "Type",
- "color": "#f44336",
- "settings": {
- "useCellStyleFunction": false,
- "cellStyleFunction": "",
- "useCellContentFunction": false,
- "cellContentFunction": ""
- },
- "_hash": 0.7323586880398418
- },
- {
- "name": "severity",
- "type": "alarm",
- "label": "Severity",
- "color": "#ffc107",
- "settings": {
- "useCellStyleFunction": false,
- "useCellContentFunction": false
- },
- "_hash": 0.09927019860088193
- },
- {
- "name": "details",
- "type": "alarm",
- "label": "details",
- "color": "#9c27b0",
- "settings": {},
- "_hash": 0.10903701402251387
- },
- {
- "name": "status",
- "type": "alarm",
- "label": "Status",
- "color": "#607d8b",
- "settings": {},
- "_hash": 0.5260411335842929
- }
- ]
- },
- "alarmsPollingInterval": 5,
- "showTitleIcon": false,
- "titleIcon": "more_horiz",
- "iconColor": "rgba(0, 0, 0, 0.87)",
- "iconSize": "24px",
- "titleTooltip": "",
- "widgetStyle": {},
- "displayTimewindow": false,
- "actions": {},
- "datasources": [],
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "alarmFilterConfig": {
- "statusList": [],
- "severityList": [],
- "typeList": [],
- "searchPropagatedAlarms": false
- },
- "enableDataExport": false,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "60dcf518-8fc3-3539-8ff8-ce94bda39f3a",
- "typeFullFqn": "system.alarm_widgets.alarms_table"
- },
- "27e6b37c-085e-824d-fb13-69651a545ec1": {
- "type": "timeseries",
- "sizeX": 7.5,
- "sizeY": 3,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": []
- }
- ],
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 0,
- "timewindowMs": 43200000,
- "quickInterval": "CURRENT_DAY",
- "interval": 1000
- },
- "aggregation": {
- "type": "NONE",
- "limit": 25000
- },
- "timezone": null
- },
- "showTitle": true,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {},
- "title": "Logs",
- "showTitleIcon": false,
- "dropShadow": true,
- "enableFullscreen": true,
- "widgetStyle": {},
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "showLegend": false,
- "useDashboardTimewindow": false,
- "displayTimewindow": true,
- "titleTooltip": "",
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "27e6b37c-085e-824d-fb13-69651a545ec1",
- "typeFullFqn": "system.gateway_widgets.gateway_logs"
- },
- "bcd04dbf-c82a-ca13-6e88-a74f32b4348a": {
- "type": "timeseries",
- "sizeX": 7.5,
- "sizeY": 3,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": []
- }
- ],
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 0,
- "timewindowMs": 43200000,
- "quickInterval": "CURRENT_DAY",
- "interval": 1000
- },
- "aggregation": {
- "type": "NONE",
- "limit": 25000
- },
- "timezone": null
- },
- "showTitle": true,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "isConnectorLog": true,
- "connectorLogState": "connector_logs"
- },
- "title": "${connectorName} logs",
- "showTitleIcon": false,
- "dropShadow": true,
- "enableFullscreen": true,
- "widgetStyle": {},
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "showLegend": false,
- "useDashboardTimewindow": false,
- "displayTimewindow": true,
- "titleTooltip": "",
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "bcd04dbf-c82a-ca13-6e88-a74f32b4348a",
- "typeFullFqn": "system.gateway_widgets.gateway_logs"
- },
- "9b88dc51-b186-90ef-5afb-9648e6e2ac9a": {
- "type": "timeseries",
- "sizeX": 8,
- "sizeY": 5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 0,
- "timewindowMs": 604800000,
- "quickInterval": "CURRENT_DAY",
- "interval": 300000
- },
- "aggregation": {
- "type": "NONE",
- "limit": 25000
- },
- "timezone": null
- },
- "showTitle": true,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "stack": false,
- "fontSize": 10,
- "fontColor": "#545454",
- "showTooltip": true,
- "tooltipIndividual": false,
- "tooltipCumulative": false,
- "hideZeros": false,
- "grid": {
- "verticalLines": true,
- "horizontalLines": true,
- "outlineWidth": 0,
- "color": "#545454",
- "backgroundColor": null,
- "tickColor": "#DDDDDD"
- },
- "xaxis": {
- "title": null,
- "showLabels": true,
- "color": "#545454"
- },
- "yaxis": {
- "min": null,
- "max": null,
- "title": null,
- "showLabels": true,
- "color": "#545454",
- "tickSize": null,
- "tickDecimals": 0,
- "ticksFormatter": ""
- },
- "shadowSize": 4,
- "smoothLines": true,
- "comparisonEnabled": false,
- "timeForComparison": "previousInterval",
- "comparisonCustomIntervalValue": 7200000,
- "xaxisSecond": {
- "axisPosition": "top",
- "title": null,
- "showLabels": true
- },
- "customLegendEnabled": false,
- "dataKeysListForLabels": []
- },
- "title": "Gateway Custom Statistics",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 600
- },
- "useDashboardTimewindow": true,
- "displayTimewindow": false,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "showLegend": false,
- "legendConfig": {
- "direction": "column",
- "position": "bottom",
- "sortDataKeys": false,
- "showMin": false,
- "showMax": false,
- "showAvg": true,
- "showTotal": false,
- "showLatest": false
- },
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "9b88dc51-b186-90ef-5afb-9648e6e2ac9a",
- "typeFullFqn": "system.gateway_widgets.gateway_custom_statistics"
- },
- "2a318e56-5c83-4f82-bf23-df72dd7e3edf": {
- "type": "rpc",
- "sizeX": 9.5,
- "sizeY": 5.5,
- "config": {
- "targetDeviceAliases": [],
- "showTitle": false,
- "backgroundColor": "#010101",
- "color": "rgba(255, 254, 254, 0.87)",
- "padding": "0px",
- "settings": {
- "parseGpioStatusFunction": "return body[pin] === true;",
- "gpioStatusChangeRequest": {
- "method": "setGpioStatus",
- "paramsBody": "{\n \"pin\": \"{$pin}\",\n \"enabled\": \"{$enabled}\"\n}"
- },
- "requestTimeout": 500,
- "switchPanelBackgroundColor": "#b71c1c",
- "gpioStatusRequest": {
- "method": "getGpioStatus",
- "paramsBody": "{}"
- },
- "gpioList": [
- {
- "pin": 1,
- "label": "GPIO 1",
- "row": 0,
- "col": 0,
- "_uniqueKey": 0
- },
- {
- "pin": 2,
- "label": "GPIO 2",
- "row": 0,
- "col": 1,
- "_uniqueKey": 1
- },
- {
- "pin": 3,
- "label": "GPIO 3",
- "row": 1,
- "col": 0,
- "_uniqueKey": 2
- }
- ]
- },
- "title": "RPC remote shell",
- "dropShadow": true,
- "enableFullscreen": true,
- "widgetStyle": {
- "border-radius": "10px"
- },
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "useDashboardTimewindow": true,
- "showLegend": false,
- "actions": {},
- "datasources": [],
- "showTitleIcon": false,
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "targetDevice": {
- "type": "entity",
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8"
- }
- },
- "row": 0,
- "col": 0,
- "id": "2a318e56-5c83-4f82-bf23-df72dd7e3edf",
- "typeFullFqn": "system.control_widgets.rpc_remote_shell"
- },
- "c50e294a-265a-d13c-c772-b56c4df953fe": {
- "type": "timeseries",
- "sizeX": 8,
- "sizeY": 5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [
- {
- "name": "allBytesSentToDevices",
- "type": "timeseries",
- "label": "Sent To Devices (bytes)",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.6608774125800538,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "allBytesSentToTB",
- "type": "timeseries",
- "label": "Send To ThingsBoard (bytes)",
- "color": "#4caf50",
- "settings": {},
- "_hash": 0.05525630093240763,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "allReсeivedBytesFromTB",
- "type": "timeseries",
- "label": "Received From ThingsBoard (bytes)",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.4539040118567914,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "convertedBytesFromDevice",
- "type": "timeseries",
- "label": "Converted From Devices (bytes)",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.36601736007496366,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "eventsProduced",
- "type": "timeseries",
- "label": "Events Produced",
- "color": "#607d8b",
- "settings": {},
- "_hash": 0.6227465527701406,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "eventsSent",
- "type": "timeseries",
- "label": "Events Sent",
- "color": "#9c27b0",
- "settings": {},
- "_hash": 0.6043328458525739,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "receivedBytesFromDevices",
- "type": "timeseries",
- "label": "Received From Devices (bytes)",
- "color": "#8bc34a",
- "settings": {},
- "_hash": 0.7829761270709421,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ]
- }
- ],
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 0,
- "timewindowMs": 604800000,
- "quickInterval": "CURRENT_DAY",
- "interval": 1800000
- },
- "aggregation": {
- "type": "AVG",
- "limit": 25000
- },
- "timezone": null
- },
- "showTitle": true,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "stack": false,
- "fontSize": 10,
- "fontColor": "#545454",
- "showTooltip": true,
- "tooltipIndividual": false,
- "tooltipCumulative": false,
- "hideZeros": false,
- "grid": {
- "verticalLines": true,
- "horizontalLines": true,
- "outlineWidth": 0,
- "color": "#545454",
- "backgroundColor": null,
- "tickColor": "#DDDDDD"
- },
- "xaxis": {
- "title": null,
- "showLabels": true,
- "color": "#545454"
- },
- "yaxis": {
- "min": null,
- "max": null,
- "title": null,
- "showLabels": true,
- "color": "#545454",
- "tickSize": null,
- "tickDecimals": 0,
- "ticksFormatter": ""
- },
- "shadowSize": 4,
- "smoothLines": true,
- "comparisonEnabled": false,
- "timeForComparison": "previousInterval",
- "comparisonCustomIntervalValue": 7200000,
- "xaxisSecond": {
- "axisPosition": "top",
- "title": null,
- "showLabels": true
- },
- "customLegendEnabled": false,
- "dataKeysListForLabels": []
- },
- "title": "Gateway General Chart Statistics",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 600
- },
- "useDashboardTimewindow": true,
- "displayTimewindow": false,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "showLegend": false,
- "legendConfig": {
- "direction": "row",
- "position": "bottom",
- "sortDataKeys": false,
- "showMin": false,
- "showMax": false,
- "showAvg": false,
- "showTotal": false,
- "showLatest": false
- },
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "c50e294a-265a-d13c-c772-b56c4df953fe",
- "typeFullFqn": "system.gateway_widgets.gateway_general_chart_statistics"
- },
- "da01e13f-c108-39fd-2a74-b40da088769a": {
- "type": "timeseries",
- "sizeX": 8,
- "sizeY": 6.5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [
- {
- "name": "SERVICE_LOGS",
- "type": "timeseries",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"DEBUG\":\r\n cssClass = \"status status-debug\";\r\n break;\r\n case \"WARNING\":\r\n cssClass = \"status status-warning\";\r\n break;\r\n case \"ERROR\":\r\n case \"EXCEPTION\":\r\n cssClass = \"status status-error\";\r\n break;\r\n case \"INFO\":\r\n default:\r\n cssClass = \"status status-info\";\r\n break;\r\n }\r\n \r\n return `${value}`;"
- },
- "_hash": 0.6667576563240645,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "if (value.includes(\"RPC\")&&!value.includes(\"GRPC\")) {\n let parsedValue = value.match(/\\|(\\w+)\\|/);\n parsedValue = parsedValue ? parsedValue[1] :\n parsedValue;\n return parsedValue || value;\n} else return '';"
- },
- {
- "name": "SERVICE_LOGS",
- "type": "timeseries",
- "label": "Details",
- "color": "#2196f3",
- "settings": {
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let statusValue = value.match(/\\|(\\w+)\\|/); \r\nstatusValue = statusValue? statusValue[1] : statusValue;\r\nlet cssClass = statusValue === \"EXCEPTION\" ?\r\n \"msg-status-exception\" : 'msg';\r\nlet parsedValue = /\\[(.*)/.exec(value);\r\nparsedValue = parsedValue ? parsedValue[0] : parsedValue;\r\nreturn `${parsedValue || value}`;"
- },
- "_hash": 0.6931154680365814,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "if (value.includes(\"RPC\")&&!value.includes(\"GRPC\")) {\n return value;\n} else return '';"
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 0,
- "timewindowMs": 604800000,
- "quickInterval": "CURRENT_DAY",
- "interval": 1000
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "showCellActionsMenu": true,
- "reserveSpaceForHiddenAction": "true",
- "showTimestamp": true,
- "showMilliseconds": false,
- "displayPagination": true,
- "useEntityLabel": false,
- "defaultPageSize": 10,
- "hideEmptyLines": true,
- "disableStickyHeader": false,
- "useRowStyleFunction": false
- },
- "title": "RPC Logs",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 600,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "widgetStyle": {},
- "actions": {},
- "showTitleIcon": false,
- "iconColor": "rgba(0, 0, 0, 0.87)",
- "iconSize": "24px",
- "displayTimewindow": true,
- "titleTooltip": "",
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n}\r\n\r\n.status-debug {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n}\r\n\r\n.status-warning {\r\n color: orange;\r\n background: rgba(255, 165, 0, 0.1);\r\n}\r\n\r\n.status-error {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n}\r\n\r\n.status-info {\r\n color: blue;\r\n background: rgba(0, 0, 128, 0.1);\r\n}\r\n\r\n.msg-status-exception {\r\n color: red;\r\n}",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "da01e13f-c108-39fd-2a74-b40da088769a",
- "typeFullFqn": "system.cards.timeseries_table"
- },
- "ce3065bf-d898-2c03-6236-ce1b6cdf1f3f": {
- "type": "rpc",
- "sizeX": 9.5,
- "sizeY": 5.5,
- "config": {
- "targetDeviceAliases": [],
- "showTitle": true,
- "backgroundColor": "#010101",
- "color": "rgba(255, 254, 254, 0.87)",
- "padding": "0px",
- "settings": {
- "parseGpioStatusFunction": "return body[pin] === true;",
- "gpioStatusChangeRequest": {
- "method": "setGpioStatus",
- "paramsBody": "{\n \"pin\": \"{$pin}\",\n \"enabled\": \"{$enabled}\"\n}"
- },
- "requestTimeout": 500,
- "switchPanelBackgroundColor": "#b71c1c",
- "gpioStatusRequest": {
- "method": "getGpioStatus",
- "paramsBody": "{}"
- },
- "gpioList": [
- {
- "pin": 1,
- "label": "GPIO 1",
- "row": 0,
- "col": 0,
- "_uniqueKey": 0
- },
- {
- "pin": 2,
- "label": "GPIO 2",
- "row": 0,
- "col": 1,
- "_uniqueKey": 1
- },
- {
- "pin": 3,
- "label": "GPIO 3",
- "row": 1,
- "col": 0,
- "_uniqueKey": 2
- }
- ]
- },
- "title": "RPC debug terminal",
- "dropShadow": true,
- "enableFullscreen": true,
- "widgetStyle": {},
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "useDashboardTimewindow": true,
- "showLegend": false,
- "actions": {},
- "datasources": [],
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "borderRadius": "4px",
- "targetDevice": {
- "type": "entity",
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8"
- }
- },
- "row": 0,
- "col": 0,
- "id": "ce3065bf-d898-2c03-6236-ce1b6cdf1f3f",
- "typeFullFqn": "system.control_widgets.rpc_debug_terminal"
- },
- "46b68eb5-7e2d-bca1-c2ef-061b64575218": {
- "type": "rpc",
- "sizeX": 4,
- "sizeY": 2,
- "config": {
- "targetDeviceAliases": [],
- "showTitle": true,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "parseGpioStatusFunction": "return body[pin] === true;",
- "gpioStatusChangeRequest": {
- "method": "setGpioStatus",
- "paramsBody": "{\n \"pin\": \"{$pin}\",\n \"enabled\": \"{$enabled}\"\n}"
- },
- "requestTimeout": 500,
- "switchPanelBackgroundColor": "#b71c1c",
- "gpioStatusRequest": {
- "method": "getGpioStatus",
- "paramsBody": "{}"
- },
- "gpioList": [
- {
- "pin": 1,
- "label": "GPIO 1",
- "row": 0,
- "col": 0,
- "_uniqueKey": 0
- },
- {
- "pin": 2,
- "label": "GPIO 2",
- "row": 0,
- "col": 1,
- "_uniqueKey": 1
- },
- {
- "pin": 3,
- "label": "GPIO 3",
- "row": 1,
- "col": 0,
- "_uniqueKey": 2
- }
- ]
- },
- "title": "Service RPC",
- "datasources": [],
- "showTitleIcon": false,
- "titleTooltip": "",
- "dropShadow": true,
- "enableFullscreen": true,
- "widgetStyle": {},
- "widgetCss": "",
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 600
- },
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "showLegend": false,
- "borderRadius": "4px",
- "targetDevice": {
- "type": "entity",
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8"
- }
- },
- "row": 0,
- "col": 0,
- "id": "46b68eb5-7e2d-bca1-c2ef-061b64575218",
- "typeFullFqn": "system.gateway_widgets.service_rpc"
- },
- "878c68fd-71cb-21d4-684a-b5b5a4526b43": {
- "type": "rpc",
- "sizeX": 4,
- "sizeY": 2,
- "config": {
- "targetDeviceAliases": [],
- "showTitle": true,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "isConnector": true
- },
- "title": "Service RPC",
- "datasources": [],
- "showTitleIcon": false,
- "titleTooltip": "",
- "dropShadow": true,
- "enableFullscreen": true,
- "widgetStyle": {},
- "widgetCss": "",
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 600
- },
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "showLegend": false,
- "borderRadius": "4px",
- "targetDevice": {
- "type": "entity",
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8"
- }
- },
- "row": 0,
- "col": 0,
- "id": "878c68fd-71cb-21d4-684a-b5b5a4526b43",
- "typeFullFqn": "system.gateway_widgets.service_rpc"
- },
- "0fc7dcf3-32a2-0159-738e-96956bf0d450": {
- "type": "timeseries",
- "sizeX": 8,
- "sizeY": 6.5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [
- {
- "name": "SERVICE_LOGS",
- "type": "timeseries",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"DEBUG\":\r\n cssClass = \"status status-debug\";\r\n break;\r\n case \"WARNING\":\r\n cssClass = \"status status-warning\";\r\n break;\r\n case \"ERROR\":\r\n case \"EXCEPTION\":\r\n cssClass = \"status status-error\";\r\n break;\r\n case \"INFO\":\r\n default:\r\n cssClass = \"status status-info\";\r\n break;\r\n }\r\n \r\n return `${value}`;"
- },
- "_hash": 0.6667576563240645,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "if (value.includes(\"RPC\")&&!value.includes(\"GRPC\")) {\n let parsedValue = value.match(/\\|(\\w+)\\|/);\n parsedValue = parsedValue ? parsedValue[1] :\n parsedValue;\n return parsedValue || value;\n} else return '';"
- },
- {
- "name": "SERVICE_LOGS",
- "type": "timeseries",
- "label": "Details",
- "color": "#2196f3",
- "settings": {
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let statusValue = value.match(/\\|(\\w+)\\|/); \r\nstatusValue = statusValue? statusValue[1] : statusValue;\r\nlet cssClass = statusValue === \"EXCEPTION\" ?\r\n \"msg-status-exception\" : 'msg';\r\nlet parsedValue = /\\[(.*)/.exec(value);\r\nparsedValue = parsedValue ? parsedValue[0] : parsedValue;\r\nreturn `${parsedValue || value}`;"
- },
- "_hash": 0.6931154680365814,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "if (value.includes(\"RPC\")&&!value.includes(\"GRPC\")) {\n return value;\n} else return '';"
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- },
- "latestDataKeys": []
- }
- ],
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 0,
- "timewindowMs": 604800000,
- "quickInterval": "CURRENT_DAY",
- "interval": 1000
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "showCellActionsMenu": true,
- "reserveSpaceForHiddenAction": "true",
- "showTimestamp": true,
- "showMilliseconds": false,
- "displayPagination": true,
- "useEntityLabel": false,
- "defaultPageSize": 10,
- "hideEmptyLines": true,
- "disableStickyHeader": false,
- "useRowStyleFunction": false
- },
- "title": "RPC Logs",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 600,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "widgetStyle": {},
- "actions": {},
- "showTitleIcon": false,
- "iconColor": "rgba(0, 0, 0, 0.87)",
- "iconSize": "24px",
- "displayTimewindow": true,
- "titleTooltip": "",
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n}\r\n\r\n.status-debug {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n}\r\n\r\n.status-warning {\r\n color: orange;\r\n background: rgba(255, 165, 0, 0.1);\r\n}\r\n\r\n.status-error {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n}\r\n\r\n.status-info {\r\n color: blue;\r\n background: rgba(0, 0, 128, 0.1);\r\n}\r\n\r\n.msg-status-exception {\r\n color: red;\r\n}",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "0fc7dcf3-32a2-0159-738e-96956bf0d450",
- "typeFullFqn": "system.cards.timeseries_table"
- },
- "6e136fbc-545b-4926-c0a9-79348f35628a": {
- "type": "rpc",
- "sizeX": 9.5,
- "sizeY": 5.5,
- "config": {
- "targetDeviceAliases": [],
- "showTitle": true,
- "backgroundColor": "#010101",
- "color": "rgba(255, 254, 254, 0.87)",
- "padding": "0px",
- "settings": {
- "parseGpioStatusFunction": "return body[pin] === true;",
- "gpioStatusChangeRequest": {
- "method": "setGpioStatus",
- "paramsBody": "{\n \"pin\": \"{$pin}\",\n \"enabled\": \"{$enabled}\"\n}"
- },
- "requestTimeout": 500,
- "switchPanelBackgroundColor": "#b71c1c",
- "gpioStatusRequest": {
- "method": "getGpioStatus",
- "paramsBody": "{}"
- },
- "gpioList": [
- {
- "pin": 1,
- "label": "GPIO 1",
- "row": 0,
- "col": 0,
- "_uniqueKey": 0
- },
- {
- "pin": 2,
- "label": "GPIO 2",
- "row": 0,
- "col": 1,
- "_uniqueKey": 1
- },
- {
- "pin": 3,
- "label": "GPIO 3",
- "row": 1,
- "col": 0,
- "_uniqueKey": 2
- }
- ]
- },
- "title": "New RPC debug terminal",
- "dropShadow": true,
- "enableFullscreen": true,
- "widgetStyle": {},
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "useDashboardTimewindow": true,
- "showLegend": false,
- "actions": {},
- "datasources": [],
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "borderRadius": "4px",
- "targetDevice": {
- "type": "entity",
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8"
- }
- },
- "row": 0,
- "col": 0,
- "id": "6e136fbc-545b-4926-c0a9-79348f35628a",
- "typeFullFqn": "system.control_widgets.rpc_debug_terminal"
- },
- "fb9df382-6ef3-4aa6-bc13-8bf8e300ba19": {
- "type": "latest",
- "sizeX": 5,
- "sizeY": 3.5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": []
- }
- ],
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 60000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1685437116892,
- "endTimeMs": 1685523516892
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "AVG",
- "limit": 25000
- }
- },
- "showTitle": false,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "useMarkdownTextFunction": false,
- "markdownTextPattern": "\r\n \r\n
",
- "applyDefaultMarkdownStyle": false,
- "markdownCss": ".action-buttons-container {\r\n display: flex;\r\n flex-wrap: wrap;\r\n flex-direction: row;\r\n height: 100%;\r\n width: 100%;\r\n align-content: center;\r\n}\r\n\r\nbutton {\r\n flex-grow: 1;\r\n margin: 10px;\r\n min-width: 150px;\r\n height: auto;\r\n}"
- },
- "title": "Service command",
- "showTitleIcon": false,
- "iconColor": "rgba(0, 0, 0, 0.87)",
- "iconSize": "24px",
- "titleTooltip": "",
- "dropShadow": true,
- "enableFullscreen": false,
- "widgetStyle": {},
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "showLegend": false,
- "useDashboardTimewindow": true,
- "actions": {
- "elementClick": [
- {
- "name": "Launch command",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "customPretty",
- "customHtml": "\n
\n {{ 'gateway.launch-command' | translate }}
\n \n \n \n \n
\n
\n \n
\n
\n",
- "customCss": ".container {\n display: grid;\n grid-template-rows: min-content minmax(auto, 1fr) min-content;\n height: 100%;\n max-height: 100vh;\n width: 600px;\n max-width: 100%;\n}",
- "customFunction": "let $injector = widgetContext.$scope.$injector;\nlet customDialog = $injector.get(widgetContext.servicesMap.get('customDialog'));\n\nopenCommands();\n\nfunction openCommands() {\n customDialog.customDialog(htmlTemplate, CommandsDialogController, {panelClass: \"test\"}).subscribe();\n}\n\nfunction CommandsDialogController(instance) {\n let vm = instance;\n \n vm.entityId = entityId.id;\n\n vm.cancel = function() {\n vm.dialogRef.close(null);\n };\n}\n",
- "customResources": [],
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "337c767b-3217-d3d3-b955-7b0bd0858a1d"
- }
- ]
- },
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "fb9df382-6ef3-4aa6-bc13-8bf8e300ba19",
- "typeFullFqn": "system.cards.markdown_card"
- },
- "61d149e8-b249-5526-e5d7-6ad58413982e": {
- "type": "latest",
- "sizeX": 5,
- "sizeY": 3.5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "filterId": null,
- "dataKeys": [
- {
- "name": "general_configuration",
- "type": "attribute",
- "label": "general_configuration",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.739858588321151
- },
- {
- "name": "RemoteLoggingLevel",
- "type": "attribute",
- "label": "RemoteLoggingLevel",
- "color": "#4caf50",
- "settings": {},
- "_hash": 0.20230761305210687
- }
- ]
- }
- ],
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 60000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1685437116892,
- "endTimeMs": 1685523516892
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "AVG",
- "limit": 25000
- }
- },
- "showTitle": false,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "8px",
- "settings": {
- "useMarkdownTextFunction": true,
- "markdownTextFunction": "let buttonsHtml = \"\" \nctx.actionsApi.getActionDescriptors('elementClick').forEach((btn, index)=>{\n let disabled =false;\n if (index == 2) {\n disabled = data[0] && data[0].RemoteLoggingLevel ? data[0].RemoteLoggingLevel == \"NONE\" : true;\n } else if (index == 4) {\n const conf = data[0].general_configuration? JSON.parse(data[0].general_configuration): {};\n disabled = !conf.remoteShell;\n }\n buttonsHtml += ``\n});\n\nreturn `${buttonsHtml}
`;",
- "applyDefaultMarkdownStyle": false,
- "markdownCss": ".action-buttons-container {\r\n display: flex;\r\n flex-wrap: wrap;\r\n flex-direction: row;\r\n height: 100%;\r\n width: 100%;\r\n align-content: start;\r\n}\r\n\r\nbutton {\r\n flex-grow: 1;\r\n margin: 10px;\r\n min-width: 150px;\r\n height: auto;\r\n}"
- },
- "title": "General configuration",
- "showTitleIcon": false,
- "iconColor": "rgba(0, 0, 0, 0.87)",
- "iconSize": "24px",
- "titleTooltip": "",
- "dropShadow": true,
- "enableFullscreen": false,
- "widgetStyle": {},
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "showLegend": false,
- "useDashboardTimewindow": true,
- "actions": {
- "elementClick": [
- {
- "name": "General configuration",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "configuration",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "337c767b-3217-d3d3-b955-7b0bd0858a1d"
- },
- {
- "name": "Connectors configuration",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "connectors",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "00469ea7-f4c4-e39d-a735-c74b6ba6a026"
- },
- {
- "name": "Logs",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "logs",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "d8607421-28b4-7c3b-949b-f69c3a46b461"
- },
- {
- "name": "Statistics",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "statistics",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "425ba0d8-8e26-18a5-881d-bebe27fb2a7a"
- },
- {
- "name": "Remote Shell",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "remote_shell",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "2c4c7dcc-009f-64eb-5f1b-a991df6d25a2"
- },
- {
- "name": "RPC",
- "icon": "more_horiz",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "openDashboardState",
- "targetDashboardStateId": "rpc",
- "setEntityId": true,
- "stateEntityParamName": null,
- "openRightLayout": false,
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "35705df8-69cf-7f76-b52f-d53c5a1931c0"
- }
- ]
- },
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "61d149e8-b249-5526-e5d7-6ad58413982e",
- "typeFullFqn": "system.cards.markdown_card"
- },
- "3d661190-7463-ba61-6793-503c85af67ec": {
- "type": "latest",
- "sizeX": 5,
- "sizeY": 3.5,
- "config": {
- "datasources": [
- {
- "type": "entity",
- "name": "function",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "dataKeys": [],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "bd9176e1-9e04-3e9b-d5a5-07b72bb9ae90",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "mqttCount",
- "color": "#4caf50",
- "settings": {},
- "_hash": 0.9590451878027946,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "44038462-1bae-e075-7b31-283341cb2295",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "modbusCount",
- "color": "#ff5722",
- "settings": {},
- "_hash": 0.46402083951505624,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "884e9c34-7534-a483-99be-81b56cd91185",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "grpcCount",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.16110429492126088,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "e91ca0e9-1653-4fbc-5f3d-3da021b1b415",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "opcuaCount",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.13973521146913304,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "3f74cbaa-6353-5e88-a7e8-708fc0e18039",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "bleCount",
- "color": "#607d8b",
- "settings": {},
- "_hash": 0.7205723252294653,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "c08eee84-64ee-73c4-8d96-c0df813a92cd",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "requestCount",
- "color": "#9c27b0",
- "settings": {},
- "_hash": 0.6993292961463216,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "2f0af7f5-22ea-c0d5-3aef-7f2bb1b534ec",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "canCount",
- "color": "#8bc34a",
- "settings": {},
- "_hash": 0.4850065031079176,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "92a7d208-c143-ea20-5162-1da584532830",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "bacnetCount",
- "color": "#3f51b5",
- "settings": {},
- "_hash": 0.36987531665233075,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "498f090c-b1e5-df74-35d1-3ecf89d33f1c",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "odbcCount",
- "color": "#e91e63",
- "settings": {},
- "_hash": 0.8279345016611896,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "9175179d-a8db-848b-0762-e78da150e768",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "restCount",
- "color": "#ffeb3b",
- "settings": {},
- "_hash": 0.07245826389852739,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "9175179d-a8db-848b-0762-e78da150e768",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "restCount",
- "color": "#03a9f4",
- "settings": {},
- "_hash": 0.4321492578560704,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "1b70460b-428b-2aed-f23a-65927d3e67bb",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "snmpCount",
- "color": "#ff9800",
- "settings": {},
- "_hash": 0.7395574625078822,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "ae357478-b4c2-eee8-dde6-a6942fe6202f",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "ftpCount",
- "color": "#673ab7",
- "settings": {},
- "_hash": 0.9999791065203374,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "6eef4979-369f-c2cc-4894-96a84b6a668a",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "socketCount",
- "color": "#cddc39",
- "settings": {},
- "_hash": 0.47563823619478685,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "9c8e3a63-01a1-64b5-fe44-4f58f8350340",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "xmppCount",
- "color": "#009688",
- "settings": {},
- "_hash": 0.5679285702280172,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "c6501413-d823-29c4-992f-9ae6e8e25549",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "ocppCount",
- "color": "#795548",
- "settings": {},
- "_hash": 0.38390880166484287,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- },
- {
- "type": "entityCount",
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "2f04d6e5-8438-857a-ca78-ae78cc8b0c03",
- "dataKeys": [
- {
- "name": "count",
- "type": "count",
- "label": "customCount",
- "color": "#00bcd4",
- "settings": {},
- "_hash": 0.9282529984749979,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 60000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1686652103417,
- "endTimeMs": 1686738503417
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "AVG",
- "limit": 25000
- }
- },
- "showTitle": false,
- "backgroundColor": "#fff",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "0px",
- "settings": {
- "useMarkdownTextFunction": false,
- "markdownTextPattern": "\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
\n",
- "applyDefaultMarkdownStyle": false,
- "markdownCss": ".mat-mdc-form-field-subscript-wrapper {\n display: none !important;\n}\n\n.devices-tabs {\n height: 100%;\n}\n\n::ng-deep .mat-mdc-tab-body-wrapper {\n height: 100%;\n}"
- },
- "title": "Gateway devices",
- "showTitleIcon": false,
- "iconColor": "rgba(0, 0, 0, 0.87)",
- "iconSize": "24px",
- "titleTooltip": "",
- "dropShadow": true,
- "enableFullscreen": false,
- "widgetStyle": {},
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400
- },
- "showLegend": false,
- "useDashboardTimewindow": true,
- "displayTimewindow": true,
- "widgetCss": "",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "borderRadius": "4px"
- },
- "row": 0,
- "col": 0,
- "id": "3d661190-7463-ba61-6793-503c85af67ec",
- "typeFullFqn": "system.cards.markdown_card"
- },
- "1615bd4e-c0a4-c32c-3706-3c83214cb8d7": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": null,
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "borderRadius": "",
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "45e4507d-3adc-bb31-8b2b-1ba09bbd56ac"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "1615bd4e-c0a4-c32c-3706-3c83214cb8d7",
- "typeFullFqn": "system.cards.entities_table"
- },
- "aafba3d8-a381-21c0-ecbe-446da3cdc041": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "bd9176e1-9e04-3e9b-d5a5-07b72bb9ae90",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "borderRadius": "4px",
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "852eccce-98eb-24db-c783-bdd62566f906"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "aafba3d8-a381-21c0-ecbe-446da3cdc041",
- "typeFullFqn": "system.cards.entities_table"
- },
- "7f676bb2-bde2-10e7-80d8-25dd734e8e22": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "44038462-1bae-e075-7b31-283341cb2295",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "3c31ba62-e760-2bea-4c8d-d32784a86c24"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "7f676bb2-bde2-10e7-80d8-25dd734e8e22",
- "typeFullFqn": "system.cards.entities_table"
- },
- "d64482d8-001a-6f33-9b56-665530098fe5": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "884e9c34-7534-a483-99be-81b56cd91185",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "4b55ea81-93bf-4206-9166-3e0bdc1dd9f3"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "d64482d8-001a-6f33-9b56-665530098fe5",
- "typeFullFqn": "system.cards.entities_table"
- },
- "bb27723a-989c-2327-5808-b56d490b93ab": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "e91ca0e9-1653-4fbc-5f3d-3da021b1b415",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "babf88d0-a118-e2b5-f10e-3a5970c8a65b"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "bb27723a-989c-2327-5808-b56d490b93ab",
- "typeFullFqn": "system.cards.entities_table"
- },
- "cf2eba6b-44f6-9cc2-6089-35c735f54898": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "3f74cbaa-6353-5e88-a7e8-708fc0e18039",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "18414f44-1c65-536a-14de-eaf21a7d56bd"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "cf2eba6b-44f6-9cc2-6089-35c735f54898",
- "typeFullFqn": "system.cards.entities_table"
- },
- "3f6ed61b-f5af-13e3-7505-f69fd53f8211": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "c08eee84-64ee-73c4-8d96-c0df813a92cd",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "794974da-c9d2-a9f7-be47-c9eb642094e8"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "3f6ed61b-f5af-13e3-7505-f69fd53f8211",
- "typeFullFqn": "system.cards.entities_table"
- },
- "b06cecaa-2806-65a9-782d-4f2d8cf95a6c": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "2f0af7f5-22ea-c0d5-3aef-7f2bb1b534ec",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "2add705b-3e53-8559-8126-380cac686fb0"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "b06cecaa-2806-65a9-782d-4f2d8cf95a6c",
- "typeFullFqn": "system.cards.entities_table"
- },
- "c3d39b60-a668-7f5e-e6f4-cae27151f4aa": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "92a7d208-c143-ea20-5162-1da584532830",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "7e1ba820-9992-d52a-579b-20485abb3926"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "c3d39b60-a668-7f5e-e6f4-cae27151f4aa",
- "typeFullFqn": "system.cards.entities_table"
- },
- "f78a0d66-60cb-188f-857f-9acd4d24bd5a": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "498f090c-b1e5-df74-35d1-3ecf89d33f1c",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "91af27c1-b37c-2276-6022-a332e41b2b33"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "f78a0d66-60cb-188f-857f-9acd4d24bd5a",
- "typeFullFqn": "system.cards.entities_table"
- },
- "b81a171c-77c0-b857-21d2-cff02a1cb733": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "9175179d-a8db-848b-0762-e78da150e768",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "26cf8696-054b-13ec-7984-6fc5df20e6f1"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "b81a171c-77c0-b857-21d2-cff02a1cb733",
- "typeFullFqn": "system.cards.entities_table"
- },
- "0e399bef-01d2-4e4e-02d2-e254ebe91e56": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "1b70460b-428b-2aed-f23a-65927d3e67bb",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "1dcfaf24-32be-cd19-62d6-86d12cc6a7ef"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "0e399bef-01d2-4e4e-02d2-e254ebe91e56",
- "typeFullFqn": "system.cards.entities_table"
- },
- "819c1d39-de7c-8ac3-858e-0040d286823e": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "ae357478-b4c2-eee8-dde6-a6942fe6202f",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "ad2bc817-f3c4-150c-4672-8fe0c38aee8d"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "819c1d39-de7c-8ac3-858e-0040d286823e",
- "typeFullFqn": "system.cards.entities_table"
- },
- "d4f73f32-f719-98bb-d427-b5c8957e8f47": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "6eef4979-369f-c2cc-4894-96a84b6a668a",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "d1ad84cd-bd9c-4dca-e4a0-f444ae8598bd"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "d4f73f32-f719-98bb-d427-b5c8957e8f47",
- "typeFullFqn": "system.cards.entities_table"
- },
- "f16a258c-3f6c-9317-fda7-48b33d8fe8b9": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "9c8e3a63-01a1-64b5-fe44-4f58f8350340",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "bf80eef9-b879-9a08-40a4-488dbdefa125"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "f16a258c-3f6c-9317-fda7-48b33d8fe8b9",
- "typeFullFqn": "system.cards.entities_table"
- },
- "d1951ec7-ab13-87e4-bc05-ce2318dca353": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "c6501413-d823-29c4-992f-9ae6e8e25549",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "b5a406b3-cc0a-8a09-9aec-3f8befae5fb8"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "d1951ec7-ab13-87e4-bc05-ce2318dca353",
- "typeFullFqn": "system.cards.entities_table"
- },
- "75b6372d-4def-42b4-8774-4edf413a8b83": {
- "type": "latest",
- "sizeX": 7.5,
- "sizeY": 6.5,
- "config": {
- "timewindow": {
- "displayValue": "",
- "selectedTab": 0,
- "realtime": {
- "realtimeType": 1,
- "interval": 1000,
- "timewindowMs": 86400000,
- "quickInterval": "CURRENT_DAY"
- },
- "history": {
- "historyType": 0,
- "interval": 1000,
- "timewindowMs": 60000,
- "fixedTimewindow": {
- "startTimeMs": 1684327643501,
- "endTimeMs": 1684414043501
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 200
- }
- },
- "showTitle": true,
- "backgroundColor": "rgb(255, 255, 255)",
- "color": "rgba(0, 0, 0, 0.87)",
- "padding": "4px",
- "settings": {
- "entitiesTitle": "Devices",
- "enableSearch": true,
- "enableSelectColumnDisplay": true,
- "enableStickyHeader": true,
- "enableStickyAction": true,
- "reserveSpaceForHiddenAction": "true",
- "displayEntityName": true,
- "entityNameColumnTitle": "Device Name",
- "displayEntityLabel": false,
- "displayEntityType": false,
- "displayPagination": true,
- "defaultPageSize": 10,
- "defaultSortOrder": "entityName",
- "useRowStyleFunction": false
- },
- "title": "Devices",
- "dropShadow": true,
- "enableFullscreen": true,
- "titleStyle": {
- "fontSize": "16px",
- "fontWeight": 400,
- "padding": "5px 10px 5px 10px"
- },
- "useDashboardTimewindow": false,
- "showLegend": false,
- "datasources": [
- {
- "type": "entity",
- "name": null,
- "entityAliasId": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "filterId": "2f04d6e5-8438-857a-ca78-ae78cc8b0c03",
- "dataKeys": [
- {
- "name": "type",
- "type": "entityField",
- "label": "Device Type",
- "color": "#2196f3",
- "settings": {},
- "_hash": 0.3129929097366162,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "active",
- "type": "attribute",
- "label": "Status",
- "color": "#4caf50",
- "settings": {
- "columnWidth": "0px",
- "useCellStyleFunction": false,
- "useCellContentFunction": true,
- "cellContentFunction": "let cssClass;\r\nswitch (value) {\r\n case \"Active\":\r\n cssClass = \"status status-active\";\r\n break;\r\n case \"Inactive\":\r\n default:\r\n cssClass = \"status status-inactive\";\r\n break;\r\n }\r\n \r\n return `${value}`;",
- "defaultColumnVisibility": "visible",
- "columnSelectionToDisplay": "enabled"
- },
- "_hash": 0.5969880627410065,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": true,
- "postFuncBody": "return value == 'true' ? \"Active\": \"Inactive\";"
- },
- {
- "name": "connectorName",
- "type": "attribute",
- "label": "Connector Name",
- "color": "#f44336",
- "settings": {},
- "_hash": 0.012483045440007778,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- },
- {
- "name": "connectorType",
- "type": "attribute",
- "label": "Connector Type",
- "color": "#ffc107",
- "settings": {},
- "_hash": 0.6004192233378134,
- "aggregationType": null,
- "units": null,
- "decimals": null,
- "funcBody": null,
- "usePostProcessing": null,
- "postFuncBody": null
- }
- ],
- "alarmFilterConfig": {
- "statusList": [
- "ACTIVE"
- ]
- }
- }
- ],
- "displayTimewindow": true,
- "showTitleIcon": false,
- "titleTooltip": "",
- "widgetStyle": {},
- "widgetCss": ".status {\r\n border-radius: 20px;\r\n font-weight: 500;\r\n padding: 5px 15px;\r\n }\r\n\r\n .status-active {\r\n color: green;\r\n background: rgba(0, 128, 0, 0.1);\r\n }\r\n\r\n .status-inactive {\r\n color: red;\r\n background: rgba(255, 0, 0, 0.1);\r\n }\r\n",
- "pageSize": 1024,
- "noDataDisplayMessage": "",
- "enableDataExport": false,
- "actions": {
- "actionCellButton": [
- {
- "name": "Show Device Info",
- "icon": "info",
- "useShowWidgetActionFunction": null,
- "showWidgetActionFunction": "return true;",
- "type": "custom",
- "customFunction": "const url = `${window.location.origin + widgetContext.utils.getEntityDetailsPageURL(entityId.id, entityId.entityType)}`;\nwindow.open(url, '_blank');",
- "openInSeparateDialog": false,
- "openInPopover": false,
- "id": "ec1dfba3-4b43-2491-8948-f602337f8a3b"
- }
- ]
- }
- },
- "row": 0,
- "col": 0,
- "id": "75b6372d-4def-42b4-8774-4edf413a8b83",
- "typeFullFqn": "system.cards.entities_table"
- }
- },
- "states": {
- "default": {
- "name": "Gateway List",
- "root": true,
- "layouts": {
- "main": {
- "widgets": {
- "23b9adc5-b3bd-040f-e5eb-a45925c73257": {
- "sizeX": 48,
- "sizeY": 23,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 48,
- "margin": 12,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": true,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "configuration": {
- "name": "Configuration",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "d4a1ffc4-c9f6-7b15-bca0-17feb58bac99": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0,
- "mobileHeight": null
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 12,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": true,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "connectors": {
- "name": "Connectors",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "02a05113-d878-b086-328e-75bd6f02b2bb": {
- "sizeX": 24,
- "sizeY": 12,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": true,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "gateway_details": {
- "name": "${entityName}",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "79f59106-758f-c428-8b93-4341faea705d": {
- "sizeX": 40,
- "sizeY": 3,
- "row": 0,
- "col": 0,
- "mobileHeight": 5,
- "mobileOrder": 2
- },
- "60dcf518-8fc3-3539-8ff8-ce94bda39f3a": {
- "sizeX": 40,
- "sizeY": 10,
- "row": 12,
- "col": 0
- },
- "fb9df382-6ef3-4aa6-bc13-8bf8e300ba19": {
- "sizeX": 8,
- "sizeY": 3,
- "row": 0,
- "col": 40,
- "mobileOrder": 0,
- "mobileHeight": 1
- },
- "61d149e8-b249-5526-e5d7-6ad58413982e": {
- "sizeX": 8,
- "sizeY": 19,
- "row": 3,
- "col": 40,
- "mobileOrder": 1,
- "mobileHeight": 3
- },
- "3d661190-7463-ba61-6793-503c85af67ec": {
- "sizeX": 40,
- "sizeY": 9,
- "row": 3,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 48,
- "margin": 10,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "logs": {
- "name": "Logs",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "27e6b37c-085e-824d-fb13-69651a545ec1": {
- "sizeX": 48,
- "sizeY": 16,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 48,
- "margin": 12,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": true,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "connector_logs": {
- "name": "Logs",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "bcd04dbf-c82a-ca13-6e88-a74f32b4348a": {
- "sizeX": 24,
- "sizeY": 10,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 12,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "statistics": {
- "name": "Statistics",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "9b88dc51-b186-90ef-5afb-9648e6e2ac9a": {
- "sizeX": 48,
- "sizeY": 12,
- "row": 10,
- "col": 0
- },
- "c50e294a-265a-d13c-c772-b56c4df953fe": {
- "sizeX": 48,
- "sizeY": 10,
- "row": 0,
- "col": 0,
- "mobileOrder": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 48,
- "margin": 12,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "remote_shell": {
- "name": "Remote Shell",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "2a318e56-5c83-4f82-bf23-df72dd7e3edf": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 10,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "rpc": {
- "name": "RPC",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "da01e13f-c108-39fd-2a74-b40da088769a": {
- "sizeX": 45,
- "sizeY": 10,
- "row": 12,
- "col": 0,
- "mobileOrder": 1
- },
- "ce3065bf-d898-2c03-6236-ce1b6cdf1f3f": {
- "sizeX": 45,
- "sizeY": 9,
- "row": 22,
- "col": 0,
- "mobileOrder": 2
- },
- "46b68eb5-7e2d-bca1-c2ef-061b64575218": {
- "sizeX": 45,
- "sizeY": 12,
- "row": 0,
- "col": 0,
- "mobileOrder": 0,
- "mobileHeight": 8
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 45,
- "margin": 12,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "connector_rpc": {
- "name": "Connector RPC",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "878c68fd-71cb-21d4-684a-b5b5a4526b43": {
- "sizeX": 48,
- "sizeY": 13,
- "row": 0,
- "col": 0,
- "mobileOrder": 0,
- "mobileHeight": 8
- },
- "0fc7dcf3-32a2-0159-738e-96956bf0d450": {
- "sizeX": 48,
- "sizeY": 10,
- "row": 13,
- "col": 0,
- "mobileOrder": 1,
- "mobileHeight": null
- },
- "6e136fbc-545b-4926-c0a9-79348f35628a": {
- "sizeX": 48,
- "sizeY": 9,
- "row": 23,
- "col": 0,
- "mobileOrder": 2
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 48,
- "margin": 12,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70,
- "outerMargin": true
- }
- }
- }
- },
- "gateway_devices_0": {
- "name": "Gateway devices",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "1615bd4e-c0a4-c32c-3706-3c83214cb8d7": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_1": {
- "name": "gateway_devices_mqtt",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "aafba3d8-a381-21c0-ecbe-446da3cdc041": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_2": {
- "name": "gateway_devices_modbus",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "7f676bb2-bde2-10e7-80d8-25dd734e8e22": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": true,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_3": {
- "name": "gateway_devices_grpc",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "d64482d8-001a-6f33-9b56-665530098fe5": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_4": {
- "name": "gateway_devices_opcua",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "bb27723a-989c-2327-5808-b56d490b93ab": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_6": {
- "name": "gateway_devices_ble",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "cf2eba6b-44f6-9cc2-6089-35c735f54898": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_7": {
- "name": "gateway_devices_request",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "3f6ed61b-f5af-13e3-7505-f69fd53f8211": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_8": {
- "name": "gateway_devices_can",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "b06cecaa-2806-65a9-782d-4f2d8cf95a6c": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_9": {
- "name": "gateway_devices_bacnet",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "c3d39b60-a668-7f5e-e6f4-cae27151f4aa": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_10": {
- "name": "gateway_devices_odbc",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "f78a0d66-60cb-188f-857f-9acd4d24bd5a": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_11": {
- "name": "gateway_devices_rest",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "b81a171c-77c0-b857-21d2-cff02a1cb733": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_12": {
- "name": "gateway_devices_snmp",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "0e399bef-01d2-4e4e-02d2-e254ebe91e56": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_13": {
- "name": "gateway_devices_ftp",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "819c1d39-de7c-8ac3-858e-0040d286823e": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_14": {
- "name": "gateway_devices_socket",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "d4f73f32-f719-98bb-d427-b5c8957e8f47": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_15": {
- "name": "gateway_devices_xmpp",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "f16a258c-3f6c-9317-fda7-48b33d8fe8b9": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_16": {
- "name": "gateway_devices_ocpp",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "d1951ec7-ab13-87e4-bc05-ce2318dca353": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- },
- "gateway_devices_17": {
- "name": "gateway_devices_custom",
- "root": false,
- "layouts": {
- "main": {
- "widgets": {
- "75b6372d-4def-42b4-8774-4edf413a8b83": {
- "sizeX": 24,
- "sizeY": 11,
- "row": 0,
- "col": 0
- }
- },
- "gridSettings": {
- "backgroundColor": "#eeeeee",
- "columns": 24,
- "margin": 0,
- "outerMargin": true,
- "backgroundSizeMode": "100%",
- "autoFillHeight": false,
- "backgroundImageUrl": null,
- "mobileAutoFillHeight": false,
- "mobileRowHeight": 70
- }
- }
- }
- }
- },
- "entityAliases": {
- "9b7a1caa-3510-3daa-e05a-fc39b851d2c1": {
- "id": "9b7a1caa-3510-3daa-e05a-fc39b851d2c1",
- "alias": "Devices",
- "filter": {
- "type": "entityType",
- "resolveMultiple": true,
- "entityType": "DEVICE"
- }
- },
- "a2f01c66-96cf-49c5-303f-e6f21c559ee8": {
- "id": "a2f01c66-96cf-49c5-303f-e6f21c559ee8",
- "alias": "Selected Gateway",
- "filter": {
- "type": "stateEntity",
- "resolveMultiple": false,
- "stateEntityParamName": "",
- "defaultStateEntity": null
- }
- },
- "a75d9031-ba51-8da4-81be-de65061b72f4": {
- "id": "a75d9031-ba51-8da4-81be-de65061b72f4",
- "alias": "GatewayDevices",
- "filter": {
- "type": "relationsQuery",
- "resolveMultiple": true,
- "rootStateEntity": true,
- "stateEntityParamName": null,
- "defaultStateEntity": null,
- "rootEntity": null,
- "direction": "FROM",
- "maxLevel": 1,
- "fetchLastLevelOnly": false,
- "filters": [
- {
- "relationType": "Created",
- "entityTypes": [
- "DEVICE"
- ]
- }
- ]
- }
- },
- "e3ea8714-bd05-67aa-8413-e07e93d53930": {
- "id": "e3ea8714-bd05-67aa-8413-e07e93d53930",
- "alias": "Current User",
- "filter": {
- "type": "singleEntity",
- "resolveMultiple": false,
- "singleEntity": {
- "entityType": "CURRENT_USER",
- "id": "13814000-1dd2-11b2-8080-808080808080"
- }
- }
- }
- },
- "filters": {
- "abdfdcf9-75d4-001d-783a-920cb8e2a7e1": {
- "id": "abdfdcf9-75d4-001d-783a-920cb8e2a7e1",
- "filter": "Gateway",
- "keyFilters": [
- {
- "key": {
- "type": "ENTITY_FIELD",
- "key": "additionalInfo"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "CONTAINS",
- "value": {
- "defaultValue": "\"gateway\":true",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "bd33a006-fd40-3efc-7863-505c6e64f2b8": {
- "id": "bd33a006-fd40-3efc-7863-505c6e64f2b8",
- "filter": "isActive",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "active"
- },
- "valueType": "BOOLEAN",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": true,
- "dynamicValue": null
- },
- "type": "BOOLEAN"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "956cf341-7cdf-82a7-ea2a-50cc9586f1f1": {
- "id": "956cf341-7cdf-82a7-ea2a-50cc9586f1f1",
- "filter": "isInactive",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "active"
- },
- "valueType": "BOOLEAN",
- "predicates": [
- {
- "keyFilterPredicate": {
- "type": "BOOLEAN",
- "operation": "EQUAL",
- "value": {
- "defaultValue": false
- }
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "bd9176e1-9e04-3e9b-d5a5-07b72bb9ae90": {
- "id": "bd9176e1-9e04-3e9b-d5a5-07b72bb9ae90",
- "filter": "gateway_devices_mqtt",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "mqtt",
- "dynamicValue": null
- },
- "ignoreCase": true,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "44038462-1bae-e075-7b31-283341cb2295": {
- "id": "44038462-1bae-e075-7b31-283341cb2295",
- "filter": "gateway_devices_modbus",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "modbus",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "884e9c34-7534-a483-99be-81b56cd91185": {
- "id": "884e9c34-7534-a483-99be-81b56cd91185",
- "filter": "gateway_devices_grpc",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "grpc",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "e91ca0e9-1653-4fbc-5f3d-3da021b1b415": {
- "id": "e91ca0e9-1653-4fbc-5f3d-3da021b1b415",
- "filter": "gateway_devices_opcua",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "opcua",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "3931abd5-2205-9386-6ea9-8e8a8131bb9d": {
- "id": "3931abd5-2205-9386-6ea9-8e8a8131bb9d",
- "filter": "gateway_devices_opcua_asyncio",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "opcua_asyncio",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "3f74cbaa-6353-5e88-a7e8-708fc0e18039": {
- "id": "3f74cbaa-6353-5e88-a7e8-708fc0e18039",
- "filter": "gateway_devices_ble",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "ble",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "c08eee84-64ee-73c4-8d96-c0df813a92cd": {
- "id": "c08eee84-64ee-73c4-8d96-c0df813a92cd",
- "filter": "gateway_devices_request",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "request",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "2f0af7f5-22ea-c0d5-3aef-7f2bb1b534ec": {
- "id": "2f0af7f5-22ea-c0d5-3aef-7f2bb1b534ec",
- "filter": "gateway_devices_can",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "can",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "92a7d208-c143-ea20-5162-1da584532830": {
- "id": "92a7d208-c143-ea20-5162-1da584532830",
- "filter": "gateway_devices_bacnet",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "bacnet",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "498f090c-b1e5-df74-35d1-3ecf89d33f1c": {
- "id": "498f090c-b1e5-df74-35d1-3ecf89d33f1c",
- "filter": "gateway_devices_odbc",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "odbc",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "9175179d-a8db-848b-0762-e78da150e768": {
- "id": "9175179d-a8db-848b-0762-e78da150e768",
- "filter": "gateway_devices_rest",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "rest",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "1b70460b-428b-2aed-f23a-65927d3e67bb": {
- "id": "1b70460b-428b-2aed-f23a-65927d3e67bb",
- "filter": "gateway_devices_snmp",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "snmp",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "ae357478-b4c2-eee8-dde6-a6942fe6202f": {
- "id": "ae357478-b4c2-eee8-dde6-a6942fe6202f",
- "filter": "gateway_devices_ftp",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "ftp",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "6eef4979-369f-c2cc-4894-96a84b6a668a": {
- "id": "6eef4979-369f-c2cc-4894-96a84b6a668a",
- "filter": "gateway_devices_socket",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "socket",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "9c8e3a63-01a1-64b5-fe44-4f58f8350340": {
- "id": "9c8e3a63-01a1-64b5-fe44-4f58f8350340",
- "filter": "gateway_devices_xmpp",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "xmpp",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "c6501413-d823-29c4-992f-9ae6e8e25549": {
- "id": "c6501413-d823-29c4-992f-9ae6e8e25549",
- "filter": "gateway_devices_ocpp",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "ocpp",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- },
- "2f04d6e5-8438-857a-ca78-ae78cc8b0c03": {
- "id": "2f04d6e5-8438-857a-ca78-ae78cc8b0c03",
- "filter": "gateway_devices_custom",
- "keyFilters": [
- {
- "key": {
- "type": "ATTRIBUTE",
- "key": "connectorType"
- },
- "valueType": "STRING",
- "predicates": [
- {
- "keyFilterPredicate": {
- "operation": "EQUAL",
- "value": {
- "defaultValue": "custom",
- "dynamicValue": null
- },
- "ignoreCase": false,
- "type": "STRING"
- },
- "userInfo": {
- "editable": true,
- "label": "",
- "autogeneratedLabel": true,
- "order": 0
- }
- }
- ]
- }
- ],
- "editable": true
- }
- },
- "timewindow": {
- "hideInterval": false,
- "hideLastInterval": false,
- "hideQuickInterval": false,
- "hideAggregation": false,
- "hideAggInterval": false,
- "hideTimezone": false,
- "selectedTab": 1,
- "history": {
- "historyType": 0,
- "timewindowMs": 300000,
- "interval": 120000,
- "fixedTimewindow": {
- "startTimeMs": 1686306375309.7058,
- "endTimeMs": 1686307998839.1177
- },
- "quickInterval": "CURRENT_DAY"
- },
- "aggregation": {
- "type": "NONE",
- "limit": 25000
- },
- "timezone": null
- },
- "settings": {
- "stateControllerId": "entity",
- "showTitle": false,
- "showDashboardsSelect": false,
- "showEntitiesSelect": false,
- "showDashboardTimewindow": true,
- "showDashboardExport": false,
- "toolbarAlwaysOpen": true,
- "titleColor": "rgba(0,0,0,0.870588)",
- "showDashboardLogo": false,
- "dashboardLogoUrl": null,
- "hideToolbar": false,
- "showFilters": false,
- "showUpdateDashboardImage": false,
- "dashboardCss": ""
- }
- },
- "externalId": null,
- "name": "Gateway"
-}
\ No newline at end of file
diff --git a/application/src/main/java/org/thingsboard/server/service/entitiy/dashboard/DashboardSyncService.java b/application/src/main/java/org/thingsboard/server/service/entitiy/dashboard/DashboardSyncService.java
index 8cdc30216a..ce946688ea 100644
--- a/application/src/main/java/org/thingsboard/server/service/entitiy/dashboard/DashboardSyncService.java
+++ b/application/src/main/java/org/thingsboard/server/service/entitiy/dashboard/DashboardSyncService.java
@@ -18,6 +18,7 @@ package org.thingsboard.server.service.entitiy.dashboard;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Value;
+import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty;
import org.springframework.stereotype.Service;
import org.thingsboard.server.common.data.ResourceType;
import org.thingsboard.server.common.data.id.TenantId;
@@ -39,6 +40,7 @@ import java.util.stream.Stream;
@TbCoreComponent
@RequiredArgsConstructor
@Slf4j
+@ConditionalOnProperty(value = "transport.gateway.dashboard.sync.enabled", havingValue = "true")
public class DashboardSyncService {
private final GitSyncService gitSyncService;
@@ -46,8 +48,6 @@ public class DashboardSyncService {
private final WidgetsBundleService widgetsBundleService;
private final PartitionService partitionService;
- @Value("${transport.gateway.dashboard.sync.enabled:true}")
- private boolean enabled;
@Value("${transport.gateway.dashboard.sync.repository_url:}")
private String repoUrl;
@Value("${transport.gateway.dashboard.sync.branch:main}")
@@ -60,9 +60,6 @@ public class DashboardSyncService {
@AfterStartUp(order = AfterStartUp.REGULAR_SERVICE)
public void init() throws Exception {
- if (!enabled) {
- return;
- }
gitSyncService.registerSync(REPO_KEY, repoUrl, branch, TimeUnit.HOURS.toMillis(fetchFrequencyHours), this::update);
}
diff --git a/application/src/main/java/org/thingsboard/server/service/install/InstallScripts.java b/application/src/main/java/org/thingsboard/server/service/install/InstallScripts.java
index ba0972a1e2..115208bc47 100644
--- a/application/src/main/java/org/thingsboard/server/service/install/InstallScripts.java
+++ b/application/src/main/java/org/thingsboard/server/service/install/InstallScripts.java
@@ -19,7 +19,6 @@ import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.node.ObjectNode;
import lombok.Getter;
import lombok.Setter;
-import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
@@ -54,8 +53,8 @@ import org.thingsboard.server.service.install.update.ImagesUpdater;
import java.io.IOException;
import java.io.UncheckedIOException;
-import java.nio.file.DirectoryStream;
import java.nio.file.Files;
+import java.nio.file.NoSuchFileException;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.ArrayList;
@@ -170,7 +169,6 @@ public class InstallScripts {
loadRuleChainsFromPath(tenantId, edgeChainsDir);
}
- @SneakyThrows
private void loadRuleChainsFromPath(TenantId tenantId, Path ruleChainsPath) {
findRuleChainsFromPath(ruleChainsPath).forEach(path -> {
try {
@@ -182,12 +180,10 @@ public class InstallScripts {
});
}
- List findRuleChainsFromPath(Path ruleChainsPath) throws IOException {
- List paths = new ArrayList<>();
- try (DirectoryStream dirStream = Files.newDirectoryStream(ruleChainsPath, path -> path.toString().endsWith(InstallScripts.JSON_EXT))) {
- dirStream.forEach(paths::add);
+ List findRuleChainsFromPath(Path ruleChainsPath) {
+ try (Stream files = listDir(ruleChainsPath).filter(path -> path.toString().endsWith(InstallScripts.JSON_EXT))) {
+ return files.toList();
}
- return paths;
}
public RuleChain createDefaultRuleChain(TenantId tenantId, String ruleChainName) {
@@ -211,11 +207,11 @@ public class InstallScripts {
return ruleChain;
}
- public void loadSystemWidgets() throws Exception {
+ public void loadSystemWidgets() {
log.info("Loading system widgets");
Map widgetsBundlesMap = new HashMap<>();
Path widgetBundlesDir = Paths.get(getDataDir(), JSON_DIR, SYSTEM_DIR, WIDGET_BUNDLES_DIR);
- try (DirectoryStream dirStream = Files.newDirectoryStream(widgetBundlesDir, path -> path.toString().endsWith(JSON_EXT))) {
+ try (Stream dirStream = listDir(widgetBundlesDir).filter(path -> path.toString().endsWith(JSON_EXT))) {
dirStream.forEach(
path -> {
JsonNode widgetsBundleDescriptorJson;
@@ -247,12 +243,14 @@ public class InstallScripts {
}
Path widgetTypesDir = Paths.get(getDataDir(), JSON_DIR, SYSTEM_DIR, WIDGET_TYPES_DIR);
if (Files.exists(widgetTypesDir)) {
- try (DirectoryStream dirStream = Files.newDirectoryStream(widgetTypesDir, path -> path.toString().endsWith(JSON_EXT))) {
+ try (Stream dirStream = listDir(widgetTypesDir).filter(path -> path.toString().endsWith(JSON_EXT))) {
dirStream.forEach(
path -> {
try {
- JsonNode widgetTypeJson = JacksonUtil.toJsonNode(path.toFile());
- WidgetTypeDetails widgetTypeDetails = JacksonUtil.treeToValue(widgetTypeJson, WidgetTypeDetails.class);
+ String widgetTypeJson = Files.readString(path);
+ widgetTypeJson = resourceService.checkSystemResourcesUsage(widgetTypeJson, ResourceType.JS_MODULE);
+
+ WidgetTypeDetails widgetTypeDetails = JacksonUtil.fromString(widgetTypeJson, WidgetTypeDetails.class);
widgetTypeService.saveWidgetType(widgetTypeDetails);
} catch (Exception e) {
log.error("Unable to load widget type from json: [{}]", path.toString());
@@ -300,12 +298,12 @@ public class InstallScripts {
}
}
- private void loadSystemScadaSymbols() throws Exception {
+ private void loadSystemScadaSymbols() {
log.info("Loading system SCADA symbols");
Path scadaSymbolsDir = Paths.get(getDataDir(), JSON_DIR, SYSTEM_DIR, SCADA_SYMBOLS_DIR);
if (Files.exists(scadaSymbolsDir)) {
WidgetTypeDetails scadaSymbolWidgetTemplate = widgetTypeService.findWidgetTypeDetailsByTenantIdAndFqn(TenantId.SYS_TENANT_ID, "scada_symbol");
- try (DirectoryStream dirStream = Files.newDirectoryStream(scadaSymbolsDir, path -> path.toString().endsWith(SVG_EXT))) {
+ try (Stream dirStream = listDir(scadaSymbolsDir).filter(path -> path.toString().endsWith(SVG_EXT))) {
dirStream.forEach(
path -> {
try {
@@ -404,11 +402,10 @@ public class InstallScripts {
imagesUpdater.updateAssetProfilesImages();
}
- @SneakyThrows
public void loadSystemImages() {
log.info("Loading system images...");
- Stream dashboardsFiles = Stream.concat(Files.list(Paths.get(getDataDir(), JSON_DIR, DEMO_DIR, DASHBOARDS_DIR)),
- Files.list(Paths.get(getDataDir(), JSON_DIR, TENANT_DIR, DASHBOARDS_DIR)));
+ Stream dashboardsFiles = Stream.concat(listDir(Paths.get(getDataDir(), JSON_DIR, DEMO_DIR, DASHBOARDS_DIR)),
+ listDir(Paths.get(getDataDir(), JSON_DIR, TENANT_DIR, DASHBOARDS_DIR)));
try (dashboardsFiles) {
dashboardsFiles.forEach(file -> {
try {
@@ -431,25 +428,22 @@ public class InstallScripts {
loadDashboardsFromDir(tenantId, customerId, dashboardsDir);
}
- @SneakyThrows
private void loadDashboardsFromDir(TenantId tenantId, CustomerId customerId, Path dashboardsDir) {
- try (DirectoryStream dirStream = Files.newDirectoryStream(dashboardsDir, path -> path.toString().endsWith(JSON_EXT))) {
- dirStream.forEach(
- path -> {
- try {
- JsonNode dashboardJson = JacksonUtil.toJsonNode(path.toFile());
- Dashboard dashboard = JacksonUtil.treeToValue(dashboardJson, Dashboard.class);
- dashboard.setTenantId(tenantId);
- Dashboard savedDashboard = dashboardService.saveDashboard(dashboard);
- if (customerId != null && !customerId.isNullUid()) {
- dashboardService.assignDashboardToCustomer(TenantId.SYS_TENANT_ID, savedDashboard.getId(), customerId);
- }
- } catch (Exception e) {
- log.error("Unable to load dashboard from json: [{}]", path.toString());
- throw new RuntimeException("Unable to load dashboard from json", e);
- }
+ try (Stream dashboards = listDir(dashboardsDir).filter(path -> path.toString().endsWith(JSON_EXT))) {
+ dashboards.forEach(path -> {
+ try {
+ JsonNode dashboardJson = JacksonUtil.toJsonNode(path.toFile());
+ Dashboard dashboard = JacksonUtil.treeToValue(dashboardJson, Dashboard.class);
+ dashboard.setTenantId(tenantId);
+ Dashboard savedDashboard = dashboardService.saveDashboard(dashboard);
+ if (customerId != null && !customerId.isNullUid()) {
+ dashboardService.assignDashboardToCustomer(TenantId.SYS_TENANT_ID, savedDashboard.getId(), customerId);
}
- );
+ } catch (Exception e) {
+ log.error("Unable to load dashboard from json: [{}]", path.toString());
+ throw new RuntimeException("Unable to load dashboard from json", e);
+ }
+ });
}
}
@@ -464,9 +458,9 @@ public class InstallScripts {
}
}
- public void createOAuth2Templates() throws Exception {
+ public void createOAuth2Templates() {
Path oauth2ConfigTemplatesDir = Paths.get(getDataDir(), JSON_DIR, SYSTEM_DIR, OAUTH2_CONFIG_TEMPLATES_DIR);
- try (DirectoryStream dirStream = Files.newDirectoryStream(oauth2ConfigTemplatesDir, path -> path.toString().endsWith(JSON_EXT))) {
+ try (Stream dirStream = listDir(oauth2ConfigTemplatesDir).filter(path -> path.toString().endsWith(JSON_EXT))) {
dirStream.forEach(
path -> {
try {
@@ -489,7 +483,7 @@ public class InstallScripts {
public void loadSystemLwm2mResources() {
Path resourceLwm2mPath = Paths.get(getDataDir(), MODELS_LWM2M_DIR);
- try (DirectoryStream dirStream = Files.newDirectoryStream(resourceLwm2mPath, path -> path.toString().endsWith(InstallScripts.XML_EXT))) {
+ try (Stream dirStream = listDir(resourceLwm2mPath).filter(path -> path.toString().endsWith(InstallScripts.XML_EXT))) {
dirStream.forEach(
path -> {
try {
@@ -539,9 +533,11 @@ public class InstallScripts {
}
}
- private Stream listDir(Path resourcesDir) {
+ private Stream listDir(Path dir) {
try {
- return Files.list(resourcesDir);
+ return Files.list(dir);
+ } catch (NoSuchFileException e) {
+ return Stream.empty();
} catch (IOException e) {
throw new UncheckedIOException(e);
}
diff --git a/application/src/test/java/org/thingsboard/server/service/install/InstallScriptsTest.java b/application/src/test/java/org/thingsboard/server/service/install/InstallScriptsTest.java
index 37b50fda4f..9d42c1d8ae 100644
--- a/application/src/test/java/org/thingsboard/server/service/install/InstallScriptsTest.java
+++ b/application/src/test/java/org/thingsboard/server/service/install/InstallScriptsTest.java
@@ -39,7 +39,6 @@ import org.thingsboard.server.dao.widget.WidgetTypeService;
import org.thingsboard.server.dao.widget.WidgetsBundleService;
import org.thingsboard.server.service.install.update.ImagesUpdater;
-import java.io.IOException;
import java.nio.file.Path;
import java.util.Collections;
import java.util.List;
@@ -87,14 +86,14 @@ class InstallScriptsTest {
}
@Test
- void testDefaultRuleChainsTemplates() throws IOException {
+ void testDefaultRuleChainsTemplates() {
Path dir = installScripts.getTenantRuleChainsDir();
installScripts.findRuleChainsFromPath(dir)
.forEach(this::validateRuleChainTemplate);
}
@Test
- void testDefaultEdgeRuleChainsTemplates() throws IOException {
+ void testDefaultEdgeRuleChainsTemplates() {
Path dir = installScripts.getEdgeRuleChainsDir();
installScripts.findRuleChainsFromPath(dir)
.forEach(this::validateRuleChainTemplate);
diff --git a/dao/src/main/java/org/thingsboard/server/dao/resource/BaseResourceService.java b/dao/src/main/java/org/thingsboard/server/dao/resource/BaseResourceService.java
index d169134632..cea6842245 100644
--- a/dao/src/main/java/org/thingsboard/server/dao/resource/BaseResourceService.java
+++ b/dao/src/main/java/org/thingsboard/server/dao/resource/BaseResourceService.java
@@ -17,15 +17,19 @@ package org.thingsboard.server.dao.resource;
import com.google.common.hash.Hashing;
import com.google.common.util.concurrent.ListenableFuture;
-import lombok.AllArgsConstructor;
+import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.hibernate.exception.ConstraintViolationException;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.context.annotation.Lazy;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;
import org.springframework.transaction.event.TransactionalEventListener;
+import org.thingsboard.common.util.JacksonUtil;
import org.thingsboard.common.util.RegexUtils;
import org.thingsboard.server.cache.resourceInfo.ResourceInfoCacheKey;
import org.thingsboard.server.cache.resourceInfo.ResourceInfoEvictEvent;
+import org.thingsboard.server.common.data.Dashboard;
import org.thingsboard.server.common.data.EntityType;
import org.thingsboard.server.common.data.ResourceType;
import org.thingsboard.server.common.data.TbResource;
@@ -54,7 +58,7 @@ import static org.thingsboard.server.dao.service.Validator.validateId;
@Service("TbResourceDaoService")
@Slf4j
-@AllArgsConstructor
+@RequiredArgsConstructor
@Primary
public class BaseResourceService extends AbstractCachedEntityService implements ResourceService {
@@ -62,6 +66,8 @@ public class BaseResourceService extends AbstractCachedEntityService