Skip to content
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
Logo
  1. ioBroker Community Home
  2. Deutsch
  3. Praktische Anwendungen (Showcase)
  4. [Vorstellung] Meine dritte VIS

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.8k

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

[Vorstellung] Meine dritte VIS

Scheduled Pinned Locked Moved Praktische Anwendungen (Showcase)
visvis projekte
640 Posts 83 Posters 184.6k Views 117 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • J jwerlsdf

    @Kuddel
    vielen Dank für deine View. Nun eine Frage: benutze dein Menü. Ich habe es soweit verstanden, wie ich meine Views einbinden kann. Aber an den submenüs scheitere ich. Die Hauptviews werden angezeigt, aber nicht die Subviews...
    b0e394ad-fea0-41c5-9634-d9241ca59af1-grafik.png

    K Offline
    K Offline
    Kuddel
    wrote on last edited by
    #356

    @jwerlsdf kannst du mal posten, was du so eingetragen hast?

    Dann kann ich das mit meinen Einstellungen vergleichen

    1 Reply Last reply
    0
    • K Kuddel

      Hallo zusammen,

      nach meiner zweiten VIS folgt jetzt meine dritte VIS.

      Die größte Neuerung ist ein komplett neues Menü mit Hilfe des Top App Bar Widget. Vielen Dank an dieser Stelle an @Scrounger.

      Bestimmt sind immer noch ein paar Fehler drin, aber fertig wird man ja eh nie.

      Vieles habe ich aus meiner zweiten VIS übernommen, so dass die Screenshots aus dem Thread oben auch fast noch alle aktuell sind.

      Screenshots:


      Startseite
      90372124-cd0b-40d0-ae6e-b8286ee25672-grafik.png

      Menü
      52f11cf6-b7f3-49c8-9344-b1a0f89d0eaa-grafik.png
      e766325b-8727-48c0-b6e7-9f773f4f246b-grafik.png

      BVB Details
      423488b3-1367-4ebf-b28e-8b730970dfae-grafik.png

      Tablet Details
      ac924af2-ac1c-4069-a59e-6a68c8775a3f-grafik.png

      System -> ioBroker
      eb9f518b-c318-4a00-a66e-6879959792a4-grafik.png

      System -> Homematic
      1aaaed6f-8e59-4cdc-8bfd-c26185f1c28b-grafik.png

      System -> Netzwerk
      622fd166-ec5b-4ff3-9cbe-d5a81fd5332b-grafik.png

      System -> Geräte
      f20ab8dd-18f2-446e-94ac-55a74765e1ca-grafik.png

      Details VU
      9cdd9c50-f62a-4e3c-b01a-f911d2e8388d-grafik.png

      System -> Logs
      e190e53e-2a68-4e6d-ae7e-a48d069f809f-grafik.png

      System -> VMware
      34ffe501-5b74-4b2c-9092-2e1a8ed9f99e-grafik.png

      Erdgeschoss -> Wohnzimmer
      18c3b9dc-75e4-41c9-9338-ef3c827f4c86-grafik.png

      Garten -> Bewässerung
      160a9338-d885-42be-8ae8-2d0daa67a8f1-grafik.png

      Wetter
      840f00c2-b9bb-4f94-be9d-9bb5b0330947-grafik.png

      Staubsauger
      1343f5bc-1514-44d2-8754-9a6eff483708-grafik.png

      Echo Geräte
      aebe9414-69fe-46ef-86b9-9125b66e2f1d-grafik.png

      Mutlimedia -> TV
      d3549b5b-2178-48de-aa40-86c03343a04d-grafik.png

      Damit die Navigation und alle Widgets funktionieren, wird vor dem Import der DP

      javascript.0.VIS-Steuerung.Aktuelle_VIS_Seite
      

      benöigt.

      Ebenso sind natürlich alle von mir verwendeten Widgets wichitg:

      ad5673c8-1694-4fe5-9839-ca55c4dd920d-grafik.png
      aba96ff9-f4c4-4291-a479-95ce40906c5b-grafik.png

      Anleitung zum Import der kompletten VIS inkl. meiner Icons:


      2020-08-17-VIS_v3.zip
      Meine_Icons.zip

      1. meine_icons.zip entpacken
      2. 2020-08-17-vis_v3.zip entpacken
      3. Die beiden VIS-Datein und die den Icons Ordner zu einem neuen Zip Archiv zusammefügen
      4. Wie gewohnt das neue Archiv im VIS Editor importieren

      Anleitung zum Import meiner Skripte:


      Voraussetzung für den Skript Import

      • Adapter: Mail, Pushover
      • Objekte für meine Skripts

      Objekte anlegen

      Alle Objekte, mit denen ich in meinen Skripten arbeite, können mit einem Javascript erstellt werden:
      objekte.txt

      • Den Inhalt der TXT-Datei in ein neues Javascript kopieren
      • Das Skript starten
      • Alle Objekte werden angelegt
      • Das Skript wieder stoppen

      Import

      1. Download der Datei 2020-03-17-scripts.zip
      2. Eigene Skripte in Zip Datei exportieren
      3. Beide Archive entpacken und dann die Skripte / Gruppen in einem gemeinsamen Archiv zusammenführen
      4. Import des neu erstellten Archivs

      Bei Fragen einfach im Thread stellen 😉

      Das nächste Projekt wird dann eine VIS fürs Smartphone

      S Offline
      S Offline
      SARCux
      wrote on last edited by
      #357

      @Kuddel
      Moin, derzeit verwende ich bei uns zuhause den MagicMirror, wenn ich aber das hier sehe haut es mich von den Socken.
      Habe mir nun eunen neuen pi 4 mit 4GB bestellt und eine sandisk ultra mit 128 GB (sollte dafür doch ausreichen)
      Sollte ich Fragen bei der Einrichtung haben, darf ich da auf dich oder die Community zukommen?

      Habe für die Visualisierung noch ein älteres Tablet in der Schublade, welches ich dafür verwenden möchte.
      Welche App zur Darstellung ist am Besten geeignet? KioskBrowser?

      Freue mich von euch zu hören

      BG
      SARCux

      K 1 Reply Last reply
      0
      • S SARCux

        @Kuddel
        Moin, derzeit verwende ich bei uns zuhause den MagicMirror, wenn ich aber das hier sehe haut es mich von den Socken.
        Habe mir nun eunen neuen pi 4 mit 4GB bestellt und eine sandisk ultra mit 128 GB (sollte dafür doch ausreichen)
        Sollte ich Fragen bei der Einrichtung haben, darf ich da auf dich oder die Community zukommen?

        Habe für die Visualisierung noch ein älteres Tablet in der Schublade, welches ich dafür verwenden möchte.
        Welche App zur Darstellung ist am Besten geeignet? KioskBrowser?

        Freue mich von euch zu hören

        BG
        SARCux

        K Offline
        K Offline
        Kuddel
        wrote on last edited by
        #358

        @SARCux du kannst natürlich gerne Fragen stellen. Entweder hier oder auch gern per PN.

        Ich nutze auf meinem schon etw. älteren Galaxy Tab A 9.7 den Fully Kiosk Browser.

        Gerade mit einer Lizenz ist der Brwoser Top, da man das Tablet auslesen kann (Akkustand z.B.).

        S 1 Reply Last reply
        0
        • K Kuddel

          @SARCux du kannst natürlich gerne Fragen stellen. Entweder hier oder auch gern per PN.

          Ich nutze auf meinem schon etw. älteren Galaxy Tab A 9.7 den Fully Kiosk Browser.

          Gerade mit einer Lizenz ist der Brwoser Top, da man das Tablet auslesen kann (Akkustand z.B.).

          S Offline
          S Offline
          SARCux
          wrote on last edited by SARCux
          #359

          @Kuddel
          Hatte mir vor zwei Jahren mal so ein China Tablet zugelegt.
          Hoffe das ich den Fully da noch raufbekomme.
          Werde es vorher mal testen und sobal der pi angekommen ist, geht es los. Bin gespannt ob ich meine Shellys einbinden kann und auch steuern.
          Klappt das auch mit Sonos und Alexa?

          Ein Fire Tab habe ich auch noch rumfliegen....

          K 1 Reply Last reply
          0
          • S SARCux

            @Kuddel
            Hatte mir vor zwei Jahren mal so ein China Tablet zugelegt.
            Hoffe das ich den Fully da noch raufbekomme.
            Werde es vorher mal testen und sobal der pi angekommen ist, geht es los. Bin gespannt ob ich meine Shellys einbinden kann und auch steuern.
            Klappt das auch mit Sonos und Alexa?

            Ein Fire Tab habe ich auch noch rumfliegen....

            K Offline
            K Offline
            Kuddel
            wrote on last edited by
            #360

            @SARCux was genau meinst du mit "Klappt das auch mit Sonos und Alexa"?

            Ich habe keine Sonos Geräte, nutze aber verschiedene Echode Devices zur Steuerung.

            S K 2 Replies Last reply
            0
            • K Kuddel

              @SARCux was genau meinst du mit "Klappt das auch mit Sonos und Alexa"?

              Ich habe keine Sonos Geräte, nutze aber verschiedene Echode Devices zur Steuerung.

              S Offline
              S Offline
              SARCux
              wrote on last edited by
              #361

              @Kuddel
              ich stelle mir eine Vis für die Küche vor (dort hängt der Sonos) und beim antippen eines Sender (wenn drei zur auswahl als Icon) das es dann über den Sonos in der Küche wiedergegeben wird

              🤔

              K 1 Reply Last reply
              0
              • S SARCux

                @Kuddel
                ich stelle mir eine Vis für die Küche vor (dort hängt der Sonos) und beim antippen eines Sender (wenn drei zur auswahl als Icon) das es dann über den Sonos in der Küche wiedergegeben wird

                🤔

                K Offline
                K Offline
                Kuddel
                wrote on last edited by
                #362

                @SARCux wenn man den Sonos in ioBroker integrieren kann, geht das bestimmt.

                Mit Sonos kenne ich mich allerdings nicht aus.

                S 1 Reply Last reply
                0
                • K Kuddel

                  @SARCux wenn man den Sonos in ioBroker integrieren kann, geht das bestimmt.

                  Mit Sonos kenne ich mich allerdings nicht aus.

                  S Offline
                  S Offline
                  SARCux
                  wrote on last edited by
                  #363

                  @Kuddel

                  Vorab schonmal danke für die schnellen Antworten.

                  Ich warte jetzt mal auf die Lieferung des pi und gehen dann Schritt für Schritt an den io broker ran.

                  Es werden dann sicherlich Fragen auftauchen, die ich ier bestimmt beantwortet bekomme.

                  BG
                  SARCux

                  1 Reply Last reply
                  0
                  • K Kuddel

                    Hallo zusammen,

                    nach meiner zweiten VIS folgt jetzt meine dritte VIS.

                    Die größte Neuerung ist ein komplett neues Menü mit Hilfe des Top App Bar Widget. Vielen Dank an dieser Stelle an @Scrounger.

                    Bestimmt sind immer noch ein paar Fehler drin, aber fertig wird man ja eh nie.

                    Vieles habe ich aus meiner zweiten VIS übernommen, so dass die Screenshots aus dem Thread oben auch fast noch alle aktuell sind.

                    Screenshots:


                    Startseite
                    90372124-cd0b-40d0-ae6e-b8286ee25672-grafik.png

                    Menü
                    52f11cf6-b7f3-49c8-9344-b1a0f89d0eaa-grafik.png
                    e766325b-8727-48c0-b6e7-9f773f4f246b-grafik.png

                    BVB Details
                    423488b3-1367-4ebf-b28e-8b730970dfae-grafik.png

                    Tablet Details
                    ac924af2-ac1c-4069-a59e-6a68c8775a3f-grafik.png

                    System -> ioBroker
                    eb9f518b-c318-4a00-a66e-6879959792a4-grafik.png

                    System -> Homematic
                    1aaaed6f-8e59-4cdc-8bfd-c26185f1c28b-grafik.png

                    System -> Netzwerk
                    622fd166-ec5b-4ff3-9cbe-d5a81fd5332b-grafik.png

                    System -> Geräte
                    f20ab8dd-18f2-446e-94ac-55a74765e1ca-grafik.png

                    Details VU
                    9cdd9c50-f62a-4e3c-b01a-f911d2e8388d-grafik.png

                    System -> Logs
                    e190e53e-2a68-4e6d-ae7e-a48d069f809f-grafik.png

                    System -> VMware
                    34ffe501-5b74-4b2c-9092-2e1a8ed9f99e-grafik.png

                    Erdgeschoss -> Wohnzimmer
                    18c3b9dc-75e4-41c9-9338-ef3c827f4c86-grafik.png

                    Garten -> Bewässerung
                    160a9338-d885-42be-8ae8-2d0daa67a8f1-grafik.png

                    Wetter
                    840f00c2-b9bb-4f94-be9d-9bb5b0330947-grafik.png

                    Staubsauger
                    1343f5bc-1514-44d2-8754-9a6eff483708-grafik.png

                    Echo Geräte
                    aebe9414-69fe-46ef-86b9-9125b66e2f1d-grafik.png

                    Mutlimedia -> TV
                    d3549b5b-2178-48de-aa40-86c03343a04d-grafik.png

                    Damit die Navigation und alle Widgets funktionieren, wird vor dem Import der DP

                    javascript.0.VIS-Steuerung.Aktuelle_VIS_Seite
                    

                    benöigt.

                    Ebenso sind natürlich alle von mir verwendeten Widgets wichitg:

                    ad5673c8-1694-4fe5-9839-ca55c4dd920d-grafik.png
                    aba96ff9-f4c4-4291-a479-95ce40906c5b-grafik.png

                    Anleitung zum Import der kompletten VIS inkl. meiner Icons:


                    2020-08-17-VIS_v3.zip
                    Meine_Icons.zip

                    1. meine_icons.zip entpacken
                    2. 2020-08-17-vis_v3.zip entpacken
                    3. Die beiden VIS-Datein und die den Icons Ordner zu einem neuen Zip Archiv zusammefügen
                    4. Wie gewohnt das neue Archiv im VIS Editor importieren

                    Anleitung zum Import meiner Skripte:


                    Voraussetzung für den Skript Import

                    • Adapter: Mail, Pushover
                    • Objekte für meine Skripts

                    Objekte anlegen

                    Alle Objekte, mit denen ich in meinen Skripten arbeite, können mit einem Javascript erstellt werden:
                    objekte.txt

                    • Den Inhalt der TXT-Datei in ein neues Javascript kopieren
                    • Das Skript starten
                    • Alle Objekte werden angelegt
                    • Das Skript wieder stoppen

                    Import

                    1. Download der Datei 2020-03-17-scripts.zip
                    2. Eigene Skripte in Zip Datei exportieren
                    3. Beide Archive entpacken und dann die Skripte / Gruppen in einem gemeinsamen Archiv zusammenführen
                    4. Import des neu erstellten Archivs

                    Bei Fragen einfach im Thread stellen 😉

                    Das nächste Projekt wird dann eine VIS fürs Smartphone

                    M Offline
                    M Offline
                    marhal
                    wrote on last edited by Negalein
                    #364

                    @Kuddel

                    Hallo Kuddel,

                    ich bin ja von deiner Vis begeistert und baue sie fleissig nach 🙂 ich bin gerade bei den iobroker Adaptern und dem Javascript (adapter_infos.). Leider bekomme ich folgende Meldungen bei dem Script kannst du mir da helfen was der Fehler dort ist ?

                    12:58:07.905	error	javascript.0 (1355) at script.js.java.abfragen.adapter_infos:14:39
                    12:58:07.905	error	javascript.0 (1355) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)
                    12:58:22.813	warn	javascript.0 (1355) at script.js.java.abfragen.adapter_infos:35:18
                    12:58:22.814	warn	javascript.0 (1355) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)
                    12:58:22.815	warn	javascript.0 (1355) at script.js.java.abfragen.adapter_infos:47:19
                    12:58:22.816	warn	javascript.0 (1355) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)
                    

                    wäre super wenn mir da jemand helfen kann

                    gruß
                    Marhal

                    K 1 Reply Last reply
                    0
                    • M marhal

                      @Kuddel

                      Hallo Kuddel,

                      ich bin ja von deiner Vis begeistert und baue sie fleissig nach 🙂 ich bin gerade bei den iobroker Adaptern und dem Javascript (adapter_infos.). Leider bekomme ich folgende Meldungen bei dem Script kannst du mir da helfen was der Fehler dort ist ?

                      12:58:07.905	error	javascript.0 (1355) at script.js.java.abfragen.adapter_infos:14:39
                      12:58:07.905	error	javascript.0 (1355) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)
                      12:58:22.813	warn	javascript.0 (1355) at script.js.java.abfragen.adapter_infos:35:18
                      12:58:22.814	warn	javascript.0 (1355) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)
                      12:58:22.815	warn	javascript.0 (1355) at script.js.java.abfragen.adapter_infos:47:19
                      12:58:22.816	warn	javascript.0 (1355) at Object.<anonymous> (script.js.java.abfragen.adapter_infos:13:19)
                      

                      wäre super wenn mir da jemand helfen kann

                      gruß
                      Marhal

                      K Offline
                      K Offline
                      Kuddel
                      wrote on last edited by
                      #365

                      @marhal das ist meine aktuelle Version:

                      // Liest die ioBroker Adapter aus und legt verschiedenen State's an.
                      
                      //on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) {
                      on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) {
                         createState('Adapter.Anzahl', 0, { name: 'Anzahl', desc: 'Anzahl der Adapter', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });
                         createState('Adapter.AdapterNummer', 0, { name: 'Adapter zum schalten', desc: 'Adapter zum schalten', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });    
                         //var counterAlt = getState("javascript.0.Adapter.Anzahl").val;
                         var counter =0;
                         var on = 0
                         var manuell=0	
                      
                         var cacheSelector = $('[id=system.adapter.*.alive]');    
                         cacheSelector.each(function(id, i) {        
                             var devicename = getObject(id).common.name; 
                         	
                         	//Instanzen ausklammern
                         	instanz0 = devicename.indexOf('daswetter');
                         	instanz1 = devicename.indexOf('dwd');
                             instanz2 = devicename.indexOf('ical');
                         	instanz3 = devicename.indexOf('feiertage');
                         	instanz4 = devicename.indexOf('snmp.1');
                             instanz5 = devicename.indexOf('vis.0');
                             instanz6 = devicename.indexOf('yamaha.0');
                         	if(instanz0 !=0 && instanz1 != 0 && instanz2 !=0 && instanz3 != 0 && instanz4 != 0 && instanz5 !=0 && instanz6 !=0){
                         	
                         		var devicenameName=devicename;
                         		var instanzname=getObject(id).common.name;
                         		var test = devicenameName;
                         		var devicename_array = devicenameName.split(' ');        
                         		devicenameName = devicename_array[0];
                         		counter = counter+1; 
                         			
                         		var strStatePath = "system.adapter." + devicenameName + ".alive";
                         		if (isState(strStatePath, true)) {
                         			var uptime = getState("system.adapter." + devicenameName + ".uptime").val;
                         			var tage = Math.floor(uptime / (24*3600));
                         			var stunden = Math.floor((uptime % (24*3600))/3600);
                         			var minuten = Math.floor((uptime % (3600))/60);
                         			//var sekunden = Math.floor(uptime % 60);      
                         			if (stunden < 10) {stunden = "0"+stunden};
                                     if (minuten < 10) {minuten = "0"+minuten};				
                         			if (tage == 1) {uptime = tage.toString()+" Tag, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";};
                         			if (tage != 1) {uptime = tage.toString()+" Tage, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";}
                         			//var total = getState("system.adapter." + devicenameName + ".memHeapTotal").val;
                         			//var used = getState("system.adapter." + devicenameName + ".memHeapUsed").val;
                         			//var rss = getState("system.adapter." + devicenameName + ".memRss").val;
                         			var connect = getState("system.adapter." + devicenameName + ".alive").val;            
                      
                         			if(connect == false){var con = 0;}
                         			else {                
                         				var con = 1;
                         				var strStatePath = devicenameName + ".info.connection";
                         				if (isState(strStatePath, true)) {
                         					var connectS = getState(devicenameName + ".info.connection").val;
                         					if (connectS == false) {
                         						con = 2;
                         					}                                                                        
                         				} 
                         			}
                         			if(con==1) {on = on + 1}
                         								  
                         		}       
                         		
                         		devicename="Adapter.Adapter"+counter.toString()+".KompletterNameAdapter";
                         		createState(devicename, 'empty', { name: 'Kompletter Name des Adapters', desc: '', type: 'string', role: '',read: true, write: true }); 
                         		setStateDelayed(devicename, devicenameName, 800);
                         		
                         		var contentstring = devicenameName;
                         		var suchstring = /(ical)/g; 
                         		var suchergebnis = suchstring.test( contentstring );
                         		
                         		if (suchergebnis != true) {
                         			var devicename_array = devicenameName.split('.');        
                         			devicenameName = devicename_array[0];
                         		}    
                      
                         		if (devicenameName == "daswetter") {
                         			var bild = "/" + devicenameName + ".admin/" + devicenameName + "com.png";
                         		} else if (suchergebnis != false) {
                         			var devicename_array = devicenameName.split('.');        
                         			var icalName = devicename_array[0];        
                         			var bild = "/" + icalName + ".admin/" + icalName + ".png";
                         		} else {
                         			var bild = "/" + devicenameName + ".admin/" + devicenameName + ".png";
                         		}
                         		
                         		//Alexa2
                         		if (devicenameName == 'alexa2') {var bild = "/" + devicenameName + ".admin/" + "alexa.png";}
                         		//FritzDECT
                         		if (devicenameName == 'fritzdect') {var bild = "/" + devicenameName + ".admin/" + "fritzdect_logo.png";}
                         		//FullyBrowser
                         		if (devicenameName == 'fullybrowser') {var bild = "/" + devicenameName + ".admin/" + "fully.png";}
                         		//HM-Rega
                         		//if (devicenameName == 'hm-rega') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
                         		if (devicenameName == 'hm-rega') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";}
                         		//HomeMatic
                         		//if (instanzname == 'hm-rpc.0 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
                         		if (instanzname == 'hm-rpc.0 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";}
                         		//HomeMatic-IP
                         		//if (instanzname == 'hm-rpc.1 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
                         		if (instanzname == 'hm-rpc.1 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic_ip.jpg";}
                         		//UPNP
                         		if (devicenameName == 'upnp') {var bild = "/" + devicenameName + ".admin/" + "upnp-discovery.png";}
                                 //Pushover.1
                         		if (instanzname == 'pushover.1 alive') {var bild = "/mihome-vacuum.admin/mihome-vacuum.png";}
                                 //Pushover.2
                         		if (instanzname == 'pushover.2 alive') {var bild = "/daswetter.admin/daswettercom.png";}
                         		
                      
                      
                                 ///////////////////////
                         		//AdapterName anpassen
                                 ////////////////////////
                         		            
                                 //DasWetter
                         		if (instanzname == 'daswetter.0 alive') {devicenameName='DasWetter'; manuell=1}
                         		//DWD
                         		if (instanzname == 'dwd.0 alive') {devicenameName='DWD'; manuell=1}
                         		//HM-REGA
                         		if (instanzname == 'hm-rega.0 alive') {devicenameName='HM-Rega'; manuell=1}			
                         		//HM-RPC.0
                         		if (instanzname == 'hm-rpc.0 alive') {devicenameName='HomeMatic'; manuell=1}
                         		//HM-RPC.1
                         		if (instanzname == 'hm-rpc.1 alive') {devicenameName='HM-IP'; manuell=1}
                         		//MiHome-Vacuum
                         		if (instanzname == 'mihome-vacuum.0 alive') {devicenameName='Nono'; manuell=1}
                         		//Pushover
                         		if (instanzname == 'pushover.0 alive') {devicenameName='Pushover.0'; manuell=1}
                         		if (instanzname == 'pushover.1 alive') {devicenameName='Pushover.1'; manuell=1}
                         		if (instanzname == 'pushover.2 alive') {devicenameName='Pushover.2'; manuell=1}
                         		//Simple-API
                         		if (instanzname == 'simple-api.0 alive') {devicenameName='Simple-API'; manuell=1}
                         		//SNMP.0
                         		if (instanzname == 'snmp.0 alive') {devicenameName='SNMP.0'; manuell=1}
                         		//SNMP.1
                         		if (instanzname == 'snmp.1 alive') {devicenameName='SNMP.1'; manuell=1}
                                 //Spotify
                                 if (instanzname == 'spotify-premium.0 alive') {devicenameName='Spotify'; manuell=1}
                                 //TR-064.0
                         		if (instanzname == 'tr-064.0 alive') {devicenameName='TR-064.0'; manuell=1}
                         		//TR-064.1
                         		if (instanzname == 'tr-064.1 alive') {devicenameName='TR-064.1'; manuell=1}
                                 //XPEnology
                                 if (instanzname == 'synology.1 alive') {devicenameName='XPEnology'; manuell=1}
                         		
                         		
                         		
                         		//Instanz-Namen setzen
                         		if(manuell!=1) {devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase();}	
                                 //devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase();
                         		devicename="Adapter.Adapter"+counter.toString()+".NameInstanz";
                         		createState(devicename, 'empty', { name: 'Name des Geräts', desc: '', type: 'string', role: '',read: true, write: true }); 
                         		setStateDelayed(devicename, devicenameName, 800);
                         		//Bild Pfad setzen
                         		devicename="Adapter.Adapter"+counter.toString()+".Bild";
                         		createState(devicename, 'empty', { name: 'Speicherort Bild', desc: '', type: 'string', role: '',read: true, write: true });
                         		setStateDelayed(devicename, bild, 800);
                         		//Uptime setzen
                         		devicename="Adapter.Adapter"+counter.toString()+".Uptime";          
                         		createState(devicename, 'empty', { name: 'Uptime', desc: '', type: 'string', role: '',read: true, write: true });
                         		setStateDelayed(devicename, uptime, 800);
                         		//MemUsed setzen
                         		//devicename="Adapter.Adapter"+counter.toString()+".MemUsed";          
                         		//createState(devicename, 0, { name: 'Link MemUsed', desc: '', type: 'number', role: '',read: true, write: true });
                         		//setStateDelayed(devicename, used, 800);
                         		//MemToal setzen
                         		//devicename="Adapter.Adapter"+counter.toString()+".MemTotal";          
                         		//createState(devicename, 0, { name: 'Link MemTotal', desc: '', type: 'number', role: '',read: true, write: true });
                         		//setStateDelayed(devicename, total, 800);
                         		//MemRSS setzen
                         		//devicename="Adapter.Adapter"+counter.toString()+".MemRSS";          
                         		//createState(devicename, 0, { name: 'Link MemRSS', desc: '', type: 'number', role: '',read: true, write: true });
                         		//setStateDelayed(devicename, rss, 800);
                         		//Connected setzen
                         		devicename="Adapter.Adapter"+counter.toString()+".Connected";          
                         		createState(devicename, 0, { name: 'Status Adapter', desc: '', type: 'number', role: '',read: true, write: true });
                         		setStateDelayed(devicename, con, 800);
                         		
                                 //Wert zurücksetzen
                                 var manuell=0
                         	}
                         });
                         
                         //Adaptet Icon Übersicht
                         visstatus="javascript.0.VIS-Status.alle_adapter_gestartet";
                         if(on == counter){setState(visstatus, true);}
                         if(on == counter -1){setState(visstatus, true);}
                         if(on < counter -1){setState(visstatus, false);}
                         
                         
                         setStateDelayed('Adapter.Anzahl', counter, 800);
                      
                         function isState(strStatePath, strict) {
                             let mSelector;
                             if (strict) {
                                 mSelector = $('state[id=' + strStatePath + '$]');
                             } else {
                                 mSelector = $('state[id=' + strStatePath + ']');
                             }
                             if (mSelector.length > 0) {
                                 return true;
                             } else {
                                 return false;
                             }
                         }  
                      }); 
                      
                      on({id:"javascript.0.Adapter.AdapterNummer", change: 'any'}, function (dpobj) {
                         if (getState("javascript.0.Adapter.AdapterNummer").val != 0) {        
                             const instanz = "javascript." + instance;
                             var adapterNummer = getState(instanz + ".Adapter.AdapterNummer").val;
                             var adapter = getState(instanz + ".Adapter.Adapter" + adapterNummer + ".KompletterNameAdapter").val; // Name und Instanz des Adapters 
                             var idAdapter = "system.adapter." + adapter;
                             
                             var obj = getObject(idAdapter);
                             if (dpobj.state.val == false) {
                                 obj.common.enabled = true;  // Adapter einschalten
                             } else if (dpobj.state.val == true) {
                                 obj.common.enabled = false;  // Adapter ausschalten
                             }
                             setObject(idAdapter, obj);
                             setStateDelayed('javascript.0.Adapter.AdapterNummer', 0, 800);        
                         }
                      });   
                      

                      C M I 4 Replies Last reply
                      -2
                      • K Kuddel

                        @marhal das ist meine aktuelle Version:

                        // Liest die ioBroker Adapter aus und legt verschiedenen State's an.
                        
                        //on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) {
                        on({id:"system.adapter.admin.0.uptime",change:'any'}, function (obj) {
                           createState('Adapter.Anzahl', 0, { name: 'Anzahl', desc: 'Anzahl der Adapter', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });
                           createState('Adapter.AdapterNummer', 0, { name: 'Adapter zum schalten', desc: 'Adapter zum schalten', type: 'number', unit: '', min: '0', max: '255', role: '',read: true, write: true });    
                           //var counterAlt = getState("javascript.0.Adapter.Anzahl").val;
                           var counter =0;
                           var on = 0
                           var manuell=0	
                        
                           var cacheSelector = $('[id=system.adapter.*.alive]');    
                           cacheSelector.each(function(id, i) {        
                               var devicename = getObject(id).common.name; 
                           	
                           	//Instanzen ausklammern
                           	instanz0 = devicename.indexOf('daswetter');
                           	instanz1 = devicename.indexOf('dwd');
                               instanz2 = devicename.indexOf('ical');
                           	instanz3 = devicename.indexOf('feiertage');
                           	instanz4 = devicename.indexOf('snmp.1');
                               instanz5 = devicename.indexOf('vis.0');
                               instanz6 = devicename.indexOf('yamaha.0');
                           	if(instanz0 !=0 && instanz1 != 0 && instanz2 !=0 && instanz3 != 0 && instanz4 != 0 && instanz5 !=0 && instanz6 !=0){
                           	
                           		var devicenameName=devicename;
                           		var instanzname=getObject(id).common.name;
                           		var test = devicenameName;
                           		var devicename_array = devicenameName.split(' ');        
                           		devicenameName = devicename_array[0];
                           		counter = counter+1; 
                           			
                           		var strStatePath = "system.adapter." + devicenameName + ".alive";
                           		if (isState(strStatePath, true)) {
                           			var uptime = getState("system.adapter." + devicenameName + ".uptime").val;
                           			var tage = Math.floor(uptime / (24*3600));
                           			var stunden = Math.floor((uptime % (24*3600))/3600);
                           			var minuten = Math.floor((uptime % (3600))/60);
                           			//var sekunden = Math.floor(uptime % 60);      
                           			if (stunden < 10) {stunden = "0"+stunden};
                                       if (minuten < 10) {minuten = "0"+minuten};				
                           			if (tage == 1) {uptime = tage.toString()+" Tag, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";};
                           			if (tage != 1) {uptime = tage.toString()+" Tage, "+stunden.toString()+" Std, "+minuten.toString()+" Min ";}
                           			//var total = getState("system.adapter." + devicenameName + ".memHeapTotal").val;
                           			//var used = getState("system.adapter." + devicenameName + ".memHeapUsed").val;
                           			//var rss = getState("system.adapter." + devicenameName + ".memRss").val;
                           			var connect = getState("system.adapter." + devicenameName + ".alive").val;            
                        
                           			if(connect == false){var con = 0;}
                           			else {                
                           				var con = 1;
                           				var strStatePath = devicenameName + ".info.connection";
                           				if (isState(strStatePath, true)) {
                           					var connectS = getState(devicenameName + ".info.connection").val;
                           					if (connectS == false) {
                           						con = 2;
                           					}                                                                        
                           				} 
                           			}
                           			if(con==1) {on = on + 1}
                           								  
                           		}       
                           		
                           		devicename="Adapter.Adapter"+counter.toString()+".KompletterNameAdapter";
                           		createState(devicename, 'empty', { name: 'Kompletter Name des Adapters', desc: '', type: 'string', role: '',read: true, write: true }); 
                           		setStateDelayed(devicename, devicenameName, 800);
                           		
                           		var contentstring = devicenameName;
                           		var suchstring = /(ical)/g; 
                           		var suchergebnis = suchstring.test( contentstring );
                           		
                           		if (suchergebnis != true) {
                           			var devicename_array = devicenameName.split('.');        
                           			devicenameName = devicename_array[0];
                           		}    
                        
                           		if (devicenameName == "daswetter") {
                           			var bild = "/" + devicenameName + ".admin/" + devicenameName + "com.png";
                           		} else if (suchergebnis != false) {
                           			var devicename_array = devicenameName.split('.');        
                           			var icalName = devicename_array[0];        
                           			var bild = "/" + icalName + ".admin/" + icalName + ".png";
                           		} else {
                           			var bild = "/" + devicenameName + ".admin/" + devicenameName + ".png";
                           		}
                           		
                           		//Alexa2
                           		if (devicenameName == 'alexa2') {var bild = "/" + devicenameName + ".admin/" + "alexa.png";}
                           		//FritzDECT
                           		if (devicenameName == 'fritzdect') {var bild = "/" + devicenameName + ".admin/" + "fritzdect_logo.png";}
                           		//FullyBrowser
                           		if (devicenameName == 'fullybrowser') {var bild = "/" + devicenameName + ".admin/" + "fully.png";}
                           		//HM-Rega
                           		//if (devicenameName == 'hm-rega') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
                           		if (devicenameName == 'hm-rega') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";}
                           		//HomeMatic
                           		//if (instanzname == 'hm-rpc.0 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
                           		if (instanzname == 'hm-rpc.0 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic.gif";}
                           		//HomeMatic-IP
                           		//if (instanzname == 'hm-rpc.1 alive') {var bild = "/" + devicenameName + ".admin/" + "homematic.png";}
                           		if (instanzname == 'hm-rpc.1 alive') {var bild = "/vis.0/VIS/Meine_Icons/Adapter_Icons/homematic_ip.jpg";}
                           		//UPNP
                           		if (devicenameName == 'upnp') {var bild = "/" + devicenameName + ".admin/" + "upnp-discovery.png";}
                                   //Pushover.1
                           		if (instanzname == 'pushover.1 alive') {var bild = "/mihome-vacuum.admin/mihome-vacuum.png";}
                                   //Pushover.2
                           		if (instanzname == 'pushover.2 alive') {var bild = "/daswetter.admin/daswettercom.png";}
                           		
                        
                        
                                   ///////////////////////
                           		//AdapterName anpassen
                                   ////////////////////////
                           		            
                                   //DasWetter
                           		if (instanzname == 'daswetter.0 alive') {devicenameName='DasWetter'; manuell=1}
                           		//DWD
                           		if (instanzname == 'dwd.0 alive') {devicenameName='DWD'; manuell=1}
                           		//HM-REGA
                           		if (instanzname == 'hm-rega.0 alive') {devicenameName='HM-Rega'; manuell=1}			
                           		//HM-RPC.0
                           		if (instanzname == 'hm-rpc.0 alive') {devicenameName='HomeMatic'; manuell=1}
                           		//HM-RPC.1
                           		if (instanzname == 'hm-rpc.1 alive') {devicenameName='HM-IP'; manuell=1}
                           		//MiHome-Vacuum
                           		if (instanzname == 'mihome-vacuum.0 alive') {devicenameName='Nono'; manuell=1}
                           		//Pushover
                           		if (instanzname == 'pushover.0 alive') {devicenameName='Pushover.0'; manuell=1}
                           		if (instanzname == 'pushover.1 alive') {devicenameName='Pushover.1'; manuell=1}
                           		if (instanzname == 'pushover.2 alive') {devicenameName='Pushover.2'; manuell=1}
                           		//Simple-API
                           		if (instanzname == 'simple-api.0 alive') {devicenameName='Simple-API'; manuell=1}
                           		//SNMP.0
                           		if (instanzname == 'snmp.0 alive') {devicenameName='SNMP.0'; manuell=1}
                           		//SNMP.1
                           		if (instanzname == 'snmp.1 alive') {devicenameName='SNMP.1'; manuell=1}
                                   //Spotify
                                   if (instanzname == 'spotify-premium.0 alive') {devicenameName='Spotify'; manuell=1}
                                   //TR-064.0
                           		if (instanzname == 'tr-064.0 alive') {devicenameName='TR-064.0'; manuell=1}
                           		//TR-064.1
                           		if (instanzname == 'tr-064.1 alive') {devicenameName='TR-064.1'; manuell=1}
                                   //XPEnology
                                   if (instanzname == 'synology.1 alive') {devicenameName='XPEnology'; manuell=1}
                           		
                           		
                           		
                           		//Instanz-Namen setzen
                           		if(manuell!=1) {devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase();}	
                                   //devicenameName = devicenameName.substring(0, 1).toUpperCase() + devicenameName.substring(1).toLowerCase();
                           		devicename="Adapter.Adapter"+counter.toString()+".NameInstanz";
                           		createState(devicename, 'empty', { name: 'Name des Geräts', desc: '', type: 'string', role: '',read: true, write: true }); 
                           		setStateDelayed(devicename, devicenameName, 800);
                           		//Bild Pfad setzen
                           		devicename="Adapter.Adapter"+counter.toString()+".Bild";
                           		createState(devicename, 'empty', { name: 'Speicherort Bild', desc: '', type: 'string', role: '',read: true, write: true });
                           		setStateDelayed(devicename, bild, 800);
                           		//Uptime setzen
                           		devicename="Adapter.Adapter"+counter.toString()+".Uptime";          
                           		createState(devicename, 'empty', { name: 'Uptime', desc: '', type: 'string', role: '',read: true, write: true });
                           		setStateDelayed(devicename, uptime, 800);
                           		//MemUsed setzen
                           		//devicename="Adapter.Adapter"+counter.toString()+".MemUsed";          
                           		//createState(devicename, 0, { name: 'Link MemUsed', desc: '', type: 'number', role: '',read: true, write: true });
                           		//setStateDelayed(devicename, used, 800);
                           		//MemToal setzen
                           		//devicename="Adapter.Adapter"+counter.toString()+".MemTotal";          
                           		//createState(devicename, 0, { name: 'Link MemTotal', desc: '', type: 'number', role: '',read: true, write: true });
                           		//setStateDelayed(devicename, total, 800);
                           		//MemRSS setzen
                           		//devicename="Adapter.Adapter"+counter.toString()+".MemRSS";          
                           		//createState(devicename, 0, { name: 'Link MemRSS', desc: '', type: 'number', role: '',read: true, write: true });
                           		//setStateDelayed(devicename, rss, 800);
                           		//Connected setzen
                           		devicename="Adapter.Adapter"+counter.toString()+".Connected";          
                           		createState(devicename, 0, { name: 'Status Adapter', desc: '', type: 'number', role: '',read: true, write: true });
                           		setStateDelayed(devicename, con, 800);
                           		
                                   //Wert zurücksetzen
                                   var manuell=0
                           	}
                           });
                           
                           //Adaptet Icon Übersicht
                           visstatus="javascript.0.VIS-Status.alle_adapter_gestartet";
                           if(on == counter){setState(visstatus, true);}
                           if(on == counter -1){setState(visstatus, true);}
                           if(on < counter -1){setState(visstatus, false);}
                           
                           
                           setStateDelayed('Adapter.Anzahl', counter, 800);
                        
                           function isState(strStatePath, strict) {
                               let mSelector;
                               if (strict) {
                                   mSelector = $('state[id=' + strStatePath + '$]');
                               } else {
                                   mSelector = $('state[id=' + strStatePath + ']');
                               }
                               if (mSelector.length > 0) {
                                   return true;
                               } else {
                                   return false;
                               }
                           }  
                        }); 
                        
                        on({id:"javascript.0.Adapter.AdapterNummer", change: 'any'}, function (dpobj) {
                           if (getState("javascript.0.Adapter.AdapterNummer").val != 0) {        
                               const instanz = "javascript." + instance;
                               var adapterNummer = getState(instanz + ".Adapter.AdapterNummer").val;
                               var adapter = getState(instanz + ".Adapter.Adapter" + adapterNummer + ".KompletterNameAdapter").val; // Name und Instanz des Adapters 
                               var idAdapter = "system.adapter." + adapter;
                               
                               var obj = getObject(idAdapter);
                               if (dpobj.state.val == false) {
                                   obj.common.enabled = true;  // Adapter einschalten
                               } else if (dpobj.state.val == true) {
                                   obj.common.enabled = false;  // Adapter ausschalten
                               }
                               setObject(idAdapter, obj);
                               setStateDelayed('javascript.0.Adapter.AdapterNummer', 0, 800);        
                           }
                        });   
                        

                        C Offline
                        C Offline
                        ChrisXY
                        wrote on last edited by
                        #366

                        @Kuddel hast du zufällig vom Nono ein Update mit der Room funktion ?

                        K 1 Reply Last reply
                        0
                        • C ChrisXY

                          @Kuddel hast du zufällig vom Nono ein Update mit der Room funktion ?

                          K Offline
                          K Offline
                          Kuddel
                          wrote on last edited by
                          #367

                          @ChrisXY ne habe ich mich bis jetzt noch nicht wieder mit beschäftigt

                          1 Reply Last reply
                          0
                          • SlowmanS Offline
                            SlowmanS Offline
                            Slowman
                            wrote on last edited by Slowman
                            #368

                            erledigt

                            1 Reply Last reply
                            0
                            • BluelinuxB Offline
                              BluelinuxB Offline
                              Bluelinux
                              wrote on last edited by
                              #369

                              Halli Hallo Ihr leiben,

                              erst einmal allen einen schönen Nikolaus und 2. Advent. Ich hoffe mir kann hier jemand helfen, denn ich habe ein Problem mit dem Menü in meiner VIS. Im VIS-Editor Materialdesign - Top App Bar fehlt der reiter Untermenü wie kommt das?? Habe das System gewechselt und seid dem ist das. Hat jemand eine Ahnung wo das Problem ist? Anbei ist noch ein Bild vom VIS-Editor.

                              Material kein untermenü.PNG

                              Das ganze hat zufolge, dass ich die Seiten nicht wechseln kann.

                              Grüße und vielen Dank

                              1 Reply Last reply
                              0
                              • Holger EtzelH Offline
                                Holger EtzelH Offline
                                Holger Etzel
                                wrote on last edited by
                                #370

                                Hallo Kuddel,
                                schone Arbeit, gefällt mir sehr gut.
                                Habe mir die VIS für den Saugroboter geklaut und die Skripte installiert,
                                hier mal eine blöde Frage zum Blockly.
                                Bei den Zonen sind 5-Stellige Zahlen in den Variablen definiert, wo kommen diese her?
                                "app_zoned-clean [.............."
                                Irgendwie stehe ich auf dem Schlauch, oder kapiere das nicht.

                                Kannst du das etwas erklären, danke schon mal im vorraus.

                                LG
                                Holger

                                BluelinuxB 1 Reply Last reply
                                0
                                • Holger EtzelH Holger Etzel

                                  Hallo Kuddel,
                                  schone Arbeit, gefällt mir sehr gut.
                                  Habe mir die VIS für den Saugroboter geklaut und die Skripte installiert,
                                  hier mal eine blöde Frage zum Blockly.
                                  Bei den Zonen sind 5-Stellige Zahlen in den Variablen definiert, wo kommen diese her?
                                  "app_zoned-clean [.............."
                                  Irgendwie stehe ich auf dem Schlauch, oder kapiere das nicht.

                                  Kannst du das etwas erklären, danke schon mal im vorraus.

                                  LG
                                  Holger

                                  BluelinuxB Offline
                                  BluelinuxB Offline
                                  Bluelinux
                                  wrote on last edited by
                                  #371

                                  @Holger-Etzel hi hi ich bin zwar nich Kuddel aber ich habe das auch versucht zu lösen. Die Koordinaten habe ich mir mit einer APP namens : FloleVac ausgelesen. Dort kann man die Stellen (Räume) in der Karte makieren und somit die daten auslesen, ABER..... offensichtlich dreht sich die Grundkarte immer mal wieder was bedeutet, das deine Koordinaten um 90° oder 180° oder 270° verdreht sind. Deswegen funktioniert die Zonenreinigung bei MIR leider nicht. Um es mal noch Plumper auszudrücken.... angenommen deine Karte wäre immer richtung Norden ausgerichtet würde es klappen aber die ist halt mal nach osten süden oder westen ausgerichtet. Ich hoffe ich konnte es ein wenig erklären

                                  Grüße

                                  Holger EtzelH 1 Reply Last reply
                                  0
                                  • BluelinuxB Bluelinux

                                    @Holger-Etzel hi hi ich bin zwar nich Kuddel aber ich habe das auch versucht zu lösen. Die Koordinaten habe ich mir mit einer APP namens : FloleVac ausgelesen. Dort kann man die Stellen (Räume) in der Karte makieren und somit die daten auslesen, ABER..... offensichtlich dreht sich die Grundkarte immer mal wieder was bedeutet, das deine Koordinaten um 90° oder 180° oder 270° verdreht sind. Deswegen funktioniert die Zonenreinigung bei MIR leider nicht. Um es mal noch Plumper auszudrücken.... angenommen deine Karte wäre immer richtung Norden ausgerichtet würde es klappen aber die ist halt mal nach osten süden oder westen ausgerichtet. Ich hoffe ich konnte es ein wenig erklären

                                    Grüße

                                    Holger EtzelH Offline
                                    Holger EtzelH Offline
                                    Holger Etzel
                                    wrote on last edited by
                                    #372

                                    @Bluelinux wie kommt man dann an die Koordinaten? kann die Zonen markieren und wie geht es dann weiter?

                                    1 Reply Last reply
                                    0
                                    • GlasfaserG Glasfaser

                                      @Urs

                                      was mit "moment" und "moment-duration-format"

                                      Hier eintragen :

                                      .
                                      1.JPG

                                      K Offline
                                      K Offline
                                      KHK
                                      wrote on last edited by
                                      #373

                                      @Glasfaser wie kann ich die Module entsprechend dem Screenshot eintragen? Irgendwie finde ich keinen Hinweis, wie ich das machen kann.
                                      Habe die Version 4.10.8. Auch unter den Einstellungen sehe ich nichts!
                                      Bin für jeden Hinweis dankbar....

                                      NegaleinN 1 Reply Last reply
                                      0
                                      • K KHK

                                        @Glasfaser wie kann ich die Module entsprechend dem Screenshot eintragen? Irgendwie finde ich keinen Hinweis, wie ich das machen kann.
                                        Habe die Version 4.10.8. Auch unter den Einstellungen sehe ich nichts!
                                        Bin für jeden Hinweis dankbar....

                                        NegaleinN Offline
                                        NegaleinN Offline
                                        Negalein
                                        Global Moderator
                                        wrote on last edited by
                                        #374

                                        @KHK sagte in [Vorstellung] Meine dritte VIS:

                                        Bin für jeden Hinweis dankbar....

                                        du öffnest die Instanz javascript.0
                                        Dann schreibst du in die Zeile mit den Modulen einfach moment-duration-format rein und drückst Enter.

                                        Screenshot_2020-12-12 instances - ioBroker.png

                                        ° Node.js: 20.17.0 NPM: 10.8.2
                                        ° Proxmox, Ubuntu 22.04.3 LTS
                                        ° Fixer ---> iob fix

                                        1 Reply Last reply
                                        0
                                        • K Kuddel

                                          @derIOalex und @Mautz der von euch genannte DP muss auf der Startseite_0000 im Widget !View_Anzeige eingetragen werden

                                          ab292a65-6420-4c66-ba60-1a202a620917-grafik.png

                                          K Offline
                                          K Offline
                                          KHK
                                          wrote on last edited by KHK
                                          #375

                                          @Kuddel
                                          Ich versuche gerade das Prinzip des Menü-Widget zu verstehen, aber habe ein paar Probleme.

                                          Dazu habe ich mir mal ein paar Screenshots gemacht. Wenn ich im importierten VIS über das Menü einen Menüpkt aufrufe, dann steht in der DP bei mir "true" und die aufgerufene Seite ist laut Titel da, aber der Inhalt fehlt.
                                          d2bf3e82-c416-4656-80d7-53bef1340a61-grafik.png

                                          Wenn ich dann die gleich Seite über den Button auf der Startseite aufrufe, dann wird die Seit ekorrekt angezeigt und in dem DP ist die Seitenzahl auch abgelegt.

                                          6ede8877-bf24-480c-8499-aff312225856-grafik.png

                                          Wo ist im Menü hinterlegt, dass bei Aufruf einer Seite diese auch aufgerufen wird. In dem widegt8 finde ich unter "VIEW" die hinterlegten views...Dort sehe ich dass unter "ALLGEMEIN" als Objekt ID auch dieser neu erstellte DP "javascript.0.VIS-Steuerung.Aktuelle_VIS_Seite" hinterlegt ist - genauso wie unter dem "Top App Bar Nav Drawer" dieser DP hinterlegt ist.

                                          Wieso erscheinen aber bei den unterschiedlichen Aufrufen zwei verschiedene Werte ?

                                          Karl

                                          K 1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          725

                                          Online

                                          32.4k

                                          Users

                                          81.4k

                                          Topics

                                          1.3m

                                          Posts
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Recent
                                          • Tags
                                          • Unread 0
                                          • Categories
                                          • Unreplied
                                          • Popular
                                          • GitHub
                                          • Docu
                                          • Hilfe