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. Visualisierung
  4. Ical mehrere Instanzen -> nur bestimmte Termine

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

Ical mehrere Instanzen -> nur bestimmte Termine

Geplant Angeheftet Gesperrt Verschoben Visualisierung
vishow-to
84 Beiträge 6 Kommentatoren 9.7k Aufrufe 5 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.
  • H Offline
    H Offline
    Hausbaer
    schrieb am zuletzt editiert von
    #1

    Servus,

    ich such jetzt schon ne ganze Weile, finde aber nicht wirklich was brauchbares.

    Ich habe insgesamt 5 Instanzen des Ical-Adapters installiert (0 - 4), in jeder Instanz sind zwischen 1 und 5 Kalender synchronisiert.
    Das funktioniert soweit ganz gut.

    Für die Startseite meiner Visualisierung möchte ich aber nur Termine, die heute (und vielleicht morgen) anliegen, anzeigen lassen.
    Dafür verwende ich auf meiner Starseite das basic-string (unescaped), wo mir aber alle Termine angezeigt werden.
    Wie kann ich das lösen?

    HomoranH liv-in-skyL 2 Antworten Letzte Antwort
    0
    • H Hausbaer

      Servus,

      ich such jetzt schon ne ganze Weile, finde aber nicht wirklich was brauchbares.

      Ich habe insgesamt 5 Instanzen des Ical-Adapters installiert (0 - 4), in jeder Instanz sind zwischen 1 und 5 Kalender synchronisiert.
      Das funktioniert soweit ganz gut.

      Für die Startseite meiner Visualisierung möchte ich aber nur Termine, die heute (und vielleicht morgen) anliegen, anzeigen lassen.
      Dafür verwende ich auf meiner Starseite das basic-string (unescaped), wo mir aber alle Termine angezeigt werden.
      Wie kann ich das lösen?

      HomoranH Nicht stören
      HomoranH Nicht stören
      Homoran
      Global Moderator Administrators
      schrieb am zuletzt editiert von
      #2

      @Hausbaer sagte in Ical mehrere Instanzen -> nur bestimmte Termine:

      Wie kann ich das lösen?

      in den ical Instanzen nur die nächsten zwei Tage konfigurieren

      kein Support per PN! - Fragen im Forum stellen - es gibt fast nichts, was nicht auch für andere interessant ist.

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

      der Installationsfixer: curl -fsL https://iobroker.net/fix.sh | bash -

      H 1 Antwort Letzte Antwort
      0
      • Karel PuhliK Offline
        Karel PuhliK Offline
        Karel Puhli
        schrieb am zuletzt editiert von
        #3

        N'abend!
        Ich klicke mich hier mal mit einer weiteren Frage ein.
        Ich würde gerne nur den nächsten Termin (egal wann er ist) anzeigen lassen. Gibt es dazu eine Lösung?
        Grüße Karel

        Karel PuhliK 1 Antwort Letzte Antwort
        0
        • HomoranH Homoran

          @Hausbaer sagte in Ical mehrere Instanzen -> nur bestimmte Termine:

          Wie kann ich das lösen?

          in den ical Instanzen nur die nächsten zwei Tage konfigurieren

          H Offline
          H Offline
          Hausbaer
          schrieb am zuletzt editiert von
          #4

          @Homoran Dann muss ich alle Instanzen doppelt anlegen, es gibt in der VIS auch einen vollständigen Kalender. Wie gesagt, es soll nur eine Startseite sein

          liv-in-skyL 1 Antwort Letzte Antwort
          0
          • H Hausbaer

            Servus,

            ich such jetzt schon ne ganze Weile, finde aber nicht wirklich was brauchbares.

            Ich habe insgesamt 5 Instanzen des Ical-Adapters installiert (0 - 4), in jeder Instanz sind zwischen 1 und 5 Kalender synchronisiert.
            Das funktioniert soweit ganz gut.

            Für die Startseite meiner Visualisierung möchte ich aber nur Termine, die heute (und vielleicht morgen) anliegen, anzeigen lassen.
            Dafür verwende ich auf meiner Starseite das basic-string (unescaped), wo mir aber alle Termine angezeigt werden.
            Wie kann ich das lösen?

            liv-in-skyL Offline
            liv-in-skyL Offline
            liv-in-sky
            schrieb am zuletzt editiert von liv-in-sky
            #5

            @Hausbaer möchtest du von allen 5 kalendern nur die nächsten termine bis 2 tage in einer übersicht ?

            nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

            1 Antwort Letzte Antwort
            0
            • H Hausbaer

              @Homoran Dann muss ich alle Instanzen doppelt anlegen, es gibt in der VIS auch einen vollständigen Kalender. Wie gesagt, es soll nur eine Startseite sein

              liv-in-skyL Offline
              liv-in-skyL Offline
              liv-in-sky
              schrieb am zuletzt editiert von
              #6

              @Hausbaer

              habe dieses script - es werden alle kalender zusammengefügt und man kann die tage (wieviele angezeigt werden sollen) einstellen

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

              ist eine html tabelle.

              Image 1.png

              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

              1 Antwort Letzte Antwort
              0
              • H Offline
                H Offline
                Hausbaer
                schrieb am zuletzt editiert von
                #7

                Ja, das kommt in die Richtung. Muss da noch ein bisschen dran rumspielen, sieht aber gut aus.

                Danke!

                1 Antwort Letzte Antwort
                0
                • Karel PuhliK Karel Puhli

                  N'abend!
                  Ich klicke mich hier mal mit einer weiteren Frage ein.
                  Ich würde gerne nur den nächsten Termin (egal wann er ist) anzeigen lassen. Gibt es dazu eine Lösung?
                  Grüße Karel

                  Karel PuhliK Offline
                  Karel PuhliK Offline
                  Karel Puhli
                  schrieb am zuletzt editiert von
                  #8

                  @Karel-Puhli said in Ical mehrere Instanzen -> nur bestimmte Termine:

                  N'abend!
                  Ich klicke mich hier mal mit einer weiteren Frage ein.
                  Ich würde gerne nur den nächsten Termin (egal wann er ist) anzeigen lassen. Gibt es dazu eine Lösung?
                  Grüße Karel

                  Keiner ne Idee?

                  liv-in-skyL 2 Antworten Letzte Antwort
                  0
                  • Karel PuhliK Karel Puhli

                    @Karel-Puhli said in Ical mehrere Instanzen -> nur bestimmte Termine:

                    N'abend!
                    Ich klicke mich hier mal mit einer weiteren Frage ein.
                    Ich würde gerne nur den nächsten Termin (egal wann er ist) anzeigen lassen. Gibt es dazu eine Lösung?
                    Grüße Karel

                    Keiner ne Idee?

                    liv-in-skyL Offline
                    liv-in-skyL Offline
                    liv-in-sky
                    schrieb am zuletzt editiert von liv-in-sky
                    #9

                    @Karel-Puhli

                    mit einem kleinen script kann man das schon auslesen und in einen datenpunkt schreiben

                    dazu muss man aber wissen, was man sehen will. z.b auch ganz tages termine, den momentan laufenden oder schon den nächsten

                    nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                    1 Antwort Letzte Antwort
                    0
                    • Karel PuhliK Karel Puhli

                      @Karel-Puhli said in Ical mehrere Instanzen -> nur bestimmte Termine:

                      N'abend!
                      Ich klicke mich hier mal mit einer weiteren Frage ein.
                      Ich würde gerne nur den nächsten Termin (egal wann er ist) anzeigen lassen. Gibt es dazu eine Lösung?
                      Grüße Karel

                      Keiner ne Idee?

                      liv-in-skyL Offline
                      liv-in-skyL Offline
                      liv-in-sky
                      schrieb am zuletzt editiert von
                      #10

                      @Karel-Puhli

                      ich habe das mit dem nächsten termin als datenpunkt in diesem script integriert - oder , falls du das script nicht willst, kann ich dir gerne den teil als einzel-script- vorbereiten

                      https://forum.iobroker.net/topic/40691/html-tabelle-für-ical-adapter-mehrere-instanzen

                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                      Karel PuhliK 1 Antwort Letzte Antwort
                      0
                      • liv-in-skyL liv-in-sky

                        @Karel-Puhli

                        ich habe das mit dem nächsten termin als datenpunkt in diesem script integriert - oder , falls du das script nicht willst, kann ich dir gerne den teil als einzel-script- vorbereiten

                        https://forum.iobroker.net/topic/40691/html-tabelle-für-ical-adapter-mehrere-instanzen

                        Karel PuhliK Offline
                        Karel PuhliK Offline
                        Karel Puhli
                        schrieb am zuletzt editiert von
                        #11

                        @liv-in-sky said in Ical mehrere Instanzen -> nur bestimmte Termine:

                        @Karel-Puhli

                        ich habe das mit dem nächsten termin als datenpunkt in diesem script integriert - oder , falls du das script nicht willst, kann ich dir gerne den teil als einzel-script- vorbereiten

                        Das wäre sehr nett, wenn du das so vorbereiten könntest. 🙂

                        liv-in-skyL 1 Antwort Letzte Antwort
                        0
                        • Karel PuhliK Karel Puhli

                          @liv-in-sky said in Ical mehrere Instanzen -> nur bestimmte Termine:

                          @Karel-Puhli

                          ich habe das mit dem nächsten termin als datenpunkt in diesem script integriert - oder , falls du das script nicht willst, kann ich dir gerne den teil als einzel-script- vorbereiten

                          Das wäre sehr nett, wenn du das so vorbereiten könntest. 🙂

                          liv-in-skyL Offline
                          liv-in-skyL Offline
                          liv-in-sky
                          schrieb am zuletzt editiert von
                          #12

                          @karel-puhli

                          ich schau mal morgen - sollte nicht so aufwendig werden

                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                          Karel PuhliK 1 Antwort Letzte Antwort
                          0
                          • liv-in-skyL liv-in-sky

                            @karel-puhli

                            ich schau mal morgen - sollte nicht so aufwendig werden

                            Karel PuhliK Offline
                            Karel PuhliK Offline
                            Karel Puhli
                            schrieb am zuletzt editiert von
                            #13

                            @liv-in-sky Danke Dir schon mal!!! 👍

                            liv-in-skyL 1 Antwort Letzte Antwort
                            0
                            • Karel PuhliK Karel Puhli

                              @liv-in-sky Danke Dir schon mal!!! 👍

                              liv-in-skyL Offline
                              liv-in-skyL Offline
                              liv-in-sky
                              schrieb am zuletzt editiert von liv-in-sky
                              #14

                              @karel-puhli

                              hier ist ein script , das 3 datenpunkte schreibt:

                              nächster termin
                              nächster ganz-tags termin
                              erster, im moment laufender termin

                              du musst :

                              • im script die instanzen angeben, die du checken willst (können ja mehrere sein)
                              • die datenpunkte , die im script angegeben werden mußt du anlegen bzw. lege dir irgendwelche dp vom typ zeichenkette an und gleiche das script daran an
                              • über die ausgabe in den dp können wir ja noch diskutieren - wie die aussehen sollen, wann was drin stehen soll

                              da ich nicht weiß, wie viel du über iobroker und scripte weißt, einfach fragen, wenn etwas unklar ist

                              javascript zum import:

                              
                              
                              let dpTSJson=["ical.0.data.table","ical.1.data.table","ical.2.data.table"];                      // bei nur einer instanz: ["ical.0.data.table"]
                              let dpTerminNext="0_userdata.0.Tabellen.IcalTerminNext";                     // WICHTIG   - datenpunkt anlegen: zeichenkette
                              let dpTerminRunning="0_userdata.0.Tabellen.IcalTerminRunning";               // WICHTIG  - datenpunkt anlegen: zeichenkette 
                              let dpTerminNextGanzerTag="0_userdata.0.Tabellen.IcalTerminNextGanzerTag";   // WICHTIG   - datenpunkt anlegen: zeichenkette
                              
                              
                              
                              let helperTerminNext;
                              let helperTerminRunning;
                              
                              
                              let mySchedule3="  0,30  * * * * ";                       //jede stunde um 0 minuten und 30 minuten
                              
                              
                              let myData=[];
                              let inDpNext=""
                              let inDpRunning=[];
                              let inDpRunning2="";
                              let inDpGanzTag=""
                              
                              
                               schedule(mySchedule3,  function () {
                               myData=[];
                               inDpNext=""
                               inDpRunning=[];
                               inDpRunning2="";
                               inDpGanzTag=""
                               helperTerminNext="" 
                               helperTerminRunning=""   
                              
                              for (let i=0;i<dpTSJson.length;i++) {
                                 let myDpInput=(getState(dpTSJson[i]).val);
                                 myData=myData.concat(myDpInput)          //myData=myData.concat(getState(dpTSJson[i]).val)
                              }
                              // log(JSON.stringify(myData))
                              
                              // SORTIEREN
                              myData.sort(function(a, b){
                                                             return new Date(a._date).getTime() - new Date(b._date).getTime();      // return parseInt(new Date(b.date).getTime()) - parseInt(a.date);
                                                            });
                              
                              // NEXT TERMIN
                                 for (let x=0;x<myData.length;x++ ) {
                                         if (!myData[x].date.includes("&#8594;") && myData[x].date.includes(":")&& !myData[x].date.includes("01:00-00:00"))
                                             {   helperTerminNext=myData[x].date
                                                 helperTerminNext=helperTerminNext.replace(/(.+?\..*?\.).* (\d\d\:\d\d)-\d\d\:\d\d/,"$1 $2: ");  
                                                           
                                              if(   formatDate(getDateObject(myData[x]._date), "DD.MM") == formatDate(getDateObject((new Date().getTime())), "DD.MM") ) {helperTerminNext=helperTerminNext.replace(/.+? (\d\d\:\d\d)/,"Heute $1: ")} // : helperTerminNext=helperTerminNext.replace(/(.+?\..*?\.).* (\d\d\:\d\d)-\d\d\:\d\d/,"$1 $2")   
                                           
                                         //  log(  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM") +"  "+formatDate(getDateObject((new Date().getTime())), "DD.MM"))
                                             if (  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM") == formatDate(getDateObject(myData[x]._date), "DD.MM") ) {
                                                   helperTerminNext=helperTerminNext.replace(/.+? (\d\d\:\d\d)/,"Morgen $1: "); }
                                    
                                                 inDpNext=helperTerminNext+" "+myData[x].event;
                                                                   
                                              break;}
                                 }
                              //NEXT GANZER TAG
                              
                                 for (let x=0;x<myData.length;x++ ) {
                                         if ((!myData[x].date.includes("&#8594;") && !myData[x].date.includes(":") &&  formatDate(getDateObject(myData[x]._date), "DD.MM") != formatDate(getDateObject((new Date().getTime())), "DD.MM")) || 
                                                 (!myData[x].date.includes("&#8594;") && myData[x].date.includes("01:00") &&  formatDate(getDateObject(myData[x]._date), "DD.MM") != formatDate(getDateObject((new Date().getTime())), "DD.MM")) )
                                            { helperTerminNext=myData[x].date
                                             // log(helperTerminNext)
                                              let morgen =  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM"); //log(morgen)
                                              
                                              if (  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM") == formatDate(getDateObject(myData[x]._date), "DD.MM") ) {
                                                    helperTerminNext="Morgen: " ;
                                                 //   log("-"+helperTerminNext)
                                                    }
                                             
                                                                
                                         inDpGanzTag=helperTerminNext+" "+myData[x].event ; 
                                                 
                                         break;}
                                 }
                              // LÄUFT GERADE
                              
                                 for (let x=0;x<myData.length;x++ ) {
                                         if (myData[x].date.includes("&#8594;")   && myData[x].date.includes(":") && !myData[x].date.includes("00:00") )
                              
                                             {   helperTerminNext=myData[x].date.replace("&#8594;","")
                                             helperTerminNext=helperTerminNext.replace(/.+? (.?)/,"bis: $1")
                                             inDpRunning.push(helperTerminNext+" "+myData[x].event)
                                             
                                              } }
                                   inDpRunning.length>0 ? inDpRunning2=inDpRunning[inDpRunning.length-1]  :  inDpRunning2=""
                                 
                              
                              
                                  setState(dpTerminRunning,inDpRunning2)
                                  setState(dpTerminNext,inDpNext)
                                  setState(dpTerminNextGanzerTag,inDpGanzTag)
                              
                               });
                              
                              
                              
                              
                              
                              
                              
                              
                              
                              
                              
                              
                               
                              
                              

                              die ausgabe sieht so aus - ist unformatiert - einfach die datenpunkte untereinander ausgegeben

                              Image 7.png

                              nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                              Karel PuhliK 1 Antwort Letzte Antwort
                              2
                              • liv-in-skyL liv-in-sky

                                @karel-puhli

                                hier ist ein script , das 3 datenpunkte schreibt:

                                nächster termin
                                nächster ganz-tags termin
                                erster, im moment laufender termin

                                du musst :

                                • im script die instanzen angeben, die du checken willst (können ja mehrere sein)
                                • die datenpunkte , die im script angegeben werden mußt du anlegen bzw. lege dir irgendwelche dp vom typ zeichenkette an und gleiche das script daran an
                                • über die ausgabe in den dp können wir ja noch diskutieren - wie die aussehen sollen, wann was drin stehen soll

                                da ich nicht weiß, wie viel du über iobroker und scripte weißt, einfach fragen, wenn etwas unklar ist

                                javascript zum import:

                                
                                
                                let dpTSJson=["ical.0.data.table","ical.1.data.table","ical.2.data.table"];                      // bei nur einer instanz: ["ical.0.data.table"]
                                let dpTerminNext="0_userdata.0.Tabellen.IcalTerminNext";                     // WICHTIG   - datenpunkt anlegen: zeichenkette
                                let dpTerminRunning="0_userdata.0.Tabellen.IcalTerminRunning";               // WICHTIG  - datenpunkt anlegen: zeichenkette 
                                let dpTerminNextGanzerTag="0_userdata.0.Tabellen.IcalTerminNextGanzerTag";   // WICHTIG   - datenpunkt anlegen: zeichenkette
                                
                                
                                
                                let helperTerminNext;
                                let helperTerminRunning;
                                
                                
                                let mySchedule3="  0,30  * * * * ";                       //jede stunde um 0 minuten und 30 minuten
                                
                                
                                let myData=[];
                                let inDpNext=""
                                let inDpRunning=[];
                                let inDpRunning2="";
                                let inDpGanzTag=""
                                
                                
                                 schedule(mySchedule3,  function () {
                                 myData=[];
                                 inDpNext=""
                                 inDpRunning=[];
                                 inDpRunning2="";
                                 inDpGanzTag=""
                                 helperTerminNext="" 
                                 helperTerminRunning=""   
                                
                                for (let i=0;i<dpTSJson.length;i++) {
                                   let myDpInput=(getState(dpTSJson[i]).val);
                                   myData=myData.concat(myDpInput)          //myData=myData.concat(getState(dpTSJson[i]).val)
                                }
                                // log(JSON.stringify(myData))
                                
                                // SORTIEREN
                                myData.sort(function(a, b){
                                                               return new Date(a._date).getTime() - new Date(b._date).getTime();      // return parseInt(new Date(b.date).getTime()) - parseInt(a.date);
                                                              });
                                
                                // NEXT TERMIN
                                   for (let x=0;x<myData.length;x++ ) {
                                           if (!myData[x].date.includes("&#8594;") && myData[x].date.includes(":")&& !myData[x].date.includes("01:00-00:00"))
                                               {   helperTerminNext=myData[x].date
                                                   helperTerminNext=helperTerminNext.replace(/(.+?\..*?\.).* (\d\d\:\d\d)-\d\d\:\d\d/,"$1 $2: ");  
                                                             
                                                if(   formatDate(getDateObject(myData[x]._date), "DD.MM") == formatDate(getDateObject((new Date().getTime())), "DD.MM") ) {helperTerminNext=helperTerminNext.replace(/.+? (\d\d\:\d\d)/,"Heute $1: ")} // : helperTerminNext=helperTerminNext.replace(/(.+?\..*?\.).* (\d\d\:\d\d)-\d\d\:\d\d/,"$1 $2")   
                                             
                                           //  log(  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM") +"  "+formatDate(getDateObject((new Date().getTime())), "DD.MM"))
                                               if (  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM") == formatDate(getDateObject(myData[x]._date), "DD.MM") ) {
                                                     helperTerminNext=helperTerminNext.replace(/.+? (\d\d\:\d\d)/,"Morgen $1: "); }
                                      
                                                   inDpNext=helperTerminNext+" "+myData[x].event;
                                                                     
                                                break;}
                                   }
                                //NEXT GANZER TAG
                                
                                   for (let x=0;x<myData.length;x++ ) {
                                           if ((!myData[x].date.includes("&#8594;") && !myData[x].date.includes(":") &&  formatDate(getDateObject(myData[x]._date), "DD.MM") != formatDate(getDateObject((new Date().getTime())), "DD.MM")) || 
                                                   (!myData[x].date.includes("&#8594;") && myData[x].date.includes("01:00") &&  formatDate(getDateObject(myData[x]._date), "DD.MM") != formatDate(getDateObject((new Date().getTime())), "DD.MM")) )
                                              { helperTerminNext=myData[x].date
                                               // log(helperTerminNext)
                                                let morgen =  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM"); //log(morgen)
                                                
                                                if (  formatDate(getDateObject((new Date().getTime())+(1000 * 60 * 60 * 24 * 1)), "DD.MM") == formatDate(getDateObject(myData[x]._date), "DD.MM") ) {
                                                      helperTerminNext="Morgen: " ;
                                                   //   log("-"+helperTerminNext)
                                                      }
                                               
                                                                  
                                           inDpGanzTag=helperTerminNext+" "+myData[x].event ; 
                                                   
                                           break;}
                                   }
                                // LÄUFT GERADE
                                
                                   for (let x=0;x<myData.length;x++ ) {
                                           if (myData[x].date.includes("&#8594;")   && myData[x].date.includes(":") && !myData[x].date.includes("00:00") )
                                
                                               {   helperTerminNext=myData[x].date.replace("&#8594;","")
                                               helperTerminNext=helperTerminNext.replace(/.+? (.?)/,"bis: $1")
                                               inDpRunning.push(helperTerminNext+" "+myData[x].event)
                                               
                                                } }
                                     inDpRunning.length>0 ? inDpRunning2=inDpRunning[inDpRunning.length-1]  :  inDpRunning2=""
                                   
                                
                                
                                    setState(dpTerminRunning,inDpRunning2)
                                    setState(dpTerminNext,inDpNext)
                                    setState(dpTerminNextGanzerTag,inDpGanzTag)
                                
                                 });
                                
                                
                                
                                
                                
                                
                                
                                
                                
                                
                                
                                
                                 
                                
                                

                                die ausgabe sieht so aus - ist unformatiert - einfach die datenpunkte untereinander ausgegeben

                                Image 7.png

                                Karel PuhliK Offline
                                Karel PuhliK Offline
                                Karel Puhli
                                schrieb am zuletzt editiert von
                                #15

                                @liv-in-sky

                                Sehr cool, vielen Dank dafür! 👍 👍 👍

                                Naja, sagen wir es mal so. Ich bin in den ersten Zügen JS. Das Script kann ich gut lesen, bis zur ersten for Schleife, danach wirds schwierig für mich... 😉

                                Ich habe alles wie von dir beschrieben gemacht. Ich habe 4 Instanzen angegeben (0 bis 3) und die 3 Datenpunkte angelegt. Im Vis wird auch schon etwas angezeigt. Allerdings gibt es in Instanz 3 einen TerminNext der früher ist als ein TerminNext der Instanz 1. Trotzdem zeigt er den Termin der Instanz 1 unter TerminNext an...

                                Vielen Dank für deine Mühen!!!

                                Gruß Karel

                                liv-in-skyL 1 Antwort Letzte Antwort
                                0
                                • Karel PuhliK Karel Puhli

                                  @liv-in-sky

                                  Sehr cool, vielen Dank dafür! 👍 👍 👍

                                  Naja, sagen wir es mal so. Ich bin in den ersten Zügen JS. Das Script kann ich gut lesen, bis zur ersten for Schleife, danach wirds schwierig für mich... 😉

                                  Ich habe alles wie von dir beschrieben gemacht. Ich habe 4 Instanzen angegeben (0 bis 3) und die 3 Datenpunkte angelegt. Im Vis wird auch schon etwas angezeigt. Allerdings gibt es in Instanz 3 einen TerminNext der früher ist als ein TerminNext der Instanz 1. Trotzdem zeigt er den Termin der Instanz 1 unter TerminNext an...

                                  Vielen Dank für deine Mühen!!!

                                  Gruß Karel

                                  liv-in-skyL Offline
                                  liv-in-skyL Offline
                                  liv-in-sky
                                  schrieb am zuletzt editiert von
                                  #16

                                  @karel-puhli ja - da habe ich etwas vergessen, wird später nachgeliefert

                                  passt das format der ausgabe oder soll ich das anders inden datenpunkt schreiben ?

                                  nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                  Karel PuhliK 1 Antwort Letzte Antwort
                                  0
                                  • liv-in-skyL liv-in-sky

                                    @karel-puhli ja - da habe ich etwas vergessen, wird später nachgeliefert

                                    passt das format der ausgabe oder soll ich das anders inden datenpunkt schreiben ?

                                    Karel PuhliK Offline
                                    Karel PuhliK Offline
                                    Karel Puhli
                                    schrieb am zuletzt editiert von
                                    #17

                                    @liv-in-sky Also ich denke, das Format passt ertmal so. Ich halte diesbezüglich meine Vis eher schlicht, was Termine angeht.

                                    liv-in-skyL 1 Antwort Letzte Antwort
                                    0
                                    • Karel PuhliK Karel Puhli

                                      @liv-in-sky Also ich denke, das Format passt ertmal so. Ich halte diesbezüglich meine Vis eher schlicht, was Termine angeht.

                                      liv-in-skyL Offline
                                      liv-in-skyL Offline
                                      liv-in-sky
                                      schrieb am zuletzt editiert von
                                      #18

                                      @karel-puhli

                                      habe das script weiter oben ausgetauscht - bitte mal testen, ob jetzt die daten richtig angezeigt werden

                                      du musst dann die 4 variablen - oben - wieder anpassen

                                      nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                      Karel PuhliK 1 Antwort Letzte Antwort
                                      1
                                      • liv-in-skyL liv-in-sky

                                        @karel-puhli

                                        habe das script weiter oben ausgetauscht - bitte mal testen, ob jetzt die daten richtig angezeigt werden

                                        du musst dann die 4 variablen - oben - wieder anpassen

                                        Karel PuhliK Offline
                                        Karel PuhliK Offline
                                        Karel Puhli
                                        schrieb am zuletzt editiert von Karel Puhli
                                        #19

                                        @liv-in-sky das kommt jetzt im log

                                        javascript.0	2021-01-14 09:59:53.624	error	(1734) at process._tickCallback (internal/process/next_tick.js:68:7)
                                        javascript.0	2021-01-14 09:59:53.624	error	(1734) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
                                        javascript.0	2021-01-14 09:59:53.624	error	(1734) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                                        javascript.0	2021-01-14 09:59:53.623	error	(1734) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:608:33)
                                        javascript.0	2021-01-14 09:59:53.623	error	(1734) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1219:17)
                                        javascript.0	2021-01-14 09:59:53.623	error	(1734) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1681:17)
                                        javascript.0	2021-01-14 09:59:53.622	error	(1734) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1587:37)
                                        javascript.0	2021-01-14 09:59:53.622	error	(1734) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1364:28)
                                        javascript.0	2021-01-14 09:59:53.622	error	(1734) at Object.createScript (vm.js:277:10)
                                        javascript.0	2021-01-14 09:59:53.622	error	(1734) at new Script (vm.js:83:7)
                                        javascript.0	2021-01-14 09:59:53.621	error	(1734) SyntaxError: Unexpected end of input
                                        javascript.0	2021-01-14 09:59:53.621	error	(1734)
                                        javascript.0	2021-01-14 09:59:53.621	error	(1734) log('registered ' + __engine.__subscriptions + ' subscription' + (__engine.__subscriptions === 1 ? '' : 's' ) + ' and ' + __engine.__schedules + ' schedule' + (__engine.__schedules === 1 ? ''
                                        javascript.0	2021-01-14 09:59:53.620	error	at script.js.Test.JavaScript.icalTabellen:71
                                        javascript.0	2021-01-14 09:59:53.620	error	(1734) script.js.Test.JavaScript.icalTabellen compile failed:
                                        

                                        edit: ganz unten die letzte Klammer: "}" wurde erwartet

                                        liv-in-skyL 1 Antwort Letzte Antwort
                                        0
                                        • Karel PuhliK Karel Puhli

                                          @liv-in-sky das kommt jetzt im log

                                          javascript.0	2021-01-14 09:59:53.624	error	(1734) at process._tickCallback (internal/process/next_tick.js:68:7)
                                          javascript.0	2021-01-14 09:59:53.624	error	(1734) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
                                          javascript.0	2021-01-14 09:59:53.624	error	(1734) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                                          javascript.0	2021-01-14 09:59:53.623	error	(1734) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:608:33)
                                          javascript.0	2021-01-14 09:59:53.623	error	(1734) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1219:17)
                                          javascript.0	2021-01-14 09:59:53.623	error	(1734) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1681:17)
                                          javascript.0	2021-01-14 09:59:53.622	error	(1734) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1587:37)
                                          javascript.0	2021-01-14 09:59:53.622	error	(1734) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1364:28)
                                          javascript.0	2021-01-14 09:59:53.622	error	(1734) at Object.createScript (vm.js:277:10)
                                          javascript.0	2021-01-14 09:59:53.622	error	(1734) at new Script (vm.js:83:7)
                                          javascript.0	2021-01-14 09:59:53.621	error	(1734) SyntaxError: Unexpected end of input
                                          javascript.0	2021-01-14 09:59:53.621	error	(1734)
                                          javascript.0	2021-01-14 09:59:53.621	error	(1734) log('registered ' + __engine.__subscriptions + ' subscription' + (__engine.__subscriptions === 1 ? '' : 's' ) + ' and ' + __engine.__schedules + ' schedule' + (__engine.__schedules === 1 ? ''
                                          javascript.0	2021-01-14 09:59:53.620	error	at script.js.Test.JavaScript.icalTabellen:71
                                          javascript.0	2021-01-14 09:59:53.620	error	(1734) script.js.Test.JavaScript.icalTabellen compile failed:
                                          

                                          edit: ganz unten die letzte Klammer: "}" wurde erwartet

                                          liv-in-skyL Offline
                                          liv-in-skyL Offline
                                          liv-in-sky
                                          schrieb am zuletzt editiert von liv-in-sky
                                          #20

                                          @karel-puhli

                                          @karel-puhli

                                          bitte die fehler und solche art von posts in code tag

                                          siehe: https://forum.iobroker.net/post/553912

                                          könnte da was beim kopieren schief gegangen sein

                                          schaut dann so aus:

                                          javascript.0 2021-01-14 09:59:53.624 error (1734) at process._tickCallback (internal/process/next_tick.js:68:7)
                                          javascript.0 2021-01-14 09:59:53.624 error (1734) at promise.then (/opt/iobroker/node_modules/standard-as-callback/built/index.js:19:49)
                                          javascript.0 2021-01-14 09:59:53.624 error (1734) at tryCatcher (/opt/iobroker/node_modules/standard-as-callback/built/utils.js:11:23)
                                          javascript.0 2021-01-14 09:59:53.623 error (1734) at client.get (/opt/iobroker/node_modules/iobroker.js-controller/lib/states/statesInRedis.js:608:33)
                                          javascript.0 2021-01-14 09:59:53.623 error (1734) at adapter.getForeignState (/opt/iobroker/node_modules/iobroker.javascript/main.js:1219:17)
                                          javascript.0 2021-01-14 09:59:53.623 error (1734) at createProblemObject (/opt/iobroker/node_modules/iobroker.javascript/main.js:1681:17)
                                          javascript.0 2021-01-14 09:59:53.622 error (1734) at prepareScript (/opt/iobroker/node_modules/iobroker.javascript/main.js:1587:37)
                                          javascript.0 2021-01-14 09:59:53.622 error (1734) at createVM (/opt/iobroker/node_modules/iobroker.javascript/main.js:1364:28)
                                          javascript.0 2021-01-14 09:59:53.622 error (1734) at Object.createScript (vm.js:277:10)
                                          javascript.0 2021-01-14 09:59:53.622 error (1734) at new Script (vm.js:83:7)
                                          javascript.0 2021-01-14 09:59:53.621 error (1734) SyntaxError: Unexpected end of input
                                          javascript.0 2021-01-14 09:59:53.621 error (1734)
                                          javascript.0 2021-01-14 09:59:53.621 error (1734) log('registered ' + __engine.__subscriptions + ' subscription' + (__engine.__subscriptions === 1 ? '' : 's' ) + ' and ' + __engine.__schedules + ' schedule' + (__engine.__schedules === 1 ? ''
                                          javascript.0 2021-01-14 09:59:53.620 error at script.js.Test.JavaScript.icalTabellen:71
                                          javascript.0 2021-01-14 09:59:53.620 error (1734) script.js.Test.JavaScript.icalTabellen compile failed:
                                          

                                          nach einem gelösten Thread wäre es sinnvoll dies in der Überschrift des ersten Posts einzutragen [gelöst]-... Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat. Forum-Tools: PicPick https://picpick.app/en/download/ und ScreenToGif https://www.screentogif.com/downloads.html

                                          Karel PuhliK 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

                                          744

                                          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