{
    "i18n": true,
    "type": "tabs",
    "tabsStyle": {
        "width": "calc(100% - 100px)"
    },
    "items": {
        "_tab_Start": {
            "type": "panel",
            "label": "Main Settings",
            "items": {
                "header_Start": {
                    "type": "header",
                    "text": "Welcome to Fully adapter",
                    "size": 2
                },
                "_textStart": {
                    "type": "staticText",
                    "text": "A detailed documentation with explanations and all further information can be found on this GitHub page:",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4,
                    "style": {
                        "fontSize": 16,
                        "marginTop": 0
                    }
                },
                "_documentationLinkGerman": {
                    "type": "staticLink",
                    "label": "🇩🇪 Deutsche Dokumentation",
                    "button": true,
                    "href": "https://github.com/arteck/ioBroker.fullybrowser/blob/master/docs/de/README.md",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4,
                    "style": {
                        "fontSize": 16,
                        "marginTop": 0
                    }
                },
                "_documentationLinkEnglish": {
                    "type": "staticLink",
                    "label": "🇬🇧 English Documentation",
                    "button": true,
                    "href": "https://github.com/arteck/ioBroker.fullybrowser/blob/master/docs/en/README.md",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4,
                    "style": {
                        "fontSize": 16,
                        "marginTop": 0
                    }
                },
                "header_Devices": {
                    "type": "header",
                    "text": "Fully Browser Devices",
                    "newLine": true,
                    "size": 2,
                    "style": {
                        "marginTop": 20
                    }
                },
                "text_DevicesInfo": {
                    "type": "staticText",
                    "label": "Add new devices by clicking the plus (+) symbol...",
                    "newLine": true,
                    "style": {
                        "fontSize": 16
                    },
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "tableDevices": {
                    "type": "table",
                    "xs": 12,
                    "sm": 12,
                    "md": 12,
                    "lg": 12,
                    "xl": 12,
                    "items": [
                        {
                            "type": "checkbox",
                            "attr": "enabled",
                            "width": "20px",
                            "title": "Active",
                            "default": true
                        },
                        {
                            "type": "select",
                            "title": "Api-Type",
                            "attr": "apiType",
                            "default": "restapi",
                            "width": "6%",
                            "validator": "data.apiType.length > 3",
                            "options": [
                                {
                                    "label": "MQTT",
                                    "value": "mqtt"
                                },
                                {
                                    "label": "RestApi",
                                    "value": "restapi"
                                }
                            ]
                        },
                        {
                            "type": "text",
                            "title": "Device Name",
                            "attr": "name",
                            "maxLength": 50,
                            "trim": false,
                            "width": "25%",
                            "filter": true,
                            "sort": true,
                            "validator": "data.name.length > 1",
                            "validatorNoSaveOnError": true
                        },
                        {
                            "type": "select",
                            "title": "Protocol",
                            "attr": "restProtocol",
                            "default": "http",
                            "width": "5%",
                            "validator": "data.restProtocol.length > 3",
                            "validatorNoSaveOnError": true,
                            "options": [
                                {
                                    "label": "http",
                                    "value": "http"
                                },
                                {
                                    "label": "https",
                                    "value": "https"
                                }
                            ]
                        },
                        {
                            "type": "text",
                            "title": "IP Address",
                            "attr": "ip",
                            "maxLength": 15,
                            "trim": true,
                            "width": "25%",
                            "validator": "data.ip != null && data.ip != undefined && data.ip.length > 5",
                            "validatorNoSaveOnError": true
                        },
                        {
                            "type": "number",
                            "title": "Port",
                            "attr": "restPort",
                            "min": 1,
                            "max": 65535,
                            "default": 2323,
                            "width": "5%"
                        },
                        {
                            "type": "password",
                            "title": "Remote Admin Password",
                            "attr": "restPassword",
                            "width": "15%",
                            "validator": "data.restPassword.length > 0",
                            "validatorNoSaveOnError": true
                        },
                        {
                            "type": "instance",
                            "adapter": "telegram",
                            "title": "Telegram",
                            "allowDeactivate": true,
                            "attr": "telegramInstance",
                            "width": "5%"
                        },
                        {
                            "type": "text",
                            "hidden": "!data.telegramInstance",
                            "title": "Chatid",
                            "attr": "chatid",
                            "maxLength": 15,
                            "trim": true,
                            "width": "15%"
                        }
                    ]
                },
                "header_MQTT": {
                    "newLine": true,
                    "type": "header",
                    "text": "MQTT Configuration",
                    "size": 2
                },
                "text_MQTT-info": {
                    "type": "staticText",
                    "label": "Port is always required, but you can leave user name and password empty. Fully Browser App: Settings -> Other Settings -> MQTT Integration (PLUS)",
                    "style": {
                        "fontSize": 16
                    },
                    "xs": 12,
                    "sm": 12,
                    "md": 12,
                    "lg": 8,
                    "xl": 8
                },
                "mqttPort": {
                    "newLine": true,
                    "type": "number",
                    "label": "Port",
                    "min": 1,
                    "max": 65535,
                    "default": 3000,
                    "help": "MQTT Port (1-65535)",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "mqttDoNotVerifyUserPw": {
                    "newLine": true,
                    "type": "checkbox",
                    "label": "Do not verify user and password",
                    "help": "This disables the username and password verification",
                    "default": true,
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "mqttUser": {
                    "newLine": true,
                    "type": "text",
                    "label": "User name",
                    "help": "MQTT User name",
                    "hidden": "data.mqttDoNotVerifyUserPw",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "mqttPassword": {
                    "newLine": true,
                    "type": "password",
                    "label": "Password",
                    "help": "MQTT Password",
                    "hidden": "data.mqttDoNotVerifyUserPw",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                }
            }
        },
        "_tab_Expert Settings": {
            "type": "panel",
            "label": "Expert Settings",
            "items": {
                "header_MQTT": {
                    "type": "header",
                    "text": "MQTT",
                    "size": 2
                },
                "mqttPublishedInfoDelay": {
                    "type": "number",
                    "min": 2,
                    "max": 120,
                    "label": "Do not process published info more than every x seconds",
                    "help": "in seconds (2-120, default: 30)",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "mqttTimeout": {
                    "type": "number",
                    "min": 1,
                    "max": 360,
                    "label": "MQTT Timeout",
                    "help": "in seconds (2-120, default: 70)",
                    "default": 70,
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "mqttUpdateUnchangedObjects": {
                    "type": "checkbox",
                    "label": "Always update info states",
                    "help": "Always update info objects, even if value did not change",
                    "default": false,
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "mqttCreateDefaultEventObjects": {
                    "type": "checkbox",
                    "label": "Create default event objects at adapter start",
                    "help": "Create default event objects (facesDetected, hideKeyboard, etc.) at the first adapter startup",
                    "default": true,
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "header_LOG_MQTT": {
                    "newLine": true,
                    "type": "header",
                    "text": "Log MQTT ",
                    "size": 2
                },
                "mqttConnErrorsAsInfo": {
                    "type": "checkbox",
                    "label": "Client and Connection errors as info in log",
                    "help": "Logs client and connection errors as 'info' and not as 'error'",
                    "default": true,
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "messageMQTTAlive": {
                    "type": "checkbox",
                    "label": "Show MQTT all connection Messages",
                    "help": "Show lost/connected/alive as warning",
                    "default": true,
                    "hidden": "!data.mqttConnErrorsAsInfo",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "header_RESTAPI": {
                    "newLine": true,
                    "type": "header",
                    "text": "Remote Admin (REST API)",
                    "size": 2
                },
                "restTimeout": {
                    "type": "number",
                    "min": 1000,
                    "max": 15000,
                    "default": 2000,
                    "label": "Request Timeout",
                    "help": "in milliseconds (500-15000, default: 2000)",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "restIntervall": {
                    "type": "number",
                    "min": 10000,
                    "max": 99999999,
                    "default": 60000,
                    "label": "Request Intervall",
                    "help": "in milliseconds (10000-99999999, default: 60000 = 1 Min.)",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "restCommandLogAsDebug": {
                    "type": "checkbox",
                    "label": "Successful commands as debug in log",
                    "help": "Log '... Command xxx successfully set to x' as 'debug' and not 'info'",
                    "default": false,
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "header_REST": {
                    "newLine": true,
                    "type": "header",
                    "text": "Other Settings",
                    "size": 2
                },
                "zeroBattery": {
                    "type": "checkbox",
                    "label": "Set battery to zero if Tablet is offline",
                    "help": "",
                    "default": false,
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                },
                "picPath": {
                    "newLine": true,
                    "type": "text",
                    "label": "Picture path",
                    "help": "picture path for camera pictures",
                    "default": "",
                    "xs": 12,
                    "sm": 12,
                    "md": 6,
                    "lg": 4,
                    "xl": 4
                }
            }
        }
    }
}
