Skip to content
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Hardware
  4. SONOFF NSPanel mit Lovelace UI

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.1k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    1.9k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.1k

SONOFF NSPanel mit Lovelace UI

Geplant Angeheftet Gesperrt Verschoben Hardware
lovelace uinspanelsonoff
7.8k Beiträge 272 Kommentatoren 6.7m Aufrufe 254 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ArmilarA Armilar

    v4.3.3.5 - Update NSPanelTs.ts

    So - da ist das neue Update mit dem multilingualen Service-Menü.

    0fe40ec2-e9e4-4505-855f-6684703d9885-image.png

    Änderungen:

    • Zusätzlicher Menüpunkt "ioBroker-Infos" im Service Menü (Hat @TT-Tom bereits mit der v4.3.3.4 am 15.11.2023 bereitgestellt):
      b23db71d-0b51-4e3f-bb16-80f65d0242da-image.png
      mit entsprechenden Infos zur aktuellen Version des NSPanelTS.ts Scriptes, der aktuell installierten NodeJS-Version und der aktuell installierten Version der JS-Adapterinstanz
      7283604b-0009-4af4-b2d7-14bbb86c4489-image.png

    • Das komplette Service-Menü ist jetzt in 39 Sprachen übersetzt und wird mit der "bereits gewählten Language-Code" für Datum/Uhrzeit, etc. geladen.
      484fa229-b50f-4a1c-83f4-326a5f10acbe-image.png
      Nach der Umstellung muss das TS-Script allerdings einmal durchgestartet werden, damit die Änderungen im Menü wirksam werden:
      2222d797-154d-4568-b879-442416afcfa2-image.png
      c27b6afa-1a15-4325-8e51-9ed11e1a5495-image.png

    • Weitere Cards, wie cardUnlock, cardQR, popupFan, popupTimer sind ebenfalls umgestellt worden (cardAlarm und cardMedia folgen in einer der nächsten Versionen)

    Durchführung des Updates:

    https://github.com/joBr99/nspanel-lovelace-ui/blob/main/ioBroker/NsPanelTs.ts

    • Unteren Teil: des Scriptes ab:
      // _________________ Ab hier keine Konfiguration mehr ___________________
      
      ersetzten.
    • Das Service Menü (siehe Spoiler) komplett austauschen:

    /***********************************************************************************************
     **  Service Pages mit Auto-Alias (Nachfolgende Seiten werden mit Alias automatisch angelegt) **
     **  https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Service-Men%C3%BC             **
     ***********************************************************************************************/
    
    /* Wenn das Service Menü abgesichert werden soll, kann eine cardUnlock vorgeschaltet werden. 
       Für diesen Fall ist folgende Vorgehensweise erforderlich:
       - cardUnlock Seite "Unlock_Service" in der Config unter pages auskommentieren ("//" entfernen)
       - Servicemenü aus pages "NSPanel_Service" unter pages kommentieren ("//" hinzufügen)
    */ 
    
    //Level 0 (if service pages are used with cardUnlock)
    let Unlock_Service = <PageUnlock>
    {
        'type': 'cardUnlock',
        'heading': findLocaleServMenu('service_pages'),
        'useColor': true,
        'items': [<PageItem>{ id: 'alias.0.NSPanel.Unlock',
                              targetPage: 'NSPanel_Service_SubPage',
                              autoCreateALias: true }
        ]
    };
    
    //Level_0 (if service pages are used without cardUnlock)
    let NSPanel_Service = <PageEntities>
    {
        'type': 'cardEntities',
        'heading': findLocaleServMenu('service_menu'),
        'useColor': true,
        'items': [
            <PageItem>{ navigate: true, id: 'NSPanel_Infos', icon: 'information-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('infos'), buttonText: findLocaleServMenu('more')},
            <PageItem>{ navigate: true, id: 'NSPanel_Einstellungen', icon: 'monitor-edit', offColor: Menu, onColor: Menu, name: findLocaleServMenu('settings'), buttonText: findLocaleServMenu('more')},
            <PageItem>{ navigate: true, id: 'NSPanel_Firmware', icon: 'update', offColor: Menu, onColor: Menu, name: findLocaleServMenu('firmware'), buttonText: findLocaleServMenu('more')},
            <PageItem>{ id: AliasPath + 'Config.rebootNSPanel', name: findLocaleServMenu('reboot') ,icon: 'refresh', offColor: MSRed, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
        ]
    };
    
    //Level_0 (if service pages are used with cardUnlock)
    let NSPanel_Service_SubPage = <PageEntities>
    {
        'type': 'cardEntities',
        'heading': findLocaleServMenu('service_menu'),
        'useColor': true,
        'subPage': true,
        'parent': Unlock_Service,
        'home': 'Unlock_Service', 
        'items': [
            <PageItem>{ navigate: true, id: 'NSPanel_Infos', icon: 'information-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('infos'), buttonText: findLocaleServMenu('more')},
            <PageItem>{ navigate: true, id: 'NSPanel_Einstellungen', icon: 'monitor-edit', offColor: Menu, onColor: Menu, name: findLocaleServMenu('settings'), buttonText: findLocaleServMenu('more')},
            <PageItem>{ navigate: true, id: 'NSPanel_Firmware', icon: 'update', offColor: Menu, onColor: Menu, name: findLocaleServMenu('firmware'), buttonText: findLocaleServMenu('more')},
            <PageItem>{ id: AliasPath + 'Config.rebootNSPanel', name: findLocaleServMenu('reboot') ,icon: 'refresh', offColor: MSRed, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
        ]
    };
    
            //Level_1
            let NSPanel_Infos = <PageEntities>
            {
                'type': 'cardEntities',
                'heading': findLocaleServMenu('nspanel_infos'),
                'useColor': true,
                'subPage': true,
                'parent': NSPanel_Service,
                'home': 'NSPanel_Service',        
                'items': [
                    <PageItem>{ navigate: true, id: 'NSPanel_Wifi_Info_1', icon: 'wifi', offColor: Menu, onColor: Menu, name: findLocaleServMenu('wifi'), buttonText: findLocaleServMenu('more')},
                    <PageItem>{ navigate: true, id: 'NSPanel_Sensoren', icon: 'memory', offColor: Menu, onColor: Menu, name: findLocaleServMenu('sensors_hardware'), buttonText: findLocaleServMenu('more')},
                    <PageItem>{ navigate: true, id: 'NSPanel_IoBroker', icon: 'information-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('info_iobroker'), buttonText: findLocaleServMenu('more')}
                ]
            };
                    //Level_2
                    let NSPanel_Wifi_Info_1 = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('nspanel_wifi1'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Infos,
                        'next': 'NSPanel_Wifi_Info_2',
                        'items': [
                            <PageItem>{ id: AliasPath + 'ipAddress', name: findLocaleServMenu('ip_address'), icon: 'ip-network-outline', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.BSSId', name: findLocaleServMenu('mac_address'), icon: 'check-network', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.RSSI', name: findLocaleServMenu('rssi'), icon: 'signal', unit: '%', colorScale: {'val_min': 100, 'val_max': 0} },
                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.Signal', name: findLocaleServMenu('wifi_signal'), icon: 'signal-distance-variant', unit: 'dBm', colorScale: {'val_min': 0, 'val_max': -100} },
                        ]
                    };
    
                    let NSPanel_Wifi_Info_2 = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('nspanel_wifi2'),
                        'useColor': true,
                        'subPage': true,
                        'prev': 'NSPanel_Wifi_Info_1',
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.SSId', name: findLocaleServMenu('ssid'), icon: 'signal-distance-variant', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.Mode', name: findLocaleServMenu('mode'), icon: 'signal-distance-variant', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.Channel', name: findLocaleServMenu('channel'), icon: 'timeline-clock-outline', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota.Wifi.AP', name: findLocaleServMenu('accesspoint'), icon: 'router-wireless-settings', offColor: Menu, onColor: Menu },
                        ]
                    };
    
                    let NSPanel_Sensoren = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('sensors1'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Infos,
                        'next': 'NSPanel_Hardware',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Sensor.ANALOG.Temperature', name: findLocaleServMenu('room_temperature'), icon: 'home-thermometer-outline', unit: '°C', colorScale: {'val_min': 0, 'val_max': 40, 'val_best': 22 } },
                            <PageItem>{ id: AliasPath + 'Sensor.ESP32.Temperature', name: findLocaleServMenu('esp_temperature'), icon: 'thermometer', unit: '°C', colorScale: {'val_min': 0, 'val_max': 100, 'val_best': 50 } },
                            <PageItem>{ id: AliasPath + 'Sensor.TempUnit', name: findLocaleServMenu('temperature_unit'), icon: 'temperature-celsius', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Sensor.Time', name: findLocaleServMenu('refresh'), icon: 'clock-check-outline', offColor: Menu, onColor: Menu },
                        ]
                    };
    
                    let NSPanel_Hardware = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('hardware2'),
                        'useColor': true,
                        'subPage': true,
                        'prev': 'NSPanel_Sensoren',
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Tasmota.Product', name: findLocaleServMenu('product'), icon: 'devices', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota.Hardware', name: findLocaleServMenu('esp32_hardware'), icon: 'memory', offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Display.Model', name: findLocaleServMenu('nspanel_version'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota.Uptime', name: findLocaleServMenu('operating_time'), icon: 'timeline-clock-outline', offColor: Menu, onColor: Menu },
                        ]
                    };
    
                    let NSPanel_IoBroker = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('info_iobroker'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Infos,
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'IoBroker.ScriptVersion', name: findLocaleServMenu('script_version_nspanelts'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'IoBroker.NodeJSVersion', name: findLocaleServMenu('nodejs_version'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'IoBroker.JavaScriptVersion', name: findLocaleServMenu('instance_javascript'), offColor: Menu, onColor: Menu },
                        ]
                    };
    
            //Level_1
            let NSPanel_Einstellungen = <PageGrid>
                {
                    'type': 'cardGrid',
                    'heading': findLocaleServMenu('settings'),
                    'useColor': true,
                    'subPage': true,
                    'parent': NSPanel_Service,
                    'home': 'NSPanel_Service',
                    'items': [
                        <PageItem>{ navigate: true, id: 'NSPanel_Screensaver', icon: 'monitor-dashboard',offColor: Menu, onColor: Menu, name: findLocaleServMenu('screensaver'), buttonText: findLocaleServMenu('more')},
                        <PageItem>{ navigate: true, id: 'NSPanel_Relays', icon: 'electric-switch', offColor: Menu, onColor: Menu, name: findLocaleServMenu('relays'), buttonText: findLocaleServMenu('more')},
                        <PageItem>{ id:AliasPath + 'Config.temperatureUnitNumber', icon: 'gesture-double-tap', name: findLocaleServMenu('temp_unit'), offColor: Menu, onColor: Menu, 
                        modeList: ['°C', '°F', 'K']},
                        <PageItem>{ id: AliasPath + 'Config.localeNumber', icon: 'select-place', name: findLocaleServMenu('language'), offColor: Menu, onColor: Menu, 
                        modeList: ['en-US', 'de-DE', 'nl-NL', 'da-DK', 'es-ES', 'fr-FR', 'it-IT', 'ru-RU', 'nb-NO', 'nn-NO', 'pl-PL', 'pt-PT', 'af-ZA', 'ar-SY', 
                                   'bg-BG', 'ca-ES', 'cs-CZ', 'el-GR', 'et-EE', 'fa-IR', 'fi-FI', 'he-IL', 'hr-xx', 'hu-HU', 'hy-AM', 'id-ID', 'is-IS', 'lb-xx', 
                                   'lt-LT', 'ro-RO', 'sk-SK', 'sl-SI', 'sv-SE', 'th-TH', 'tr-TR', 'uk-UA', 'vi-VN', 'zh-CN', 'zh-TW']},
                       <PageItem>{ navigate: true, id: 'NSPanel_Script', icon: 'code-json',offColor: Menu, onColor: Menu, name: findLocaleServMenu('script'), buttonText: findLocaleServMenu('more')},            
                    ]
                };
    
                    //Level_2
                    let NSPanel_Screensaver = <PageGrid>
                    {
                        'type': 'cardGrid',
                        'heading': findLocaleServMenu('screensaver'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Einstellungen,
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverDimmode', icon: 'sun-clock', offColor: Menu, onColor: Menu, name: findLocaleServMenu('dimmode')},
                            <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverBrightness', icon: 'brightness-5', offColor: Menu, onColor: Menu, name: findLocaleServMenu('brightness')},
                            <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverLayout', icon: 'page-next-outline', offColor: Menu, onColor: Menu, name: findLocaleServMenu('layout')},
                            <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverWeather', icon: 'weather-partly-rainy', offColor: Menu, onColor: Menu, name: findLocaleServMenu('weather')},
                            <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverDateformat', icon: 'calendar-expand-horizontal', offColor: Menu, onColor: Menu, name: findLocaleServMenu('date_format')},
                            <PageItem>{ navigate: true, id: 'NSPanel_ScreensaverIndicators', icon: 'monitor-edit', offColor: Menu, onColor: Menu, name: findLocaleServMenu('indicators')}
                        ]
                    };
                                
                            //Level_3
                            let NSPanel_ScreensaverDimmode = <PageEntities>
                            {
                                'type': 'cardEntities',
                                'heading': findLocaleServMenu('dimmode'),
                                'useColor': true,
                                'subPage': true,
                                'parent': NSPanel_Screensaver,
                                'home': 'NSPanel_Service',
                                'items': [
                                    <PageItem>{ id: AliasPath + 'Dimmode.brightnessDay', name: findLocaleServMenu('brightness_day'), icon: 'brightness-5', offColor: Menu, onColor: Menu, minValue: 5, maxValue: 10},
                                    <PageItem>{ id: AliasPath + 'Dimmode.brightnessNight', name: findLocaleServMenu('brightness_night'), icon: 'brightness-4', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 4},
                                    <PageItem>{ id: AliasPath + 'Dimmode.hourDay', name: findLocaleServMenu('hour_day'), icon: 'sun-clock', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 23},
                                    <PageItem>{ id: AliasPath + 'Dimmode.hourNight', name: findLocaleServMenu('hour_night'), icon: 'sun-clock-outline', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 23}
                                ]
                            };
    
                            //Level_3
                            let NSPanel_ScreensaverBrightness = <PageEntities>
                            {
                                'type': 'cardEntities',
                                'heading': findLocaleServMenu('brightness'),
                                'useColor': true,
                                'subPage': true,
                                'parent': NSPanel_Screensaver,
                                'home': 'NSPanel_Service',
                                'items': [
                                    <PageItem>{ id: AliasPath + 'ScreensaverInfo.activeBrightness', name: findLocaleServMenu('brightness_activ'), icon: 'brightness-5', offColor: Menu, onColor: Menu, minValue: 20, maxValue: 100},
                                    <PageItem>{ id: AliasPath + 'Config.Screensaver.timeoutScreensaver', name: findLocaleServMenu('screensaver_timeout'), icon: 'clock-end', offColor: Menu, onColor: Menu, minValue: 0, maxValue: 60},
                                    <PageItem>{ id: AliasPath + 'Config.Screensaver.screenSaverDoubleClick', name: findLocaleServMenu('wakeup_doublecklick') ,icon: 'gesture-two-double-tap', offColor: HMIOff, onColor: HMIOn}
                                ]
                            };
    
                            //Level_3
                            let NSPanel_ScreensaverLayout = <PageEntities>
                            {
                                'type': 'cardEntities',
                                'heading': findLocaleServMenu('layout'),
                                'useColor': true,
                                'subPage': true,
                                'parent': NSPanel_Screensaver,
                                'home': 'NSPanel_Service',
                                'items': [
                                    <PageItem>{ id: AliasPath + 'Config.Screensaver.alternativeScreensaverLayout', name: findLocaleServMenu('alternative_layout') ,icon: 'page-previous-outline', offColor: HMIOff, onColor: HMIOn},
                                    <PageItem>{ id: AliasPath + 'Config.Screensaver.ScreensaverAdvanced', name: findLocaleServMenu('advanced_layout') ,icon: 'page-next-outline', offColor: HMIOff, onColor: HMIOn},
                                ]
                            };
    
                            //Level_3
                            let NSPanel_ScreensaverWeather = <PageEntities>
                            {
                                'type': 'cardEntities',
                                'heading': findLocaleServMenu('weather_parameters'),
                                'useColor': true,
                                'subPage': true,
                                'parent': NSPanel_Screensaver,
                                'home': 'NSPanel_Service',
                                'items': [
                                    <PageItem>{ id: AliasPath + 'ScreensaverInfo.weatherForecast', name: findLocaleServMenu('weather_forecast_offon') ,icon: 'weather-sunny-off', offColor: HMIOff, onColor: HMIOn},
                                    <PageItem>{ id: AliasPath + 'ScreensaverInfo.weatherForecastTimer', name: findLocaleServMenu('weather_forecast_change_switch') ,icon: 'devices', offColor: HMIOff, onColor: HMIOn},
                                    <PageItem>{ id: AliasPath + 'ScreensaverInfo.entityChangeTime', name: findLocaleServMenu('weather_forecast_change_time'), icon: 'cog-sync', offColor: Menu, onColor: Menu, minValue: 15, maxValue: 60},
                                    <PageItem>{ id: AliasPath + 'Config.Screensaver.autoWeatherColorScreensaverLayout', name: findLocaleServMenu('weather_forecast_icon_colors') ,icon: 'format-color-fill', offColor: HMIOff, onColor: HMIOn},
                                ]
                            };
    
                            //Level_3
                            let NSPanel_ScreensaverDateformat = <PageEntities>
                            {
                                'type': 'cardEntities',
                                'heading': findLocaleServMenu('date_format'),
                                'useColor': true,
                                'subPage': true,
                                'parent': NSPanel_Screensaver,
                                'home': 'NSPanel_Service',
                                'items': [
                                    <PageItem>{ id: AliasPath + 'Config.Dateformat.Switch.weekday', name: findLocaleServMenu('weekday_large') ,icon: 'calendar-expand-horizontal', offColor: HMIOff, onColor: HMIOn},
                                    <PageItem>{ id: AliasPath + 'Config.Dateformat.Switch.month', name: findLocaleServMenu('month_large') ,icon: 'calendar-expand-horizontal', offColor: HMIOff, onColor: HMIOn},
                                ]
                            };
    
                            //Level_3
                            let NSPanel_ScreensaverIndicators = <PageEntities>
                            {
                                'type': 'cardEntities',
                                'heading': findLocaleServMenu('indicators'),
                                'useColor': true,
                                'subPage': true,
                                'parent': NSPanel_Screensaver,
                                'home': 'NSPanel_Service',
                                'items': [
                                    <PageItem>{ id: AliasPath + 'Config.MRIcons.alternateMRIconSize.1', name: findLocaleServMenu('mr_icon1_size') ,icon: 'format-size', offColor: HMIOff, onColor: HMIOn},
                                    <PageItem>{ id: AliasPath + 'Config.MRIcons.alternateMRIconSize.2', name: findLocaleServMenu('mr_icon2_size') ,icon: 'format-size', offColor: HMIOff, onColor: HMIOn},
                                ]
                            };
    
                    //Level_2
                    let NSPanel_Relays = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('relays'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Einstellungen,
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Relay.1', name: findLocaleServMenu('relay1_onoff'), icon: 'power', offColor: HMIOff, onColor: HMIOn},
                            <PageItem>{ id: AliasPath + 'Relay.2', name: findLocaleServMenu('relay2_onoff'), icon: 'power', offColor: HMIOff, onColor: HMIOn},
                        ]
                    };
    
                    //Level_2
                    let NSPanel_Script = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('script'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Einstellungen,
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Config.ScripgtDebugStatus', name: findLocaleServMenu('debugmode_offon') ,icon: 'code-tags-check', offColor: HMIOff, onColor: HMIOn},
                            <PageItem>{ id: AliasPath + 'Config.MQTT.portCheck', name: findLocaleServMenu('port_check_offon') ,icon: 'check-network', offColor: HMIOff, onColor: HMIOn},
                        ]
                    };
    
            //Level_1
            let NSPanel_Firmware = <PageEntities>
                {
                    'type': 'cardEntities',
                    'heading': findLocaleServMenu('firmware'),
                    'useColor': true,
                    'subPage': true,
                    'parent': NSPanel_Service,
                    'home': 'NSPanel_Service',
                    'items': [
                        <PageItem>{ id: AliasPath + 'autoUpdate', name: findLocaleServMenu('automatically_updates') ,icon: 'power', offColor: HMIOff, onColor: HMIOn},
                        <PageItem>{ navigate: true, id: 'NSPanel_FirmwareTasmota', icon: 'usb-flash-drive', offColor: Menu, onColor: Menu, name: findLocaleServMenu('tasmota_firmware'), buttonText: findLocaleServMenu('more')},
                        <PageItem>{ navigate: true, id: 'NSPanel_FirmwareBerry', icon: 'usb-flash-drive', offColor: Menu, onColor: Menu, name: findLocaleServMenu('berry_driver'), buttonText: findLocaleServMenu('more')},
                        <PageItem>{ navigate: true, id: 'NSPanel_FirmwareNextion', icon: 'cellphone-cog', offColor: Menu, onColor: Menu, name: findLocaleServMenu('nextion_tft_firmware'), buttonText: findLocaleServMenu('more')}
                    ]
                };
    
                    let NSPanel_FirmwareTasmota = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('tasmota'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Firmware,
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Tasmota.Version', name: findLocaleServMenu('installed_release'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Tasmota_Firmware.onlineVersion', name: findLocaleServMenu('available_release'), offColor: Menu, onColor: Menu },                        
                            <PageItem>{ id: 'Divider' },
                            <PageItem>{ id: AliasPath + 'Config.Update.UpdateTasmota', name: findLocaleServMenu('update_tasmota') ,icon: 'refresh', offColor: HMIOff, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                        ]
                    };
    
                    let NSPanel_FirmwareBerry = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('berry_driver'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Firmware,
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Display.BerryDriver', name: findLocaleServMenu('installed_release'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Berry_Driver.onlineVersion', name: findLocaleServMenu('available_release'), offColor: Menu, onColor: Menu},                        
                            <PageItem>{ id: 'Divider' },
                            <PageItem>{ id: AliasPath + 'Config.Update.UpdateBerry', name: findLocaleServMenu('update_berry_driver') ,icon: 'refresh', offColor: HMIOff, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                        ]
                    };
    
                    let NSPanel_FirmwareNextion = <PageEntities>
                    {
                        'type': 'cardEntities',
                        'heading': findLocaleServMenu('nextion_tft'),
                        'useColor': true,
                        'subPage': true,
                        'parent': NSPanel_Firmware,
                        'home': 'NSPanel_Service',
                        'items': [
                            <PageItem>{ id: AliasPath + 'Display_Firmware.TFT.currentVersion', name: findLocaleServMenu('installed_release'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Display_Firmware.TFT.desiredVersion', name: findLocaleServMenu('desired_release'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Display.Model', name: findLocaleServMenu('nspanel_model'), offColor: Menu, onColor: Menu },
                            <PageItem>{ id: AliasPath + 'Config.Update.UpdateNextion', name: 'Nextion TFT Update' ,icon: 'refresh', offColor: HMIOff, onColor: MSGreen, buttonText: findLocaleServMenu('start')},
                        ]
                    };
    
    // Ende der Service Pages
    

    • zusätzliche Seite unter subPages eintragen:
      a4faea2c-9a97-4bac-b2d7-60d96646c804-image.png
    • fertig 😉

    Ihr habt Fehler in der Übersetzung gefunden oder Verbesserungswünsche:
    Uns ist bewusst, dass die Translater einige Übersetzungen wahrscheinlich nicht ganz korrekt oder ggfs. zu lang übersetzt haben... Für diesen Fall bitte einen kurzen Hinweis geben. Wir ändern die Übersetzung dann direkt im JSON-File auf Github ab, so dass es allen Usern sofort zur Verfügung steht (Updates werden automatisch gezogen).

    So und nun viel Spaß mit den multilingualen Änderungen:
    @TT-Tom und Armilar 😊

    EDIT:
    Ihr habt das vorherige Menü bereits übersetzt?
    Dann sendet hier einfach das komplette Menü mit den Übersetzungen... 😉

    ArmilarA Offline
    ArmilarA Offline
    Armilar
    Most Active Forum Testing
    schrieb am zuletzt editiert von
    #4271

    @Breyger

    wäre das etwas für dich?

    https://forum.iobroker.net/post/1081945

    Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
    https://github.com/joBr99/nspanel-lovelace-ui/wiki

    Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

    1 Antwort Letzte Antwort
    0
    • D Offline
      D Offline
      drakal
      schrieb am zuletzt editiert von
      #4272

      @armilar Danke.

      Panel: v4.3.3.5
      Nodejs 18.18.2
      JS 7.1.4

      hatte JS und nodejs aber gerade erst geupdatet. Außerdem habe ich die US-Version des NSPanels. Keine Ahnung woran das liegt. Ich habe alle JS-Adapter-Einstellungen richtig gemacht... Geht leider trotzdem nicht. Any ideas?

      ArmilarA 1 Antwort Letzte Antwort
      0
      • D drakal

        @armilar Danke.

        Panel: v4.3.3.5
        Nodejs 18.18.2
        JS 7.1.4

        hatte JS und nodejs aber gerade erst geupdatet. Außerdem habe ich die US-Version des NSPanels. Keine Ahnung woran das liegt. Ich habe alle JS-Adapter-Einstellungen richtig gemacht... Geht leider trotzdem nicht. Any ideas?

        ArmilarA Offline
        ArmilarA Offline
        Armilar
        Most Active Forum Testing
        schrieb am zuletzt editiert von Armilar
        #4273

        @drakal

        Hatte den Post oben noch erweitert:

        9508a6af-22fb-48cb-82ee-0916217c607a-image.png

        Dürfte mit der US-Version nichts zu tun haben...

        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
        https://github.com/joBr99/nspanel-lovelace-ui/wiki

        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

        D 1 Antwort Letzte Antwort
        0
        • ArmilarA Armilar

          @drakal

          Hatte den Post oben noch erweitert:

          9508a6af-22fb-48cb-82ee-0916217c607a-image.png

          Dürfte mit der US-Version nichts zu tun haben...

          D Offline
          D Offline
          drakal
          schrieb am zuletzt editiert von
          #4274

          @armilar oh Mann... Du bist meine Rettung... Das war es (löschen und neu erstellen lassen)!!! Danke!!!!!!

          ArmilarA 1 Antwort Letzte Antwort
          1
          • D drakal

            @armilar oh Mann... Du bist meine Rettung... Das war es (löschen und neu erstellen lassen)!!! Danke!!!!!!

            ArmilarA Offline
            ArmilarA Offline
            Armilar
            Most Active Forum Testing
            schrieb am zuletzt editiert von Armilar
            #4275

            @drakal

            manche Probleme lassen sich schnell und radikal lösen 😊

            Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
            https://github.com/joBr99/nspanel-lovelace-ui/wiki

            Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

            1 Antwort Letzte Antwort
            0
            • Stephan LS Offline
              Stephan LS Offline
              Stephan L
              schrieb am zuletzt editiert von
              #4276

              Also, ich versuche gerade meine AppDaemon configuration nach ioBroker zu bringen.
              AppDaemon ist super lahm und was ich hier bisher sehe gefaellt mir.

              Leider stehe ich etwas auf dem Schlauch.... Zum einen, der Mix aus Deutsch und Englisch in der TS Datei macht es nicht wirklich einfacher. Zum Glueck behersche ich noch etwas Deutsch haha.

              Egal, mein erstes Problem ist, Ich will auf dem ScreenSaver das grosse Datum in der Mitte umformatieren.

              In der AppDaemon config geht das ganz einfach:
              dateFormat: "%A - %m/%d/%Y"
              Und fertig.

              Ich sehe hier in den 'Settings' zwar 2 Schalter, aber das ist nicht genug! Ich will das Datum mit / als Trenner.

              In der Wiki steht was von 'ScreensaverEntityDateFormat' aber leider ohne Beispiel wo genau das hin soll.
              Ein Beispiel hat es unter 'bottomScreensaverEntity : ' aber das ist ja nicht der Teil den ich anpassen will.

              Ich denke es sollte nicht so schwer sein und ich bin wohl einfach nur Blind.
              Will nicht zurueck zu AppDaemon denn damit ist das Panel echt traege!

              Vielen Dank!

              Stephan LS ArmilarA 2 Antworten Letzte Antwort
              0
              • Stephan LS Stephan L

                Also, ich versuche gerade meine AppDaemon configuration nach ioBroker zu bringen.
                AppDaemon ist super lahm und was ich hier bisher sehe gefaellt mir.

                Leider stehe ich etwas auf dem Schlauch.... Zum einen, der Mix aus Deutsch und Englisch in der TS Datei macht es nicht wirklich einfacher. Zum Glueck behersche ich noch etwas Deutsch haha.

                Egal, mein erstes Problem ist, Ich will auf dem ScreenSaver das grosse Datum in der Mitte umformatieren.

                In der AppDaemon config geht das ganz einfach:
                dateFormat: "%A - %m/%d/%Y"
                Und fertig.

                Ich sehe hier in den 'Settings' zwar 2 Schalter, aber das ist nicht genug! Ich will das Datum mit / als Trenner.

                In der Wiki steht was von 'ScreensaverEntityDateFormat' aber leider ohne Beispiel wo genau das hin soll.
                Ein Beispiel hat es unter 'bottomScreensaverEntity : ' aber das ist ja nicht der Teil den ich anpassen will.

                Ich denke es sollte nicht so schwer sein und ich bin wohl einfach nur Blind.
                Will nicht zurueck zu AppDaemon denn damit ist das Panel echt traege!

                Vielen Dank!

                Stephan LS Offline
                Stephan LS Offline
                Stephan L
                schrieb am zuletzt editiert von
                #4277

                @stephan-l

                Habe die Stelle im Code gefunden und das geht heute wirklich nicht 😞
                Arbeite zwar mit ioBroker erst seit paar Stunden aber ich denke das sollte so gehen.
                Wenn ich ein neues Objekt 'Config.Dateformat.options' erstelle dann kann ich dort z.B.
                { weekday: 'long', year: 'numeric', month: 'numeric', day: 'numeric' }
                eintragen und bekomme dann das Datum passend formatiert. Wenn das Objekt fehlt dann laueft der alte Code.

                function SendDate(): void {
                    try {
                        if (existsObject(NSPanel_Path + 'Config.locale')) {
                            let dpWeekday = existsObject(NSPanel_Path + 'Config.Dateformat.weekday') ? getState(NSPanel_Path + 'Config.Dateformat.weekday').val : 'short';
                            let dpMonth = existsObject(NSPanel_Path + 'Config.Dateformat.month') ? getState(NSPanel_Path + 'Config.Dateformat.month').val : 'short';
                
                            const date = new Date();
                -->         let fullOptions = existsObject(NSPanel_Path + 'Config.Dateformat.options') ? getState(NSPanel_Path + 'Config.Dateformat.options').val : { weekday: dpWeekday, year: 'numeric', month: dpMonth, day: 'numeric' };
                -->         const _SendDate = date.toLocaleDateString(getState(NSPanel_Path + 'Config.locale').val, fullOptions);
                
                            SendToPanel(<Payload>{ payload: 'date~' + _SendDate });
                        }
                

                2 Fragen:

                1. Wo kann ich das als Feature Request einstellen? Ist ja recht einfach
                2. Hat jemand eine Idee warum mein Beispiel Format keine Wochentag mehr anzeigt?

                Ich denke es fehlt evtl. noch etwas code der ein Update triggert wenn das Objekt geandert wird. Dafuer kenne ich mich noch nicht gut genug aus 🙂

                1 Antwort Letzte Antwort
                0
                • S Offline
                  S Offline
                  SirMiker
                  schrieb am zuletzt editiert von
                  #4278

                  Moin Moin,

                  so ich hoffe ich werde für so eine anfängerfrage nicht verflucht...

                  habe den Panel zum laufen gebracht...Screensaver läuft...Skript ist da...habe die Wiki gelesen und versuche eine eigene Page zu erstellen...

                  hier fangen die Probleme an...WO und Wie muss ich das in ein Skript ablegen damit ich diese auch sehe...versuche nun seit 2 Tagen irgendwie eine Anleitung dafür zu finden

                  Gruß Mike

                  T 1 Antwort Letzte Antwort
                  0
                  • S SirMiker

                    Moin Moin,

                    so ich hoffe ich werde für so eine anfängerfrage nicht verflucht...

                    habe den Panel zum laufen gebracht...Screensaver läuft...Skript ist da...habe die Wiki gelesen und versuche eine eigene Page zu erstellen...

                    hier fangen die Probleme an...WO und Wie muss ich das in ein Skript ablegen damit ich diese auch sehe...versuche nun seit 2 Tagen irgendwie eine Anleitung dafür zu finden

                    Gruß Mike

                    T Offline
                    T Offline
                    TT-Tom
                    schrieb am zuletzt editiert von TT-Tom
                    #4279

                    @sirmiker

                    Guten Morgen

                    Diesen Abschnitt hast du bestimmt schon gelesen.

                    Hier zwischen kommen deine Seiten.

                    //-- Anfang der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich -----------------------
                      //-- siehe https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Page-%E2%80%90-Typen_How-2_Beispiele
                    
                    //-- ENDE der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich -------------------------
                    

                    Zum Schluss musst du sie hier noch eintragen. Hinter Pages:[ mit Komma getrennt. Siehe subPages.

                       pages: [
                    
                                NSPanel_Service         	//Auto-Alias Service Page
                    	    //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                        ],
                        subPages: [
                    	    
                    

                    Ps: @Kuckuckmann könntest du im Wiki nochmal die Beschreibung anpassen. Danke

                    Gruß Tom
                    https://github.com/tt-tom17
                    Wenn meine Hilfe erfolgreich war, benutze bitte das Voting unten rechts im Beitrag

                    NSPanel Script Wiki
                    https://github.com/joBr99/nspanel-lovelace-ui/wiki

                    NSPanel Adapter Wiki
                    https://github.com/ticaki/ioBroker.nspanel-lovelace-ui/wiki

                    S 1 Antwort Letzte Antwort
                    1
                    • Stephan LS Stephan L

                      Also, ich versuche gerade meine AppDaemon configuration nach ioBroker zu bringen.
                      AppDaemon ist super lahm und was ich hier bisher sehe gefaellt mir.

                      Leider stehe ich etwas auf dem Schlauch.... Zum einen, der Mix aus Deutsch und Englisch in der TS Datei macht es nicht wirklich einfacher. Zum Glueck behersche ich noch etwas Deutsch haha.

                      Egal, mein erstes Problem ist, Ich will auf dem ScreenSaver das grosse Datum in der Mitte umformatieren.

                      In der AppDaemon config geht das ganz einfach:
                      dateFormat: "%A - %m/%d/%Y"
                      Und fertig.

                      Ich sehe hier in den 'Settings' zwar 2 Schalter, aber das ist nicht genug! Ich will das Datum mit / als Trenner.

                      In der Wiki steht was von 'ScreensaverEntityDateFormat' aber leider ohne Beispiel wo genau das hin soll.
                      Ein Beispiel hat es unter 'bottomScreensaverEntity : ' aber das ist ja nicht der Teil den ich anpassen will.

                      Ich denke es sollte nicht so schwer sein und ich bin wohl einfach nur Blind.
                      Will nicht zurueck zu AppDaemon denn damit ist das Panel echt traege!

                      Vielen Dank!

                      ArmilarA Offline
                      ArmilarA Offline
                      Armilar
                      Most Active Forum Testing
                      schrieb am zuletzt editiert von Armilar
                      #4280

                      @stephan-l

                      Im ioBroker ist vieles einfacher. Kein AppDaemon und kein Yaml.

                      Das Script muss nicht angepasst werden, denn es lässt sich alles über die Datenpunkte steuern. Hierfür haben wir auch ein Service-Menü bereitgestellt:

                      4659acb5-1295-4668-abaf-0f3d6b84b923-Nextion_Editor_LWEKmyMQ1h.gif

                      Solltest du dann doch ein Feature Request benötigen, so kannst du es wie gewohnt im Github mit dem "Tag" ioBroker machen...

                      6cebf463-dab2-4115-97a9-c2796c4cbec7-image.png

                      https://github.com/joBr99/nspanel-lovelace-ui/issues

                      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                      Stephan LS 1 Antwort Letzte Antwort
                      1
                      • T TT-Tom

                        @sirmiker

                        Guten Morgen

                        Diesen Abschnitt hast du bestimmt schon gelesen.

                        Hier zwischen kommen deine Seiten.

                        //-- Anfang der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich -----------------------
                          //-- siehe https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Page-%E2%80%90-Typen_How-2_Beispiele
                        
                        //-- ENDE der Beispiele für Seitengestaltung -- Selbstdefinierte Aliase erforderlich -------------------------
                        

                        Zum Schluss musst du sie hier noch eintragen. Hinter Pages:[ mit Komma getrennt. Siehe subPages.

                           pages: [
                        
                                    NSPanel_Service         	//Auto-Alias Service Page
                        	    //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                            ],
                            subPages: [
                        	    
                        

                        Ps: @Kuckuckmann könntest du im Wiki nochmal die Beschreibung anpassen. Danke

                        S Offline
                        S Offline
                        SirMiker
                        schrieb am zuletzt editiert von
                        #4281

                        @tt-tom
                        Also erstmal vielen dank!!

                        tut mir leid das ich das nochmal so schreibe, aber das:

                        pages: [

                                NSPanel_Service         	//Auto-Alias Service Page
                            //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                        ],
                        subPages: [
                        

                        Finde ich einfach nicht in dem Skript....man das ist aber auch riesig 😉

                        ArmilarA 1 Antwort Letzte Antwort
                        0
                        • S SirMiker

                          @tt-tom
                          Also erstmal vielen dank!!

                          tut mir leid das ich das nochmal so schreibe, aber das:

                          pages: [

                                  NSPanel_Service         	//Auto-Alias Service Page
                              //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                          ],
                          subPages: [
                          

                          Finde ich einfach nicht in dem Skript....man das ist aber auch riesig 😉

                          ArmilarA Offline
                          ArmilarA Offline
                          Armilar
                          Most Active Forum Testing
                          schrieb am zuletzt editiert von
                          #4282

                          @sirmiker

                          im Original-Script ab Zeile 759 .:

                          71060bbe-d5c7-42ac-a5b7-ac077c63b6fd-image.png

                          Bei mir ab Zeile ca. 3500 😉

                          Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                          https://github.com/joBr99/nspanel-lovelace-ui/wiki

                          Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                          S 1 Antwort Letzte Antwort
                          0
                          • ArmilarA Armilar

                            @sirmiker

                            im Original-Script ab Zeile 759 .:

                            71060bbe-d5c7-42ac-a5b7-ac077c63b6fd-image.png

                            Bei mir ab Zeile ca. 3500 😉

                            S Offline
                            S Offline
                            SirMiker
                            schrieb am zuletzt editiert von
                            #4283

                            @armilar

                            Gerade auch gefunden....vielen dank!

                            nun habe ich versucht das hier dort einzutragen...bei beidem

                            nun bekomme ich diese Fehlermeldung,

                            javascript.0 (23087) script.js.NSPANEL: TypeScript compilation failed: let name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more. let, name = <PageGrid>{ ^ ERROR: Identifier expected. 'let' is a reserved word in strict mode. Modules are automatically in strict mode. let, name = <PageGrid>{ ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, name = <PageGrid>{ ^ ERROR: Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern. let, name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more.

                            ArmilarA S 2 Antworten Letzte Antwort
                            0
                            • S SirMiker

                              @armilar

                              Gerade auch gefunden....vielen dank!

                              nun habe ich versucht das hier dort einzutragen...bei beidem

                              nun bekomme ich diese Fehlermeldung,

                              javascript.0 (23087) script.js.NSPANEL: TypeScript compilation failed: let name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more. let, name = <PageGrid>{ ^ ERROR: Identifier expected. 'let' is a reserved word in strict mode. Modules are automatically in strict mode. let, name = <PageGrid>{ ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, name = <PageGrid>{ ^ ERROR: Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern. let, name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more.

                              ArmilarA Offline
                              ArmilarA Offline
                              Armilar
                              Most Active Forum Testing
                              schrieb am zuletzt editiert von
                              #4284

                              @sirmiker

                              Bitte alles in Code Tags setzen... das kann so keiner lesen:

                              f61b2662-d40c-48f7-ac4d-ed18984d46c5-code-tags.gif

                              Was hast du denn eingefügt???

                              Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                              https://github.com/joBr99/nspanel-lovelace-ui/wiki

                              Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                              1 Antwort Letzte Antwort
                              0
                              • L Offline
                                L Offline
                                lesiflo
                                Most Active
                                schrieb am zuletzt editiert von
                                #4285

                                Hi, gibt es eine Möglichkeit den Wert für "name:" variabel zu gestalten? Ich möchte je nachdem ob der Akku geladen oder entladen wird sich der Text in "Laden" oder "Entladen" ändert. Das spart mir wieder ein Feld

                                let Akku =  <PageGrid>
                                {
                                    "type": "cardGrid",
                                    "heading": "SolarFlow",
                                    "useColor": true,
                                    "items": [
                                        <PageItem>{ id: "alias.0.Solarflow.PV", name: 'PV [W]', offColor: Gray, onColor: MSGreen, useValue: true},
                                        <PageItem>{ id: 'alias.0.Solarflow.SOC', name: 'SOC [%]', offColor: Gray, onColor: MSGreen , useValue: true},
                                        <PageItem>{ id: 'alias.0.Solarflow.Akkutemperatur', name: 'Temp. [°C]', offColor: Gray, onColor: MSGreen,useValue: true},
                                        <PageItem>{ id: 'alias.0.Solarflow.Laden', name: 'Laden [W]', offColor: Gray, onColor: MSGreen, useValue: true},
                                        <PageItem>{ id: "alias.0.Solarflow.Entladen", name: 'Entladen [W]', offColor: Gray, onColor: MSGreen, useValue: true},
                                        <PageItem>{ id: "alias.0.Solarflow.Hausabgabe", name: 'Haus [W]', offColor: Gray, onColor: MSGreen, useValue: true }
                                };
                                
                                
                                ArmilarA 1 Antwort Letzte Antwort
                                0
                                • L lesiflo

                                  Hi, gibt es eine Möglichkeit den Wert für "name:" variabel zu gestalten? Ich möchte je nachdem ob der Akku geladen oder entladen wird sich der Text in "Laden" oder "Entladen" ändert. Das spart mir wieder ein Feld

                                  let Akku =  <PageGrid>
                                  {
                                      "type": "cardGrid",
                                      "heading": "SolarFlow",
                                      "useColor": true,
                                      "items": [
                                          <PageItem>{ id: "alias.0.Solarflow.PV", name: 'PV [W]', offColor: Gray, onColor: MSGreen, useValue: true},
                                          <PageItem>{ id: 'alias.0.Solarflow.SOC', name: 'SOC [%]', offColor: Gray, onColor: MSGreen , useValue: true},
                                          <PageItem>{ id: 'alias.0.Solarflow.Akkutemperatur', name: 'Temp. [°C]', offColor: Gray, onColor: MSGreen,useValue: true},
                                          <PageItem>{ id: 'alias.0.Solarflow.Laden', name: 'Laden [W]', offColor: Gray, onColor: MSGreen, useValue: true},
                                          <PageItem>{ id: "alias.0.Solarflow.Entladen", name: 'Entladen [W]', offColor: Gray, onColor: MSGreen, useValue: true},
                                          <PageItem>{ id: "alias.0.Solarflow.Hausabgabe", name: 'Haus [W]', offColor: Gray, onColor: MSGreen, useValue: true }
                                  };
                                  
                                  
                                  ArmilarA Offline
                                  ArmilarA Offline
                                  Armilar
                                  Most Active Forum Testing
                                  schrieb am zuletzt editiert von Armilar
                                  #4286

                                  @lesiflo

                                  ja, allerdings müsste der Text für "name: <Dein_individueller_Text>" dann bereits in einem Datenpunkt sein:

                                  Beispiel:

                                  <PageItem>{ id: "alias.0.NSPanel_1.TestWert", prefixName: 'Büro: ', name: "getState('0_userdata.0.Test.Testname').val", suffixName: '%', Weitere Parameter...},
                                  

                                  Ebenfalls ist ein Prefix und ein Suffix möglich...

                                  EDIT:

                                  Ein anderer Ansatz wäre, wie beim Beispiel Abfall, den Alias "warning" einzusetzen und die Farbe des Icons, den Namen und den Wert entsprechend zu formatieren

                                  Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                  https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                  Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                  L 1 Antwort Letzte Antwort
                                  0
                                  • S SirMiker

                                    @armilar

                                    Gerade auch gefunden....vielen dank!

                                    nun habe ich versucht das hier dort einzutragen...bei beidem

                                    nun bekomme ich diese Fehlermeldung,

                                    javascript.0 (23087) script.js.NSPANEL: TypeScript compilation failed: let name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more. let, name = <PageGrid>{ ^ ERROR: Identifier expected. 'let' is a reserved word in strict mode. Modules are automatically in strict mode. let, name = <PageGrid>{ ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, name = <PageGrid>{ ^ ERROR: Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern. let, name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more.

                                    S Offline
                                    S Offline
                                    SirMiker
                                    schrieb am zuletzt editiert von SirMiker
                                    #4287
                                    javascript.0 (23087) script.js.NSPANEL: TypeScript compilation failed: let name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more. let, name = <PageGrid>{ ^ ERROR: Identifier expected. 'let' is a reserved word in strict mode. Modules are automatically in strict mode. let, name = <PageGrid>{ ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, name = <PageGrid>{ ^ ERROR: Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern. let, name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more.
                                    

                                    das habe ich eingefügt

                                               NSPanel_Service         	//Auto-Alias Service Page
                                    	    //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                                        ],
                                        
                                        let name = <PageGrid>
                                    {
                                        'type': 'cardType',
                                        'heading': 'Eckstein',
                                        'useColor': true,
                                        'items': []
                                    };  ,
                                        subPages: [
                                    	    
                                    
                                    ArmilarA 2 Antworten Letzte Antwort
                                    0
                                    • S SirMiker
                                      javascript.0 (23087) script.js.NSPANEL: TypeScript compilation failed: let name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more. let, name = <PageGrid>{ ^ ERROR: Identifier expected. 'let' is a reserved word in strict mode. Modules are automatically in strict mode. let, name = <PageGrid>{ ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, name = <PageGrid>{ ^ ERROR: Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern. let, name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more.
                                      

                                      das habe ich eingefügt

                                                 NSPanel_Service         	//Auto-Alias Service Page
                                      	    //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                                          ],
                                          
                                          let name = <PageGrid>
                                      {
                                          'type': 'cardType',
                                          'heading': 'Eckstein',
                                          'useColor': true,
                                          'items': []
                                      };  ,
                                          subPages: [
                                      	    
                                      
                                      ArmilarA Offline
                                      ArmilarA Offline
                                      Armilar
                                      Most Active Forum Testing
                                      schrieb am zuletzt editiert von Armilar
                                      #4288

                                      @sirmiker

                                      viel wichtiger ist es jetzt zu zeigen, was du überhaupt in das Script eingefügt hast. Das der Fehler kommt, hat sicherlich etwas mit den folgenden Punkten zu tun.

                                      • Variablendefinition falsch
                                      • PageItem falsch
                                      • Komma in der Auflistung vergessen
                                      • Alias nicht über Geräte-Manager erstellt

                                      Also mehr Input zu deinen Aktionen als zum Fehler...

                                      Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                      https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                      Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                      1 Antwort Letzte Antwort
                                      0
                                      • S SirMiker
                                        javascript.0 (23087) script.js.NSPANEL: TypeScript compilation failed: let name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more. let, name = <PageGrid>{ ^ ERROR: Identifier expected. 'let' is a reserved word in strict mode. Modules are automatically in strict mode. let, name = <PageGrid>{ ^ ERROR: No value exists in scope for the shorthand property 'let'. Either declare one or provide an initializer. let, name = <PageGrid>{ ^ ERROR: Did you mean to use a ':'? An '=' can only follow a property name when the containing object literal is part of a destructuring pattern. let, name = <PageGrid>{ ^ ERROR: Conversion of type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' to type 'PageGrid' may be a mistake because neither type sufficiently overlaps with the other. If this was intentional, convert the expression to 'unknown' first. Type '{ type: "cardType"; heading: string; useColor: true; items: undefined[]; }' is missing the following properties from type 'PageGrid': subPage, parent, parentIcon, parentIconColor, and 9 more.
                                        

                                        das habe ich eingefügt

                                                   NSPanel_Service         	//Auto-Alias Service Page
                                        	    //Unlock_Service            //Auto-Alias Service Page (Service Pages used with cardUnlock)
                                            ],
                                            
                                            let name = <PageGrid>
                                        {
                                            'type': 'cardType',
                                            'heading': 'Eckstein',
                                            'useColor': true,
                                            'items': []
                                        };  ,
                                            subPages: [
                                        	    
                                        
                                        ArmilarA Offline
                                        ArmilarA Offline
                                        Armilar
                                        Most Active Forum Testing
                                        schrieb am zuletzt editiert von Armilar
                                        #4289

                                        @sirmiker sagte in SONOFF NSPanel mit Lovelace UI:

                                        let name = <PageGrid>
                                        {
                                            'type': 'cardType',
                                            'heading': 'Eckstein',
                                            'useColor': true,
                                            'items': []
                                        };  ,
                                            subPages: [
                                        

                                        Das ist völlig falsch...

                                        Die Variablendefinition einer Seite befindet sich immer im oberen Teil des Scriptes...

                                        Die Seite selbst wird später nur in das page-Array in der Config eingetragen...

                                        Sieh dir mal das Service-Menü an... Das ist im Prinzip schon eine gute Anleitung...

                                        Hier nochmal ein Beispiel wie es korrekt wäre:

                                        Im oberen Teil wird eine Seite definiert...
                                        6045809b-1c3d-4d1c-bec4-1c2fa1df5a64-image.png

                                        im pages-Array rufe ich die Seite an der richtigen Position auf...

                                        ccfa6262-08ec-493c-8b6f-491db16f6ab0-image.png

                                        Alles andere steht auch in einer richtig umfänglichen Wiki... die muss man aber lesen...

                                        Hier mal die wichtigsten Seiten:

                                        • https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-Card-Definitionen-(Seiten)
                                        • https://github.com/joBr99/nspanel-lovelace-ui/wiki/NSPanel-Page-‐-Typen_How-2_Beispiele#how-2-page

                                        Und ganz viele Beispiele:
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---FAQ-&-Anleitungen

                                        Der Rest ist auch nicht uninteressant...

                                        Jetzt noch ein kleines Beispiel für eine cardGrid:

                                        let Radiosender = <PageGrid>
                                        {
                                            'type': 'cardGrid',
                                            'heading': 'Büro 2',
                                            'useColor': true,
                                            'items': [
                                                <PageItem>{ id: 'alias.0.NSPanel_1.Radio.Bob', icon: 'radio', name: 'Radio BOB', onColor: colorRadio},
                                                <PageItem>{ id: 'alias.0.NSPanel_1.Countdown', icon: 'timer-outline', name: 'Timer', onColor: White}
                                            ]
                                        };
                                        

                                        Das ist bei mir die "Test"-Seite Radiosender. Jedes PageItem ist ein Steuerelement und muss mit einem "nicht selbstgebauten" Alias (https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker-ALIAS-Definitionen) erstellt werden und unter "id:" im PageItem eingetragen werden. Das Script sucht sich über den Alias-Channel dann den richtigen Typen zur Darstellung raus...

                                        Das Ergebnis in diesem Beispiel:
                                        1d6b765e-c7c9-41c7-b163-e6096a6d5c9b-image.png
                                        Eine cardGrid mit einem Button um einen Radiosender zu starten und ein popupTimer

                                        Noch detaillierte für z.B. den Radiosender ist es hier beschrieben:

                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki/ioBroker---FAQ-&-Anleitungen#9-alias-taste-für-auswahl-eines-radiosenders

                                        Wenn man das Erstellen erst einmal verstanden hat, dann geht es sehr schnell...

                                        Installationsanleitung, Tipps, Alias-Definitionen, FAQ für das Sonoff NSPanel mit lovelace UI unter ioBroker
                                        https://github.com/joBr99/nspanel-lovelace-ui/wiki

                                        Benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.

                                        S 1 Antwort Letzte Antwort
                                        1
                                        • ArmilarA Armilar

                                          @stephan-l

                                          Im ioBroker ist vieles einfacher. Kein AppDaemon und kein Yaml.

                                          Das Script muss nicht angepasst werden, denn es lässt sich alles über die Datenpunkte steuern. Hierfür haben wir auch ein Service-Menü bereitgestellt:

                                          4659acb5-1295-4668-abaf-0f3d6b84b923-Nextion_Editor_LWEKmyMQ1h.gif

                                          Solltest du dann doch ein Feature Request benötigen, so kannst du es wie gewohnt im Github mit dem "Tag" ioBroker machen...

                                          6cebf463-dab2-4115-97a9-c2796c4cbec7-image.png

                                          https://github.com/joBr99/nspanel-lovelace-ui/issues

                                          Stephan LS Offline
                                          Stephan LS Offline
                                          Stephan L
                                          schrieb am zuletzt editiert von
                                          #4290

                                          @armilar said in SONOFF NSPanel mit Lovelace UI:

                                          Das Script muss nicht angepasst werden,

                                          Ich will folgendes Format: "%A - %m/%d/%Y"
                                          Im Klartext (fuer USA): Saturday - 11/18/2023

                                          Leider finde ich keine Schalter die mir das erlauben.

                                          Aber: meine kleine Aenderung fuegt einen Datenpunkt hinzu der mir die Kontrolle gibt. Keine TS leider nicht genug um zu wissen ob man absolute Freiheit wie in anderen Sprachen. Daher ist mein aktuelles Format: 'Saturday, 11/1/2023'.
                                          FAST richtig.

                                          ArmilarA 1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          300

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe