Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Praktische Anwendungen (Showcase)
    4. [Vorstellung] Meine dritte VIS

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    [Vorstellung] Meine dritte VIS

    This topic has been deleted. Only users with topic management privileges can see it.
    • Daniel M
      Daniel M @Kuddel last edited by

      @kuddel

      Hallo 🙂 ich mach hier grad meine Anfänge mit ioBroker und wollte jetzt mal Probe weise deine VIS importieren und damit bissl ausprobieren.

      du schreibst hier:

      Import

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

      Was meinst du mit eigene Skripte in Zip Datei exportieren?

      vielleicht kannst ja kurz PN schicken.

      danke

      K 1 Reply Last reply Reply Quote 0
      • C
        ChrisXY @Kuddel last edited by

        @kuddel Hab ich auch gedacht. Wohne ich auch .. und da hat es doch jemand geschafft nen Anhänger zu klauen mit Radkralle ... Nirgendwo ist man sicher 😄 Okay da hätte die Alarmanlage auch nichts gebracht.

        1 Reply Last reply Reply Quote 0
        • K
          Kuddel @Daniel M last edited by

          @daniel-m wenn du erst einmal nur meine VIS haben möchtest, kannst du meine Skripte ignorieren.

          Wenn du auch meine Skripte imporieren willst, musst du deine Skripts und meine zusammenführen, da sonst deine überschrieben werden

          1 Reply Last reply Reply Quote 0
          • Masterg 23
            Masterg 23 last edited by Masterg 23

            Ich hätte eine Frage: Ganz oben bei der Beschreibung steht:

            "Damit die Navigation und alle Widgets funktionieren, wird vor dem Import der DP benötigt"
            "javascript.0.VIS-Steuerung.Aktuelle_VIS_Seite"

            Was ist mit DP gemeint? Ich bin frisch dabei, mich mit VIS auseinander zusetzen und hab in relativ kurzer Zeit meine eigene VIS gebastelt. Nun wollte ich mich hier ein wenig inspirieren.

            Vielen Dank schon für die eure Hilfe 🙂

            EDIT: ist mit DP Datenpunkt gemeint? Falls ja was soll man als Logikwert auswählen?

            Glasfaser 1 Reply Last reply Reply Quote 0
            • Glasfaser
              Glasfaser @Masterg 23 last edited by

              @masterg-23

              https://forum.iobroker.net/topic/30497/vorstellung-meine-dritte-vis/7

              1 Reply Last reply Reply Quote 0
              • S
                saeft_2003 Most Active @Kuddel last edited by

                @kuddel

                Sieht echt super aus 👍 Könntest du mir den view "staubsauger" einzeln exportieren?

                K 1 Reply Last reply Reply Quote 0
                • K
                  Kuddel @saeft_2003 last edited by

                  @saeft_2003 bitte importiere dir mein ganzes projekt und ziehe die da die einzelnen Seiten für den Staubsauger raus.

                  Ich müsste sonst auch alle Seiten einzeln exportieren und hier hochladen

                  1 Reply Last reply Reply Quote 0
                  • S
                    saeft_2003 Most Active last edited by

                    @kuddel

                    OK ich wollte noch fragen wo die anderen staubsauger icons herkommen die wo du hochgeladen sind nur diese:

                    Unbenannt.jpg

                    K 1 Reply Last reply Reply Quote 0
                    • K
                      Kuddel @saeft_2003 last edited by

                      @saeft_2003 meine Staubsauger-Icons kommen von diesem Adapter:

                      f4ee5798-5817-4fec-8bc1-83a3f9dc73d4-grafik.png

                      1 Reply Last reply Reply Quote 0
                      • S
                        saeft_2003 Most Active last edited by

                        @kuddel

                        Alles klar Danke!

                        1 Reply Last reply Reply Quote 0
                        • S
                          saeft_2003 Most Active last edited by

                          @kuddel sagte in [Vorstellung] Meine dritte VIS:

                          @saeft_2003 bitte importiere dir mein ganzes projekt und ziehe die da die einzelnen Seiten für den Staubsauger raus.

                          Ich müsste sonst auch alle Seiten einzeln exportieren und hier hochladen

                          Das habe ich jetzt nochmal probiert, es wird aber immer deine vis-views.json mit dem demo view überschrieben wenn ich dein Projekt öffne 😞

                          1 Reply Last reply Reply Quote 0
                          • S
                            Silentblob @Kuddel last edited by Silentblob

                            @kuddel woher holt der sich die Wetter Icons bei dir? Bei mir bleiben die empty.
                            Hat sich erledigt. Hab es gefunden 😃

                            1 Reply Last reply Reply Quote 0
                            • S
                              Silentblob @Kuddel last edited by

                              @kuddel ich versuche anhand deines Bildes des Sonnenstands bei mir zu integrieren. Habe dein Script auch mit den Zeiten dafür genommen. Dennoch kommt keine Abfrage dazu? Läuft das noch über einen bestimmten Adapter?
                              Danke für eine Rückantwort Screenshot_20210301-135219_Chrome.jpg

                              K 1 Reply Last reply Reply Quote 0
                              • K
                                Kuddel @Silentblob last edited by

                                @silentblob sofern du in den Einstellungen deine Position (Längen- und Breitengrad) eingetragen hast, dann sollte das Skript funzen.

                                Einen anderen Adapter nutze ich nicht.

                                Im Skript selber sind ein paar Trigger um 0 Uhr oder so, vllt. mal die Blöcke manuell auslösen

                                S 1 Reply Last reply Reply Quote 0
                                • S
                                  Silentblob @Kuddel last edited by wendy2702

                                  @kuddel ok. Ich habe mir aus dem Script nur den Punkt Raubkopiert und als Script gestartet.

                                  // Zeiten
                                  //  Sonne
                                  createState('javascript.0.zeiten.sonnenuntergang', false, {type: 'string',name: 'sonnenuntergang'});
                                  createState('javascript.0.zeiten.sonnenaufgang', false, {type: 'string',name: 'sonnenaufgang'});
                                  createState('javascript.0.zeiten.sonnenaufgang_stunde', false, {type: 'string',name: 'sonnenaufgang_stunde'});
                                  createState('javascript.0.zeiten.sonnenaufgang_minute', false, {type: 'string',name: 'sonnenaufgang_minute'});
                                  createState('javascript.0.zeiten.rolladen_cron_restart', false, {type: 'string',name: 'rolladen_cron_restart', unit: 'Uhr'});
                                  //  Rolladen
                                  createState('javascript.0.zeiten.rolladen_oeffnen', false, {type: 'string',name: 'rolladen_oeffnen'});
                                  createState('javascript.0.zeiten.rolladen_oeffnen_verzoegerung', false, {type: 'string',name: 'rolladen_oeffnen_verzoegerung'});
                                  createState('javascript.0.zeiten.rolladen_schliessen', false, {type: 'string',name: 'rolladen_schliessen'});
                                  createState('javascript.0.zeiten.rolladen_schliessen_verzoegerung', false, {type: 'string',name: 'rolladen_schliessen_verzoegerung'});
                                  //  Nacht
                                  createState('javascript.0.zeiten.nachtlaenge', false, {type: 'string',name: 'nachtlaenge'});
                                  createState('javascript.0.zeiten.nachtlaenge_in_minuten', false, {type: 'string',name: 'nachtlaenge_in_minuten'});
                                  createState('javascript.0.zeiten.nachtlaenge_keinlicht', false, {type: 'string',name: 'nachtlaenge_keinlicht'});
                                  createState('javascript.0.zeiten.nachtlaenge_fortschritt', false, {type: 'string',name: 'nachtlaenge_fortschritt'});
                                  // Tag
                                  createState('javascript.0.zeiten.tageslaenge', false, {type: 'string',name: 'tageslaenge'});
                                  createState('javascript.0.zeiten.tageslaenge_differenz', false, {type: 'string',name: 'tageslaenge_differenz'});
                                  createState('javascript.0.zeiten.tageslaenge_fortschritt', false, {type: 'string',name: 'tageslaenge_fortschritt'});
                                  createState('javascript.0.zeiten.tageslaenge_in_minuten', false, {type: 'string',name: 'tageslaenge_in_minuten'});
                                  createState('javascript.0.zeiten.tageslaenge_in_minuten_gestern', false, {type: 'string',name: 'tageslaenge_in_minuten_gestern'});
                                  createState('javascript.0.zeiten.tageslaenge_tageslicht', false, {type: 'string',name: 'tageslaenge_tageslicht'});
                                  createState('javascript.0.zeiten.tageslaenge_tageslicht_in_minuten', false, {type: 'string',name: 'tageslaenge_tageslicht_in_minuten'});
                                  createState('javascript.0.zeiten.tageslaenge_timer_restart', false, {type: 'boolean',name:'tageslaenge_timer_restart'});
                                  

                                  MOD EDIT: SCRIPT IN CODE TAGS </> GEÄNDERT

                                  K 1 Reply Last reply Reply Quote 0
                                  • K
                                    Kuddel @Silentblob last edited by

                                    @silentblob das Skript erstellt aber nur die Datenpunkte und berechnet noch nichts

                                    S 1 Reply Last reply Reply Quote 0
                                    • S
                                      Silentblob @Kuddel last edited by

                                      @kuddel ah ok. Das heißt was muss ich machen 😄

                                      K 1 Reply Last reply Reply Quote 0
                                      • K
                                        Kuddel @Silentblob last edited by

                                        @silentblob benörigst noch ein weiteres Skript, dass die neu erstellten DPs mit Daten befüllt:

                                        blockly_export.txt

                                        Das Skript importieren und warten bis die Trigger alle einmal ausgeführt worden sind.

                                        1 Reply Last reply Reply Quote 0
                                        • Jens Meyer
                                          Jens Meyer @Kuddel last edited by

                                          @kuddel
                                          hallo, erstmal top für die mühe aieht richtig gut aus,nun habe ich mir mal das mit der vu+ angesehen und finde das super..
                                          ich bin über den punkt 11104_TV_Aufnahmen gestolpert
                                          kann aber das script nicht finden...("oid": "javascript.0.sonstige.vu_aufnahmen_liste",)
                                          kannst das eventuell noch zur verfügung stellen
                                          wäre super
                                          danke

                                          K 1 Reply Last reply Reply Quote 0
                                          • K
                                            Kuddel @Jens Meyer last edited by

                                            @jens-meyer hier der javascript export

                                            // import
                                            const moment = require("moment");
                                            const momentDurationFormatSetup = require("moment-duration-format");
                                            moment.locale("de");
                                            
                                            let enigma2AdapterRecordListId = 'enigma2.0.enigma2.MOVIE_LIST';
                                            
                                            on({ id: enigma2AdapterRecordListId }, formatList);
                                            function formatList() {
                                               try {
                                                   let list = JSON.parse(getState(enigma2AdapterRecordListId).val);
                                                   let myList = [];
                                            
                                                   if (list && list !== null && list !== undefined && list !== '') {
                                                       for (var i = 0; i <= list.length - 1; i++) {
                                                           let listItem = list[i]
                                                           let recordTime = moment(listItem.recordingtime * 1000);
                                                           let recordDateFormatted = `${recordTime.format('ddd')} ${recordTime.format('DD.MM.')}`;
                                                           let recordTimeFormatted = `${recordTime.format('LT')}`
                                                           if (moment().isSame(recordTime, 'day')) {
                                                               recordDateFormatted = `Heute ${recordTime.format('DD.MM.')}`;
                                                           } else if (moment().add(-1, 'day').isSame(recordTime, 'day')) {
                                                               recordDateFormatted = `Gestern ${recordTime.format('DD.MM.')}`;
                                                           }
                                            
                                                           let rawtitle = listItem.eventname;
                                                           let title = rawtitle;
                                                           let subtitle = listItem.subtitle;
                                            
                                                           if (title.includes(' - ')) {
                                                               title = rawtitle.substring(0, rawtitle.indexOf(' - ')).trim();
                                                               subtitle = rawtitle.substring(rawtitle.indexOf(' - ') + 2, rawtitle.length).trim();
                                            
                                                               if (subtitle === undefined) {
                                                                   subtitle = '';
                                                               }
                                                           }
                                            
                                            
                                                           myList.push(
                                                               {
                                                                   channelImage: `http://192.168.4.24:8080/picon/${listItem.serviceRefName}.png`,
                                                                   channel: listItem.servicename,
                                                                   title: title,
                                                                   recordDateFormatted: recordDateFormatted,
                                                                   recordTimeFormatted: recordTimeFormatted,
                                                                   dauer: listItem.length,
                                                                   groesse: listItem.filesize_readable,
                                                                   recordTime: listItem.recordingtime //In der VIS ausgeblendet
                                            
                                                                   //lenght: listItem.length + ' min, ' + listItem.filesize_readable,
                                                                   
                                                                   //subtitle: subtitle,
                                                                   //size: listItem.filesize_readable,
                                            
                                                               }
                                                           )
                                                       }
                                                       setState('javascript.0.sonstige.vu_aufnahmen_liste', JSON.stringify(myList), true);
                                                   }
                                            
                                               } catch (err) {
                                                   console.error(`[formatList] error: ${err.message}`);
                                                   console.error(`[formatList] stack: ${err.stack}`);
                                               }
                                            }
                                            
                                            formatList();
                                            

                                            Die IP vom Receiver und die DPs müssen noch angepasst werden

                                            Jens Meyer 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            903
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            vis vis projekte
                                            83
                                            640
                                            141859
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo