Weiter zum Inhalt
  • Home
  • Aktuell
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Hell
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dunkel
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. Ical Termine als Telegramnachricht

NEWS

  • Neue Adresse: die ioBroker-Webseite liegt jetzt auf iobroker.com
    BluefoxB
    Bluefox
    3
    1
    174

  • Die neue ioBroker Webseite ist online!
    BluefoxB
    Bluefox
    11
    1
    199

  • Information zum Kontoabgleich und zur Namensänderung
    BluefoxB
    Bluefox
    11
    1
    520

Ical Termine als Telegramnachricht

Geplant Angeheftet Gesperrt Verschoben Blockly
53 Beiträge 6 Kommentatoren 5.8k Aufrufe 8 Beobachtet
  • Ä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.
  • Nico AdlerN Nico Adler

    Also wenn ich es richtig verstehe dann habe ich einmal den ical Adapter und einmal den calendar Adapter bei dem ich über Google API alles eingerichtet habe. Beim zweiten habe ich aber keine Datenpunkte bei Objekte. Also nicht Mal der Adapter wird da angezeigt.

    J.A.R.V.I.S.J
    J.A.R.V.I.S.J
    J.A.R.V.I.S.
    Developer
    schrieb am zuletzt editiert von
    #12

    @Nico-Adler dann versuch es testweise mal mit der iCal Adresse im Calendar Adapter.

    1 Antwort Letzte Antwort
    0
    • Nico AdlerN
      Nico AdlerN
      Nico Adler
      schrieb am zuletzt editiert von
      #13

      Ich bekomme es irgendwie nicht hin.. anscheinend bin ich zu blöd. Im Log steht no permission granted.

      Also kann man nicht einfach den ical Datenpunkt umschreiben lassen. Der funktioniert zumindest, bloß das dort "<span style...." steht

      1 Antwort Letzte Antwort
      0
      • Stephan SchleichS Stephan Schleich

        Welchen DP frägst du denn ab oder post mal das Script.
        Musst vermutlich eine eigene Instanz machen mir 7 Tage (oder filtern?).

        bahnuhrB
        bahnuhrB
        bahnuhr
        Forum Testing Most Active
        schrieb am zuletzt editiert von
        #14

        @Stephan-Schleich sagte in Ical Termine als Telegramnachricht:

        oder post mal das Script.

        Warum stellt du dein Script nicht hier ein?


        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
        Danke.
        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
        ScreenToGif :https://www.screentogif.com/downloads.html

        1 Antwort Letzte Antwort
        0
        • bahnuhrB
          bahnuhrB
          bahnuhr
          Forum Testing Most Active
          schrieb am zuletzt editiert von bahnuhr
          #15

          So,
          hab mal ein bisschen rum gespielt.

          var arr = getState('ical.0.data.table').val;
          
          for (x=1;x<=5;x++) {
              log (arr[x].date + " / " + arr[x].event);
          }
          

          du musst die table Var. nehmen.
          Dann arr erzeugen.

          Im log kommt dann:
          dbe73e21-69cd-4147-8ce7-f343c02fcf67-image.png

          Was du noch brauchst:

          • Prüfen von Datum
          • telegram senden.

          mfg
          Dieter


          Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
          Danke.
          gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
          ScreenToGif :https://www.screentogif.com/downloads.html

          Nico AdlerN 1 Antwort Letzte Antwort
          0
          • Nico AdlerN
            Nico AdlerN
            Nico Adler
            schrieb am zuletzt editiert von
            #16
            <xml xmlns="http://www.w3.org/1999/xhtml">
              <block type="telegram" id="~U[Ttfz9[[RJFe$HzE@Y" x="-587" y="2062">
                <field name="INSTANCE"></field>
                <field name="LOG"></field>
                <field name="SILENT">FALSE</field>
                <field name="PARSEMODE">HTML</field>
                <value name="MESSAGE">
                  <shadow type="text" id="Gzz$1-!y]:uJcJ4tA)4O">
                    <field name="TEXT">text</field>
                  </shadow>
                  <block type="text_join" id="feiXZ+N4Ic*_*T6/]gr|">
                    <mutation items="2"></mutation>
                    <value name="ADD0">
                      <block type="get_value" id="{;wI`jk@W1*YZI%lE(+`">
                        <field name="ATTR">val</field>
                        <field name="OID">ical.0.data.html</field>
                      </block>
                    </value>
                  </block>
                </value>
                <value name="USERNAME">
                  <block type="text" id="93]*F0;~EH8%Yow+8a%`">
                    <field name="TEXT">Nico</field>
                  </block>
                </value>
              </block>
            </xml>
            

            Hier ist das Blockly Script.

            1 Antwort Letzte Antwort
            0
            • bahnuhrB bahnuhr

              So,
              hab mal ein bisschen rum gespielt.

              var arr = getState('ical.0.data.table').val;
              
              for (x=1;x<=5;x++) {
                  log (arr[x].date + " / " + arr[x].event);
              }
              

              du musst die table Var. nehmen.
              Dann arr erzeugen.

              Im log kommt dann:
              dbe73e21-69cd-4147-8ce7-f343c02fcf67-image.png

              Was du noch brauchst:

              • Prüfen von Datum
              • telegram senden.

              mfg
              Dieter

              Nico AdlerN
              Nico AdlerN
              Nico Adler
              schrieb am zuletzt editiert von
              #17

              @bahnuhr wo muss ich das hin kopieren? Sorry aber ich bin noch beim urschleim

              bahnuhrB 1 Antwort Letzte Antwort
              0
              • Nico AdlerN Nico Adler

                @bahnuhr wo muss ich das hin kopieren? Sorry aber ich bin noch beim urschleim

                bahnuhrB
                bahnuhrB
                bahnuhr
                Forum Testing Most Active
                schrieb am zuletzt editiert von
                #18

                @Nico-Adler sagte in Ical Termine als Telegramnachricht:

                @bahnuhr wo muss ich das hin kopieren? Sorry aber ich bin noch beim urschleim

                Das ist ein Script und muss bei Scripte als Javascript (nicht blockly) eingefügt und dann gestartet werden.


                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                Danke.
                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
                ScreenToGif :https://www.screentogif.com/downloads.html

                1 Antwort Letzte Antwort
                0
                • Nico AdlerN
                  Nico AdlerN
                  Nico Adler
                  schrieb am zuletzt editiert von
                  #19

                  habe ich gemacht. im log stehen jetzt auch die Termine. wie füge ich das jetzt in das blockly.
                  wenn ich das objekt vom javascript nehme, kommt nur der text true.

                  bahnuhrB 1 Antwort Letzte Antwort
                  0
                  • Nico AdlerN Nico Adler

                    habe ich gemacht. im log stehen jetzt auch die Termine. wie füge ich das jetzt in das blockly.
                    wenn ich das objekt vom javascript nehme, kommt nur der text true.

                    bahnuhrB
                    bahnuhrB
                    bahnuhr
                    Forum Testing Most Active
                    schrieb am zuletzt editiert von
                    #20

                    @Nico-Adler sagte in Ical Termine als Telegramnachricht:

                    habe ich gemacht. im log stehen jetzt auch die Termine. wie füge ich das jetzt in das blockly.
                    wenn ich das objekt vom javascript nehme, kommt nur der text true.

                    tut mir leid, blockly mach ich nicht.

                    Muss jemand anders mal helfen.


                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                    Danke.
                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
                    ScreenToGif :https://www.screentogif.com/downloads.html

                    Nico AdlerN 1 Antwort Letzte Antwort
                    0
                    • Nico AdlerN
                      Nico AdlerN
                      Nico Adler
                      schrieb am zuletzt editiert von
                      #21

                      OK. Ich danke dir trotzdem für deine Mühe

                      1 Antwort Letzte Antwort
                      0
                      • bahnuhrB bahnuhr

                        @Nico-Adler sagte in Ical Termine als Telegramnachricht:

                        habe ich gemacht. im log stehen jetzt auch die Termine. wie füge ich das jetzt in das blockly.
                        wenn ich das objekt vom javascript nehme, kommt nur der text true.

                        tut mir leid, blockly mach ich nicht.

                        Muss jemand anders mal helfen.

                        Nico AdlerN
                        Nico AdlerN
                        Nico Adler
                        schrieb am zuletzt editiert von
                        #22

                        @bahnuhr ich habe mir jetzt ein datenpunkt angelegt.

                        und dein script mit hilfe von google etwas geändert.
                        im Datenpunkt steht jetzt schon mal Klartext, aber ich glaube er macht nur den letzen eintrag da rein. wie kann ich das lösen?

                        hier das skript:

                        var arr = getState('ical.0.data.table').val;
                        
                        for (x=1;x<=5;x++) {
                            setState("ical.0.Termin", arr[x].date + " / " + arr[x].event);
                        }
                        
                        1 Antwort Letzte Antwort
                        0
                        • Nico AdlerN
                          Nico AdlerN
                          Nico Adler
                          schrieb am zuletzt editiert von
                          #23

                          Keiner eine Idee?

                          bahnuhrB 1 Antwort Letzte Antwort
                          0
                          • Nico AdlerN Nico Adler

                            Keiner eine Idee?

                            bahnuhrB
                            bahnuhrB
                            bahnuhr
                            Forum Testing Most Active
                            schrieb am zuletzt editiert von
                            #24

                            @Nico-Adler sagte in Ical Termine als Telegramnachricht:

                            Keiner eine Idee?

                            Na, weil du den Wert 5 x zuweist.
                            Also erst 1 in die Var.
                            dann 2 in die Var.
                            ....

                            Und zum Schluss steht halt die 5 drin.


                            Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                            Danke.
                            gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
                            ScreenToGif :https://www.screentogif.com/downloads.html

                            1 Antwort Letzte Antwort
                            0
                            • Nico AdlerN
                              Nico AdlerN
                              Nico Adler
                              schrieb am zuletzt editiert von
                              #25

                              Und wie kann ich das ändern? Also im Log bei deinem Skript kommen ja die nächsten 5 Termine einzeln aufgelistet. Kann ich die in einen Datenpunkt fortlaufend übertragen?

                              bahnuhrB 1 Antwort Letzte Antwort
                              0
                              • Nico AdlerN Nico Adler

                                Und wie kann ich das ändern? Also im Log bei deinem Skript kommen ja die nächsten 5 Termine einzeln aufgelistet. Kann ich die in einen Datenpunkt fortlaufend übertragen?

                                bahnuhrB
                                bahnuhrB
                                bahnuhr
                                Forum Testing Most Active
                                schrieb am zuletzt editiert von
                                #26

                                @Nico-Adler sagte in Ical Termine als Telegramnachricht:

                                Und wie kann ich das ändern? Also im Log bei deinem Skript kommen ja die nächsten 5 Termine einzeln aufgelistet. Kann ich die in einen Datenpunkt fortlaufend übertragen?

                                z.B. so:

                                // Variablen
                                    var arr = getState('ical.0.data.table').val;
                                    var vUser = "Dieter";
                                    var vText = "";
                                
                                // Script
                                    for (x=1;x<=5;x++) {
                                        log (arr[x].date + " / " + arr[x].event);
                                        vText += (arr[x].date + " / " + arr[x].event +"\n");
                                    }
                                
                                // telegram senden
                                        vText = "Die nächsten Termine:\n" + vText;
                                        log (vText);
                                        sendTo('telegram', { user: vUser, text: vText, parse_mode: 'HTML' });
                                

                                Hättest du aber auch selber drauf kommen können, oder ?


                                Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                Danke.
                                gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
                                ScreenToGif :https://www.screentogif.com/downloads.html

                                1 Antwort Letzte Antwort
                                1
                                • Nico AdlerN
                                  Nico AdlerN
                                  Nico Adler
                                  schrieb am zuletzt editiert von
                                  #27

                                  Vielen Dank das funktioniert.
                                  Ich wäre nicht selber drauf gekommen, weil ich leider davon keine Ahnung habe.

                                  1 Antwort Letzte Antwort
                                  0
                                  • bahnuhrB
                                    bahnuhrB
                                    bahnuhr
                                    Forum Testing Most Active
                                    schrieb am zuletzt editiert von
                                    #28

                                    So, habe jetzt auch die Tage eingebaut.
                                    Probleme gibt es beim Jahreswechsel. Damit konnte ich aber nun erst einmal leben.

                                    // Variablen
                                        var arr = getState('ical.0.data.table').val;
                                        var vUser = "Dieter";
                                        var AnzTage = 7;    // wie viele Tage sollen ausgelesen werden
                                        var vText = "";
                                    
                                    //aktuelles Datum
                                        aktJahr = new Date().getFullYear(); aktMon = new Date().getMonth()+1; aktTag = new Date().getDate();
                                        d3 = getDateObject(aktJahr+"-"+aktMon+"-"+aktTag+" 02:00:00");
                                    
                                    // Datum aus ical
                                        var arr = getState('ical.0.data.table').val;
                                        arr.forEach(myFunction);
                                        function myFunction(item, i) { 
                                            // date aus Array ermitteln
                                                aMon = (arr[i].date).substring(3, 5); aTag = (arr[i].date).substring(0, 2);
                                                d2 = getDateObject(aktJahr+"-"+aMon+"-"+aTag);
                                            // Tage ermitteln
                                                var t = Date.parse(d2) - Date.parse(d3);
                                                var days = Math.floor( t/(1000*60*60*24) );
                                            // wenn kleiner x Tage dann dazu fügen
                                                if (days <= AnzTage) {
                                                    log (aTag + "." + aMon + "." + " " + arr[i].event +"\n");
                                                    vText += (aTag + "." + aMon + "." + " " + arr[i].event +"\n");
                                                }
                                        }
                                    // telegram senden
                                        vText = "Die nächsten Termine:\n" + vText;
                                        log (vText);
                                        sendTo('telegram', { user: vUser, text: vText, parse_mode: 'HTML' });
                                    

                                    mfg
                                    Dieter


                                    Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                    Danke.
                                    gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
                                    ScreenToGif :https://www.screentogif.com/downloads.html

                                    L 1 Antwort Letzte Antwort
                                    0
                                    • bahnuhrB bahnuhr

                                      So, habe jetzt auch die Tage eingebaut.
                                      Probleme gibt es beim Jahreswechsel. Damit konnte ich aber nun erst einmal leben.

                                      // Variablen
                                          var arr = getState('ical.0.data.table').val;
                                          var vUser = "Dieter";
                                          var AnzTage = 7;    // wie viele Tage sollen ausgelesen werden
                                          var vText = "";
                                      
                                      //aktuelles Datum
                                          aktJahr = new Date().getFullYear(); aktMon = new Date().getMonth()+1; aktTag = new Date().getDate();
                                          d3 = getDateObject(aktJahr+"-"+aktMon+"-"+aktTag+" 02:00:00");
                                      
                                      // Datum aus ical
                                          var arr = getState('ical.0.data.table').val;
                                          arr.forEach(myFunction);
                                          function myFunction(item, i) { 
                                              // date aus Array ermitteln
                                                  aMon = (arr[i].date).substring(3, 5); aTag = (arr[i].date).substring(0, 2);
                                                  d2 = getDateObject(aktJahr+"-"+aMon+"-"+aTag);
                                              // Tage ermitteln
                                                  var t = Date.parse(d2) - Date.parse(d3);
                                                  var days = Math.floor( t/(1000*60*60*24) );
                                              // wenn kleiner x Tage dann dazu fügen
                                                  if (days <= AnzTage) {
                                                      log (aTag + "." + aMon + "." + " " + arr[i].event +"\n");
                                                      vText += (aTag + "." + aMon + "." + " " + arr[i].event +"\n");
                                                  }
                                          }
                                      // telegram senden
                                          vText = "Die nächsten Termine:\n" + vText;
                                          log (vText);
                                          sendTo('telegram', { user: vUser, text: vText, parse_mode: 'HTML' });
                                      

                                      mfg
                                      Dieter

                                      L
                                      L
                                      locito09
                                      schrieb am zuletzt editiert von
                                      #29

                                      @bahnuhr
                                      mit diesen Script werden die Termine nicht gesendet

                                      bahnuhrB 1 Antwort Letzte Antwort
                                      0
                                      • L locito09

                                        @bahnuhr
                                        mit diesen Script werden die Termine nicht gesendet

                                        bahnuhrB
                                        bahnuhrB
                                        bahnuhr
                                        Forum Testing Most Active
                                        schrieb am zuletzt editiert von
                                        #30

                                        @locito09 sagte in Ical Termine als Telegramnachricht:

                                        @bahnuhr
                                        mit diesen Script werden die Termine nicht gesendet

                                        Dann hast du etwas falsch gemacht.

                                        Das Script klappt einwandfrei.


                                        Wenn ich helfen konnte, dann Daumen hoch (Pfeil nach oben)!
                                        Danke.
                                        gute Forenbeiträge: https://forum.iobroker.net/topic/51555/hinweise-für-gute-forenbeiträge
                                        ScreenToGif :https://www.screentogif.com/downloads.html

                                        L 1 Antwort Letzte Antwort
                                        0
                                        • bahnuhrB bahnuhr

                                          @locito09 sagte in Ical Termine als Telegramnachricht:

                                          @bahnuhr
                                          mit diesen Script werden die Termine nicht gesendet

                                          Dann hast du etwas falsch gemacht.

                                          Das Script klappt einwandfrei.

                                          L
                                          L
                                          locito09
                                          schrieb am zuletzt editiert von locito09
                                          #31

                                          @bahnuhr
                                          was soll ich den falsch machen, Script habe ich hinzugefügt und nichts geändert da meine Instanz auch 0 ist.
                                          Der erste Script läuft super, nur beim 2. geht's es nicht.

                                          Muss vielleicht beim Ical Adapter was eingestellt werden?

                                          bahnuhrB 2 Antworten Letzte Antwort
                                          0

                                          Hey! Du scheinst an dieser Unterhaltung interessiert zu sein, hast aber noch kein Konto.

                                          Hast du es satt, bei jedem Besuch durch die gleichen Beiträge zu scrollen? Wenn du dich für ein Konto anmeldest, kommst du immer genau dorthin zurück, wo du zuvor warst, und kannst dich über neue Antworten benachrichtigen lassen (entweder per E-Mail oder Push-Benachrichtigung). Du kannst auch Lesezeichen speichern und Beiträge positiv bewerten, um anderen Community-Mitgliedern deine Wertschätzung zu zeigen.

                                          Mit deinem Input könnte dieser Beitrag noch besser werden 💗

                                          Registrieren Anmelden
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          450

                                          Online

                                          33.1k

                                          Benutzende

                                          83.8k

                                          Themen

                                          1.4m

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

                                          • Du hast noch kein Konto? Registrieren

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