Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. r0b1zZle

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    R
    • Profile
    • Following 1
    • Followers 0
    • Topics 2
    • Posts 74
    • Best 1
    • Groups 1

    r0b1zZle

    @r0b1zZle

    Starter

    4
    Reputation
    36
    Profile views
    74
    Posts
    0
    Followers
    1
    Following
    Joined Last Online

    r0b1zZle Follow
    Starter

    Best posts made by r0b1zZle

    • RE: [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

      Auch ich habe ein paar kleine Anpassungen gemacht, auf Basis der zuvor geposteten Scripte. Für mich war wichtig, dass es eben nicht automatisch abspielt und das jeweilige Cover des aktuellen Videos angezeigt wird, bevor ich es manuell abspielen lasse. Dazu ist das Script nun um eine Extraktion des Bildlinks erweitert (mit zusätzlichem Datenpunkt).

      Hier das Script:

      var logging = false;
      var jsInstance = 'javascript.'+ instance + '.';
       
      createState(jsInstance + 'tagesschau.tagesschau100SekundenVideo','',
      {
          name: 'Videolink zu Tagesschau in 100s',
          desc: 'geparster Link aus tagesschau.de',
          type: 'string'
      });
      
      createState(jsInstance + 'tagesschau.tagesschau100SekundenImg','',
      {
          name: 'Bildlink zu Tagesschau in 100s',
          desc: 'geparster Link aus tagesschau.de',
          type: 'string'
      });
        
      var idVIDEO = jsInstance + 'tagesschau.tagesschau100SekundenVideo';
      var idIMG = jsInstance + 'tagesschau.tagesschau100SekundenImg';
      var link = 'http://www.tagesschau.de/100sekunden/';
      
      function findeURL ()
      {   
          var request = require('request');
       
          try
          {
              request(link, function (error, response, body)
              {
                  if (!error && response.statusCode == 200)
                  {
                      var video_url;
                      var img_url;
      
                      var bodyTextVideo1 = '<meta name="twitter:player:stream" content="',
                          bodyTextVideo2 = '<meta name="twitter:player:stream:content_type"';
      
                      var bodyTextImg1 = '<meta name="twitter:image:src" content="',
                          bodyTextImg2 = '<meta name="twitter:card"';
      
                      var startVideo = body.search(bodyTextVideo1) + bodyTextVideo1.length;
                      var endVideo = body.search(bodyTextVideo2);
      
                      var startImg = body.search(bodyTextImg1) + bodyTextImg1.length;
                      var endImg = body.search(bodyTextImg2);
                      
                      if (logging) log('startVideo: ' + startVideo);
                      if (logging) log('endVideo: ' + endVideo);
      
                      if (logging) log('startImg: ' + startImg);
                      if (logging) log('endImg: ' + endImg);
      
                      var tmpVideo = ((startVideo != -1) && (endVideo != -1) ) ? body.slice(startVideo, endVideo) : 'Fehler beim Ausschneiden';
                      var tmpImg = ((startImg != -1) && (endImg != -1) ) ? body.slice(startImg, endImg) : 'Fehler beim Ausschneiden';
      
                      tmpVideo = tmpVideo.trim();
                      tmpImg = tmpImg.trim();
      
                      tmpVideo = tmpVideo.substr(0, tmpVideo.length - 10);
                      
                      video_url = tmpVideo + ".webl.h264.mp4";
                      img_url = tmpImg.substr(0, tmpImg.length - 3);
                     
                      setState(idVIDEO, video_url);
                      setState(idIMG, img_url);
                  }
                  else
                  {
                      log('Error in Tagesschau100Sekunden: ' + error, 'error'); 
                  }
              });
          }
          catch (e)
          {
              log('Error in Tagesschau100Sekunden: ' + e, 'error');
          }
        
      }
       
      schedule("*/5 * * * *", findeURL);
      
      findeURL();
      

      Der Cron-Job ist hier auf alle 5 Minuten eingestellt, damit er das Bild (falls ich das Video während des Abspielens gestoppt habe) wieder resetet.

      Das Ganze habe ich dann, wie viele vor mir auch, in ein HTML Widget mit folgendem Inhalt gepackt:

      <video src='{javascript.0.tagesschau.tagesschau100SekundenVideo}' width='600' height='338' poster='{javascript.0.tagesschau.tagesschau100SekundenImg}' onmouseover="dataset.over=true; controls=true" onmouseout="delete dataset.over;if(paused)controls=false;" onplay="controls=true" onpause="if(!dataset.over&&!dataset.focus)controls=false" onfocusin="dataset.focus=true; controls=true" onfocusout="delete dataset.focus;if(paused)controls=false;"><div>Das Video konnte nicht geladen werden!</div></video>
      

      Da ich die Controls hässlich finde, blende ich sie aus, solange ich das Video nicht abspielen lasse (mittels "Mouseover-Listener").

      Danke in diesem Sinne an all die Vorarbeit!

      posted in Praktische Anwendungen (Showcase)
      R
      r0b1zZle

    Latest posts made by r0b1zZle

    • RE: Alexa2 Routinen sind leer - Amazon Änderung!

      @deta Jau, habs gefunden: hier

      posted in ioBroker Allgemein
      R
      r0b1zZle
    • RE: Alexa2 Routinen sind leer - Amazon Änderung!

      Seit ca. 2 Stunden habe ich das Problem, dass die "Summary" nicht mehr aktualisiert wird. Hat jemand ein ähnliches Phänomen beobachten können? Es geht alles, außer die Summary.

      Der Debug-Log wird mir außerdem mit folgender Nachricht zugespammt:

      alexa2.0	2021-02-02 18:00:30.382	debug	(2822) Alexa-Remote: Sending Request with {"host":"alexa.amazon.de","path":"/api/activities?startTime=&size=5&offset=1","method":"GET","timeout":10000,"headers":{}}
      alexa2.0	2021-02-02 18:00:30.381	debug	(2822) Alexa-Remote: No authentication check needed (time elapsed 69164)
      alexa2.0	2021-02-02 18:00:30.180	debug	(2822) Alexa-Remote: Response: No/Invalid JSON
      

      Installiert ist die Version 3.6.0. Jemand eine Idee?

      posted in ioBroker Allgemein
      R
      r0b1zZle
    • RE: [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

      @toni61 hast du die beiden Code-Schnipsel oben mal ausgetauscht und getestet, ob es damit immer noch ist?

      posted in Praktische Anwendungen (Showcase)
      R
      r0b1zZle
    • RE: [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

      @toni61 said in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

      Hallo zusammen ich benutze den Fully Kisosk Browser und bekomme jetzt egal ob über iframe oder html Widget immer ein Autoplay, was ich nicht möchte. Hat das jemand auch bzw ohne Autoplay hinbekommen? Danke für eure Mühe.
      Gruß Toni

      Das habe ich gefunden in den Features vom Fully Kiosk Browser:

      FEATURES.
      Die meisten Features sind konfigurierbar für Ihren Usecase.
      ...
      Autoplay HTML5 video/audio

      Das heißt, es könnte im Fully Kiosk Browser eine Einstellung geben, mit der du das anpassen kannst. Falls nicht, kannst du folgenden Code in deinem HTML-Widget ersetzen / probieren (ungetestet):

      <video src='{javascript.0.tagesschau.tagesschau100SekundenVideo}' width='600' height='338' autoplay="false" autostart="false" poster='{javascript.0.tagesschau.tagesschau100SekundenImg}' onmouseover="dataset.over=true; controls=true" onmouseout="delete dataset.over;if(paused)controls=false;" onplay="controls=true" onpause="if(!dataset.over&&!dataset.focus)controls=false" onfocusin="dataset.focus=true; controls=true" onfocusout="delete dataset.focus;if(paused)controls=false;"><div>Das Video konnte nicht geladen werden!</div></video>
      

      oder

      <div>
      <video id="Movie" src='{javascript.0.tagesschau.tagesschau100SekundenVideo}' width='600' height='338' poster='{javascript.0.tagesschau.tagesschau100SekundenImg}' onmouseover="dataset.over=true; controls=true" onmouseout="delete dataset.over;if(paused)controls=false;" onplay="controls=true" onpause="if(!dataset.over&&!dataset.focus)controls=false" onfocusin="dataset.focus=true; controls=true" onfocusout="delete dataset.focus;if(paused)controls=false;"><div>Das Video konnte nicht geladen werden!</div></video>
      
      <script>
          var vid = document.getElementById("Movie");
          vid.autoplay = false;
          vid.load();
      </script>
      </div>
      
      posted in Praktische Anwendungen (Showcase)
      R
      r0b1zZle
    • RE: [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

      @bahnuhr said in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

      @eric sagte in [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?:

      <video src='{javascript.0.Tagesschau}' width='2000' height='1125' poster='video-standbild.jpg' autobuffer autoplay controls><div>Scha</div></video>

      Kannst du mir sagen, warum dieser Teil mit drin steht ?
      <div>Scha</div>

      Weiterhin würde mich auch interessieren ob man die Lautstärke mitgeben kann?

      mfg
      dieter

      Jau, hatte das so übernommen und vergessen anzupassen. Ich editiere es oben gleich. Danke für den Hinweis.

      posted in Praktische Anwendungen (Showcase)
      R
      r0b1zZle
    • RE: [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

      @stephan-schleich Wie @Glasfaser schon sagt, nutze das HTML Widget. Habe es in Chrome und Edge getestet, geht beides. Offenbar geht auch Firefox.

      posted in Praktische Anwendungen (Showcase)
      R
      r0b1zZle
    • RE: [gelöst]Frage: Wer hat die "Tagesschau in 100s" eingebunden?

      Auch ich habe ein paar kleine Anpassungen gemacht, auf Basis der zuvor geposteten Scripte. Für mich war wichtig, dass es eben nicht automatisch abspielt und das jeweilige Cover des aktuellen Videos angezeigt wird, bevor ich es manuell abspielen lasse. Dazu ist das Script nun um eine Extraktion des Bildlinks erweitert (mit zusätzlichem Datenpunkt).

      Hier das Script:

      var logging = false;
      var jsInstance = 'javascript.'+ instance + '.';
       
      createState(jsInstance + 'tagesschau.tagesschau100SekundenVideo','',
      {
          name: 'Videolink zu Tagesschau in 100s',
          desc: 'geparster Link aus tagesschau.de',
          type: 'string'
      });
      
      createState(jsInstance + 'tagesschau.tagesschau100SekundenImg','',
      {
          name: 'Bildlink zu Tagesschau in 100s',
          desc: 'geparster Link aus tagesschau.de',
          type: 'string'
      });
        
      var idVIDEO = jsInstance + 'tagesschau.tagesschau100SekundenVideo';
      var idIMG = jsInstance + 'tagesschau.tagesschau100SekundenImg';
      var link = 'http://www.tagesschau.de/100sekunden/';
      
      function findeURL ()
      {   
          var request = require('request');
       
          try
          {
              request(link, function (error, response, body)
              {
                  if (!error && response.statusCode == 200)
                  {
                      var video_url;
                      var img_url;
      
                      var bodyTextVideo1 = '<meta name="twitter:player:stream" content="',
                          bodyTextVideo2 = '<meta name="twitter:player:stream:content_type"';
      
                      var bodyTextImg1 = '<meta name="twitter:image:src" content="',
                          bodyTextImg2 = '<meta name="twitter:card"';
      
                      var startVideo = body.search(bodyTextVideo1) + bodyTextVideo1.length;
                      var endVideo = body.search(bodyTextVideo2);
      
                      var startImg = body.search(bodyTextImg1) + bodyTextImg1.length;
                      var endImg = body.search(bodyTextImg2);
                      
                      if (logging) log('startVideo: ' + startVideo);
                      if (logging) log('endVideo: ' + endVideo);
      
                      if (logging) log('startImg: ' + startImg);
                      if (logging) log('endImg: ' + endImg);
      
                      var tmpVideo = ((startVideo != -1) && (endVideo != -1) ) ? body.slice(startVideo, endVideo) : 'Fehler beim Ausschneiden';
                      var tmpImg = ((startImg != -1) && (endImg != -1) ) ? body.slice(startImg, endImg) : 'Fehler beim Ausschneiden';
      
                      tmpVideo = tmpVideo.trim();
                      tmpImg = tmpImg.trim();
      
                      tmpVideo = tmpVideo.substr(0, tmpVideo.length - 10);
                      
                      video_url = tmpVideo + ".webl.h264.mp4";
                      img_url = tmpImg.substr(0, tmpImg.length - 3);
                     
                      setState(idVIDEO, video_url);
                      setState(idIMG, img_url);
                  }
                  else
                  {
                      log('Error in Tagesschau100Sekunden: ' + error, 'error'); 
                  }
              });
          }
          catch (e)
          {
              log('Error in Tagesschau100Sekunden: ' + e, 'error');
          }
        
      }
       
      schedule("*/5 * * * *", findeURL);
      
      findeURL();
      

      Der Cron-Job ist hier auf alle 5 Minuten eingestellt, damit er das Bild (falls ich das Video während des Abspielens gestoppt habe) wieder resetet.

      Das Ganze habe ich dann, wie viele vor mir auch, in ein HTML Widget mit folgendem Inhalt gepackt:

      <video src='{javascript.0.tagesschau.tagesschau100SekundenVideo}' width='600' height='338' poster='{javascript.0.tagesschau.tagesschau100SekundenImg}' onmouseover="dataset.over=true; controls=true" onmouseout="delete dataset.over;if(paused)controls=false;" onplay="controls=true" onpause="if(!dataset.over&&!dataset.focus)controls=false" onfocusin="dataset.focus=true; controls=true" onfocusout="delete dataset.focus;if(paused)controls=false;"><div>Das Video konnte nicht geladen werden!</div></video>
      

      Da ich die Controls hässlich finde, blende ich sie aus, solange ich das Video nicht abspielen lasse (mittels "Mouseover-Listener").

      Danke in diesem Sinne an all die Vorarbeit!

      posted in Praktische Anwendungen (Showcase)
      R
      r0b1zZle
    • RE: [web-speedy] Teste deine Internetverbindung :)

      Hallo, gibt es schon Neuerungen hinsichtlich der Multi Connection Messung?

      posted in Tester
      R
      r0b1zZle
    • RE: deconz verbindung verloren

      @Jey-Cee Danke dir für die schnelle Hilfe. Ich melde mich die Tage noch einmal und sag Bescheid, wenn es endlich so funktioniert, wie es soll 🙂 Schöne Weihnachten wünsche ich bis dahin. Und nochmals vielen Dank für dein außerordentliches Engagement!

      posted in Error/Bug
      R
      r0b1zZle
    • RE: deconz verbindung verloren

      @Jey-Cee Es gibt die 2.05.84 gar nicht. Nur diese hier:

      deconz-2.05.80-qt5.deb                             15-Aug-2020 12:04             5846704
      deconz-2.05.82-qt5.deb                             19-Sep-2020 08:16             5864796
      deconz-2.05.83-qt5.deb                             26-Sep-2020 13:49             5840004
      deconz-2.05.85-qt5.deb                             15-Oct-2020 22:22             6135444
      deconz-2.05.86-qt5.deb  
      

      Ich teste mal die 85er. In deinem Post stand ja, dass das Problem erst ab der 86er besteht.

      posted in Error/Bug
      R
      r0b1zZle
    Community
    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
    The ioBroker Community 2014-2023
    logo