Weiter zum Inhalt
  • Home
  • Aktuell
  • Tags
  • 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. Ausgabe Name des Senders

NEWS

  • Der neue Monatsrückblick für Mai und Juni 2026 ist online!
    BluefoxB
    Bluefox
    8
    1
    753

  • wichtiges UPDATE für controller 7.2.2 im stable
    HomoranH
    Homoran
    10
    1
    3.4k

  • Neues YouTube-Video: Visualisierung im Devices-Adapter
    BluefoxB
    Bluefox
    16
    1
    5.5k

Ausgabe Name des Senders

Geplant Angeheftet Gesperrt Verschoben Blockly
33 Beiträge 6 Kommentatoren 784 Aufrufe 5 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.
  • icebearI Online
    icebearI Online
    icebear
    schrieb am zuletzt editiert von
    #17

    @matze55

    Ich versteh jetzt dein Problem nicht, du hast doch in den Objekten unter 'enigma2.0.enigma2' alles was du brauchst.

    picon.png

    1 Antwort Letzte Antwort
    0
    • matze55M Offline
      matze55M Offline
      matze55
      schrieb am zuletzt editiert von matze55
      #18

      ja ich weiss habe den Code nur ein wenig abgeändert. jetzt zeigt auch alles an. ich baue mir da eine HTML Tabelle auf, deshalb fragte ich.

      Und danke nochmal

      Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
      Tapo C210 Cam
      WLED Steuerung über lcdwiki

      icebearI 1 Antwort Letzte Antwort
      0
      • matze55M matze55

        ja ich weiss habe den Code nur ein wenig abgeändert. jetzt zeigt auch alles an. ich baue mir da eine HTML Tabelle auf, deshalb fragte ich.

        Und danke nochmal

        icebearI Online
        icebearI Online
        icebear
        schrieb am zuletzt editiert von
        #19

        @matze55 sagte:

        ...... ich baue mir da eine HTML Tabelle auf, deshalb fragte ich.

        Meist du sowas hier?

        remote_1.png

        1 Antwort Letzte Antwort
        0
        • matze55M Offline
          matze55M Offline
          matze55
          schrieb am zuletzt editiert von
          #20

          ja. sieht gut aus

          Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
          Tapo C210 Cam
          WLED Steuerung über lcdwiki

          1 Antwort Letzte Antwort
          0
          • icebearI Online
            icebearI Online
            icebear
            schrieb am zuletzt editiert von
            #21

            @matze55

            Das ganze läuft bei mir auf einem Tablet und ist sowas wie eine Universal Fernbedienung.
            Ich war es leid 4 oder 5 Fernbedienungen auf dem Tisch liegen zuhaben.
            Ich steuer damit auch mein FireTv und darüber dann noch Netflix usw.

            remote_2.png remote_3.png remote_4.png

            1 Antwort Letzte Antwort
            0
            • matze55M Offline
              matze55M Offline
              matze55
              schrieb am zuletzt editiert von
              #22

              Ich stehe doch noch ganz am anfang und bin kein Profi was die Sachen hier betrifft. Man bastelt eben hald mal wieder rum. Aber deins sieht gut aus und war bestimmt viel Arbeit.

              Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
              Tapo C210 Cam
              WLED Steuerung über lcdwiki

              1 Antwort Letzte Antwort
              0
              • matze55M Offline
                matze55M Offline
                matze55
                schrieb zuletzt editiert von
                #23

                Ich habe mein tun erweitert und ich habe dank @icebear viel gegoggelt und habe per Ki ein Code mir brutzeln lassen der in der VIS nicht anzeigt. ich habe mir es es per Html ausgeben lassen und auch per Json und zwar betrifft es die EPG Daten aus der Enigma Box.

                Da meine Box Xml ausspuckt per Obenwebif kann man sie ja per Api abrufen. Ich habe httpget Fehler gehabt und ect.
                Jetzt zu dem Problem. Die Daten werden sauber gespeicht und auch in den Datenpunkten die in Javascript generiet werden aus der Api sauber gespeichert...aber Anzeige in der VIS nix.
                Sogar ist im dem Code sind die Tags für CSS intergriert.

                Kann ich den Code Posten da ja das thema abschweift?

                Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                Tapo C210 Cam
                WLED Steuerung über lcdwiki

                OliverIOO 1 Antwort Letzte Antwort
                0
                • matze55M matze55

                  Ich habe mein tun erweitert und ich habe dank @icebear viel gegoggelt und habe per Ki ein Code mir brutzeln lassen der in der VIS nicht anzeigt. ich habe mir es es per Html ausgeben lassen und auch per Json und zwar betrifft es die EPG Daten aus der Enigma Box.

                  Da meine Box Xml ausspuckt per Obenwebif kann man sie ja per Api abrufen. Ich habe httpget Fehler gehabt und ect.
                  Jetzt zu dem Problem. Die Daten werden sauber gespeicht und auch in den Datenpunkten die in Javascript generiet werden aus der Api sauber gespeichert...aber Anzeige in der VIS nix.
                  Sogar ist im dem Code sind die Tags für CSS intergriert.

                  Kann ich den Code Posten da ja das thema abschweift?

                  OliverIOO Offline
                  OliverIOO Offline
                  OliverIO
                  schrieb zuletzt editiert von
                  #24

                  @matze55

                  mach

                  Meine Adapter und Widgets
                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                  Links im Profil

                  1 Antwort Letzte Antwort
                  0
                  • matze55M Offline
                    matze55M Offline
                    matze55
                    schrieb zuletzt editiert von matze55
                    #25

                    Code:

                    // --- KONFIGURATION GIGABLUE ENIGMA2 BOX---
                    const BOX_IP = '192.XX.XXX.XX'; // IP deiner Enigma2 Box
                    const TARGET_JSON_DP = '0_userdata.0.enigma2.epg_json'; 
                    const TARGET_HTML_DP = '0_userdata.0.enigma2.epg_html'; 
                    // ---------------------
                    
                    const axios = require('axios');
                    
                    // Datenpunkte erstellen, falls sie fehlen
                    await createStateAsync(TARGET_JSON_DP, { name: 'Enigma2 EPG JSON', type: 'string', role: 'json', read: true, write: false });
                    await createStateAsync(TARGET_HTML_DP, { name: 'Enigma2 EPG HTML für VIS', type: 'string', role: 'html', read: true, write: false });
                    
                    // Holt vollautomatisch die exakte ID des ersten TV-Bouquets
                    async function fetchValidBouquetRef() {
                        try {
                            const response = await axios.get(`http://${BOX_IP}/api/getservices`, { timeout: 3000 });
                            
                            if (response && response.data && response.data.services) {
                                const services = response.data.services;
                                
                                // Fall 1: API liefert ein direktes Array
                                if (Array.isArray(services) && services.length > 0) {
                                    return services[0].servicereference;
                                } 
                                // Fall 2: API liefert ein verschachteltes Objekt
                                if (services.servicereference) {
                                    return services.servicereference;
                                }
                            }
                        } catch (e) {
                            log(`Enigma2: Fehler beim automatischen Bouquet-Abruf: ${e.message}`, 'warn');
                        }
                        return null;
                    }
                    
                    function buildHtmlTable(epgData) {
                        if (!epgData || !epgData.events || !Array.isArray(epgData.events) || epgData.events.length === 0) {
                            return '<p style="color: #ff5252; padding: 10px;">Keine EPG-Daten empfangen. Bitte Bouquet-Einstellung prüfen.</p>';
                        }
                    
                        let html = `
                        <style>
                            .e2-epg-table { width: 100%; border-collapse: collapse; font-family: sans-serif; font-size: 14px; color: #ffffff; }
                            .e2-epg-table tr { border-bottom: 1px solid #444444; }
                            .e2-epg-table tr:nth-child(even) { background-color: rgba(32,32,32,0.5); }
                            .e2-epg-table td { padding: 10px 8px; vertical-align: top; }
                            .e2-ch-name { font-weight: bold; color: #3498db; width: 33%; }
                            .e2-time { color: #f1c40f; font-weight: bold; width: 33%; white-space: nowrap; }
                            .e2-title { font-weight: bold; color: #ffffff; margin-bottom: 3px; }
                            .e2-desc { color: #aaaaaa; font-size: 12px; line-height: 1.3; }
                        </style>
                        <table class="e2-epg-table">
                        `;
                    
                        epgData.events.forEach(event => {
                            if (!event.sname || !event.event_title) return;
                    
                            const startTime = new Date(event.event_start * 1000);
                            const timeString = startTime.toLocaleTimeString('de-DE', { hour: '2-digit', minute: '2-digit' }) + ' Uhr';
                    
                            html += `
                            <tr>
                                <td class="e2-ch-name">${event.sname}</td>
                                <td class="e2-time">${timeString}</td>
                                <td>
                                    <div class="e2-title">${event.event_title}</div>
                                    <div class="e2-desc">${event.event_description || ''}</div>
                                </td>
                            </tr>
                            `;
                        });
                    
                        html += '</table>';
                        return html;
                    }
                    
                    async function updateEPG() {
                        try {
                            // 1. Automatisch die korrekte, vom OpenWebif akzeptierte ID ermitteln
                            const verifiedBref = await fetchValidBouquetRef();
                            
                            if (!verifiedBref) {
                                log('Enigma2 EPG abgebrochen: Es konnte keine gültige Bouquet-Referenz von der Box gelesen werden.', 'error');
                                return;
                            }
                    
                            // 2. Abfrage mit dem vom OpenWebif exakt geforderten Parameter 'bRef'
                            const url = `http://${BOX_IP}/api/epgnow?bRef=${encodeURIComponent(verifiedBref)}`;
                            const response = await axios.get(url, { timeout: 5000 });
                            
                            if (response && response.status === 200 && response.data) {
                                const data = response.data;
                    
                                if (data.result === false) {
                                    log(`Enigma2 meldet Fehler im Payload: ${data.message || 'Unbekannt'}`, 'warn');
                                    return;
                                }
                    
                                // 1. JSON speichern
                                await setStateAsync(TARGET_JSON_DP, JSON.stringify(data), true);
                                
                                // 2. HTML generieren und speichern
                                const htmlTable = buildHtmlTable(data);
                                await setStateAsync(TARGET_HTML_DP, htmlTable, true);
                                log('Enigma2 EPG erfolgreich aktualisiert.', 'info');
                                
                            } else {
                                const status = response ? response.status : 'Keine Antwort';
                                log(`Enigma2 HTTP-Fehler: Status ${status}`, 'warn');
                            }
                        } catch (error) {
                            log(`Enigma2 EPG-Abruf fehlgeschlagen: ${error.message}`, 'warn');
                        }
                    }
                    
                    // Trigger: Alle 15 Minuten
                    schedule('*/15 * * * *', updateEPG);
                    
                    // Sofortstart beim Speichern
                    updateEPG();
                    

                    Anzeige in VIS nix oder habe ich ein CSS Prob

                    Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                    Tapo C210 Cam
                    WLED Steuerung über lcdwiki

                    OliverIOO 1 Antwort Letzte Antwort
                    0
                    • matze55M matze55

                      Code:

                      // --- KONFIGURATION GIGABLUE ENIGMA2 BOX---
                      const BOX_IP = '192.XX.XXX.XX'; // IP deiner Enigma2 Box
                      const TARGET_JSON_DP = '0_userdata.0.enigma2.epg_json'; 
                      const TARGET_HTML_DP = '0_userdata.0.enigma2.epg_html'; 
                      // ---------------------
                      
                      const axios = require('axios');
                      
                      // Datenpunkte erstellen, falls sie fehlen
                      await createStateAsync(TARGET_JSON_DP, { name: 'Enigma2 EPG JSON', type: 'string', role: 'json', read: true, write: false });
                      await createStateAsync(TARGET_HTML_DP, { name: 'Enigma2 EPG HTML für VIS', type: 'string', role: 'html', read: true, write: false });
                      
                      // Holt vollautomatisch die exakte ID des ersten TV-Bouquets
                      async function fetchValidBouquetRef() {
                          try {
                              const response = await axios.get(`http://${BOX_IP}/api/getservices`, { timeout: 3000 });
                              
                              if (response && response.data && response.data.services) {
                                  const services = response.data.services;
                                  
                                  // Fall 1: API liefert ein direktes Array
                                  if (Array.isArray(services) && services.length > 0) {
                                      return services[0].servicereference;
                                  } 
                                  // Fall 2: API liefert ein verschachteltes Objekt
                                  if (services.servicereference) {
                                      return services.servicereference;
                                  }
                              }
                          } catch (e) {
                              log(`Enigma2: Fehler beim automatischen Bouquet-Abruf: ${e.message}`, 'warn');
                          }
                          return null;
                      }
                      
                      function buildHtmlTable(epgData) {
                          if (!epgData || !epgData.events || !Array.isArray(epgData.events) || epgData.events.length === 0) {
                              return '<p style="color: #ff5252; padding: 10px;">Keine EPG-Daten empfangen. Bitte Bouquet-Einstellung prüfen.</p>';
                          }
                      
                          let html = `
                          <style>
                              .e2-epg-table { width: 100%; border-collapse: collapse; font-family: sans-serif; font-size: 14px; color: #ffffff; }
                              .e2-epg-table tr { border-bottom: 1px solid #444444; }
                              .e2-epg-table tr:nth-child(even) { background-color: rgba(32,32,32,0.5); }
                              .e2-epg-table td { padding: 10px 8px; vertical-align: top; }
                              .e2-ch-name { font-weight: bold; color: #3498db; width: 33%; }
                              .e2-time { color: #f1c40f; font-weight: bold; width: 33%; white-space: nowrap; }
                              .e2-title { font-weight: bold; color: #ffffff; margin-bottom: 3px; }
                              .e2-desc { color: #aaaaaa; font-size: 12px; line-height: 1.3; }
                          </style>
                          <table class="e2-epg-table">
                          `;
                      
                          epgData.events.forEach(event => {
                              if (!event.sname || !event.event_title) return;
                      
                              const startTime = new Date(event.event_start * 1000);
                              const timeString = startTime.toLocaleTimeString('de-DE', { hour: '2-digit', minute: '2-digit' }) + ' Uhr';
                      
                              html += `
                              <tr>
                                  <td class="e2-ch-name">${event.sname}</td>
                                  <td class="e2-time">${timeString}</td>
                                  <td>
                                      <div class="e2-title">${event.event_title}</div>
                                      <div class="e2-desc">${event.event_description || ''}</div>
                                  </td>
                              </tr>
                              `;
                          });
                      
                          html += '</table>';
                          return html;
                      }
                      
                      async function updateEPG() {
                          try {
                              // 1. Automatisch die korrekte, vom OpenWebif akzeptierte ID ermitteln
                              const verifiedBref = await fetchValidBouquetRef();
                              
                              if (!verifiedBref) {
                                  log('Enigma2 EPG abgebrochen: Es konnte keine gültige Bouquet-Referenz von der Box gelesen werden.', 'error');
                                  return;
                              }
                      
                              // 2. Abfrage mit dem vom OpenWebif exakt geforderten Parameter 'bRef'
                              const url = `http://${BOX_IP}/api/epgnow?bRef=${encodeURIComponent(verifiedBref)}`;
                              const response = await axios.get(url, { timeout: 5000 });
                              
                              if (response && response.status === 200 && response.data) {
                                  const data = response.data;
                      
                                  if (data.result === false) {
                                      log(`Enigma2 meldet Fehler im Payload: ${data.message || 'Unbekannt'}`, 'warn');
                                      return;
                                  }
                      
                                  // 1. JSON speichern
                                  await setStateAsync(TARGET_JSON_DP, JSON.stringify(data), true);
                                  
                                  // 2. HTML generieren und speichern
                                  const htmlTable = buildHtmlTable(data);
                                  await setStateAsync(TARGET_HTML_DP, htmlTable, true);
                                  log('Enigma2 EPG erfolgreich aktualisiert.', 'info');
                                  
                              } else {
                                  const status = response ? response.status : 'Keine Antwort';
                                  log(`Enigma2 HTTP-Fehler: Status ${status}`, 'warn');
                              }
                          } catch (error) {
                              log(`Enigma2 EPG-Abruf fehlgeschlagen: ${error.message}`, 'warn');
                          }
                      }
                      
                      // Trigger: Alle 15 Minuten
                      schedule('*/15 * * * *', updateEPG);
                      
                      // Sofortstart beim Speichern
                      updateEPG();
                      

                      Anzeige in VIS nix oder habe ich ein CSS Prob

                      OliverIOO Offline
                      OliverIOO Offline
                      OliverIO
                      schrieb zuletzt editiert von OliverIO
                      #26

                      @matze55

                      also datenpunkt mit dem html wird geschrieben?
                      sende mal den inhalt des datenpunkts
                      und welches widget verwendest du? html widget?
                      davon bitte auch einen export des widgets.

                      vis1 oder vis2?

                      Meine Adapter und Widgets
                      TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                      Links im Profil

                      1 Antwort Letzte Antwort
                      0
                      • matze55M Offline
                        matze55M Offline
                        matze55
                        schrieb zuletzt editiert von
                        #27

                        Ja der Datenpunkt wird geschrieben in der Html.
                        HTML basic nehme ich.
                        VIS 1 verwende ich
                        widget :

                        [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{0_userdata.0.enigma2.epg_json}"},"style":{"left":"73px","top":"53px","width":"1039px","height":"385px","border-width":"1px","border-style":"solid","border-color":"#ffffff","border-radius":"8px"},"widgetSet":"basic"}]
                        

                        ich haoffe habe es richtig gemacht mit dem export

                        Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                        Tapo C210 Cam
                        WLED Steuerung über lcdwiki

                        OliverIOO 1 Antwort Letzte Antwort
                        0
                        • matze55M matze55

                          Ja der Datenpunkt wird geschrieben in der Html.
                          HTML basic nehme ich.
                          VIS 1 verwende ich
                          widget :

                          [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{0_userdata.0.enigma2.epg_json}"},"style":{"left":"73px","top":"53px","width":"1039px","height":"385px","border-width":"1px","border-style":"solid","border-color":"#ffffff","border-radius":"8px"},"widgetSet":"basic"}]
                          

                          ich haoffe habe es richtig gemacht mit dem export

                          OliverIOO Offline
                          OliverIOO Offline
                          OliverIO
                          schrieb zuletzt editiert von OliverIO
                          #28

                          @matze55

                          inhalt des datenpunkts mit dem html noch

                          sehe aber schon was:
                          941d1095-bc22-4328-9e21-e60f9fd654be-image.jpeg

                          willst du nicht html anzeigen?

                          Meine Adapter und Widgets
                          TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                          Links im Profil

                          1 Antwort Letzte Antwort
                          0
                          • matze55M Offline
                            matze55M Offline
                            matze55
                            schrieb zuletzt editiert von
                            #29
                            [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{0_userdata.0.enigma2.epg_html}"},"style":{"left":"73px","top":"53px","width":"1039px","height":"385px","border-width":"1px","border-style":"solid","border-color":"#ffffff","border-radius":"8px"},"widgetSet":"basic"}]
                            

                            Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                            Tapo C210 Cam
                            WLED Steuerung über lcdwiki

                            OliverIOO 1 Antwort Letzte Antwort
                            0
                            • matze55M matze55
                              [{"tpl":"tplHtml","data":{"g_fixed":false,"g_visibility":false,"g_css_font_text":false,"g_css_background":false,"g_css_shadow_padding":false,"g_css_border":true,"g_gestures":false,"g_signals":false,"g_last_change":false,"visibility-cond":"==","visibility-val":1,"visibility-groups-action":"hide","refreshInterval":"0","signals-cond-0":"==","signals-val-0":true,"signals-icon-0":"/vis/signals/lowbattery.png","signals-icon-size-0":0,"signals-blink-0":false,"signals-horz-0":0,"signals-vert-0":0,"signals-hide-edit-0":false,"signals-cond-1":"==","signals-val-1":true,"signals-icon-1":"/vis/signals/lowbattery.png","signals-icon-size-1":0,"signals-blink-1":false,"signals-horz-1":0,"signals-vert-1":0,"signals-hide-edit-1":false,"signals-cond-2":"==","signals-val-2":true,"signals-icon-2":"/vis/signals/lowbattery.png","signals-icon-size-2":0,"signals-blink-2":false,"signals-horz-2":0,"signals-vert-2":0,"signals-hide-edit-2":false,"lc-type":"last-change","lc-is-interval":true,"lc-is-moment":false,"lc-format":"","lc-position-vert":"top","lc-position-horz":"right","lc-offset-vert":0,"lc-offset-horz":0,"lc-font-size":"12px","lc-font-family":"","lc-font-style":"","lc-bkg-color":"","lc-color":"","lc-border-width":"0","lc-border-style":"","lc-border-color":"","lc-border-radius":10,"lc-zindex":0,"html":"{0_userdata.0.enigma2.epg_html}"},"style":{"left":"73px","top":"53px","width":"1039px","height":"385px","border-width":"1px","border-style":"solid","border-color":"#ffffff","border-radius":"8px"},"widgetSet":"basic"}]
                              
                              OliverIOO Offline
                              OliverIOO Offline
                              OliverIO
                              schrieb zuletzt editiert von OliverIO
                              #30

                              @matze55

                              das ist wieder der widget export
                              den inhalt von
                              0_userdata.0.enigma2.epg_html

                              Meine Adapter und Widgets
                              TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                              Links im Profil

                              1 Antwort Letzte Antwort
                              0
                              • matze55M Offline
                                matze55M Offline
                                matze55
                                schrieb zuletzt editiert von
                                #31
                                Wert:
                                <style> .e2-epg-table { width: 100%; border-collapse: collapse; font-family: sans-serif; font-size: 14px; color: #ffffff; } .e2-epg-table tr { border-bottom: 1px solid #444444; } .e2-epg-table tr:nth-child(even) { background-color: rgba(32,32,32,0.5); } .e2-epg-table td { padding: 10px 8px; vertical-align: top; } .e2-ch-name { font-weight: bold; color: #3498db; width: 33%; } .e2-time { color: #f1c40f; font-weight: bold; width: 33%; white-space: nowrap; } .e2-title { font-weight: bold; color: #ffffff; margin-bottom: 3px; } .e2-desc { color: #aaaaaa; font-size: 12px; line-height: 1.3; } </style> <table class="e2-epg-table"> </table>
                                

                                So richtig?

                                Homematic CCU3,-Synology NAS 4TB,- 2 Sonos One,- Gigabyte N4500 8GB DDR4 2TB
                                Tapo C210 Cam
                                WLED Steuerung über lcdwiki

                                OliverIOO 2 Antworten Letzte Antwort
                                0
                                • matze55M matze55
                                  Wert:
                                  <style> .e2-epg-table { width: 100%; border-collapse: collapse; font-family: sans-serif; font-size: 14px; color: #ffffff; } .e2-epg-table tr { border-bottom: 1px solid #444444; } .e2-epg-table tr:nth-child(even) { background-color: rgba(32,32,32,0.5); } .e2-epg-table td { padding: 10px 8px; vertical-align: top; } .e2-ch-name { font-weight: bold; color: #3498db; width: 33%; } .e2-time { color: #f1c40f; font-weight: bold; width: 33%; white-space: nowrap; } .e2-title { font-weight: bold; color: #ffffff; margin-bottom: 3px; } .e2-desc { color: #aaaaaa; font-size: 12px; line-height: 1.3; } </style> <table class="e2-epg-table"> </table>
                                  

                                  So richtig?

                                  OliverIOO Offline
                                  OliverIOO Offline
                                  OliverIO
                                  schrieb zuletzt editiert von OliverIO
                                  #32

                                  @matze55 sagte:

                                  das html element ist leer

                                  <table class="e2-epg-table"> </table>
                                  

                                  das bedeutet das die folgende zeile nicht ausgeführt wird

                                  epgData.events.forEach(event => {

                                  weil epgData.events keine daten enthält oder kein array ist
                                  mach mal im javascript editor davor ein

                                  console.log(epgData.events);

                                  im log, also im unteren bereich sollten dann daten oder nix ausgegeben werden.

                                  alternativ auch
                                  console.log(epgData);

                                  Meine Adapter und Widgets
                                  TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                  Links im Profil

                                  1 Antwort Letzte Antwort
                                  0
                                  • matze55M matze55
                                    Wert:
                                    <style> .e2-epg-table { width: 100%; border-collapse: collapse; font-family: sans-serif; font-size: 14px; color: #ffffff; } .e2-epg-table tr { border-bottom: 1px solid #444444; } .e2-epg-table tr:nth-child(even) { background-color: rgba(32,32,32,0.5); } .e2-epg-table td { padding: 10px 8px; vertical-align: top; } .e2-ch-name { font-weight: bold; color: #3498db; width: 33%; } .e2-time { color: #f1c40f; font-weight: bold; width: 33%; white-space: nowrap; } .e2-title { font-weight: bold; color: #ffffff; margin-bottom: 3px; } .e2-desc { color: #aaaaaa; font-size: 12px; line-height: 1.3; } </style> <table class="e2-epg-table"> </table>
                                    

                                    So richtig?

                                    OliverIOO Offline
                                    OliverIOO Offline
                                    OliverIO
                                    schrieb zuletzt editiert von OliverIO
                                    #33

                                    @matze55

                                    der fehler liegt wahrscheinlich an der folgenden zeile

                                    if (!event.sname || !event.event_title) return;

                                    prüfe mal ob die attribute im event objekt tatsächlich so heißen.
                                    evtl heißt

                                    event.event_title

                                    doch nur

                                    event.title
                                    ?

                                    das selbe dann auch mit
                                    event.event_start
                                    event.event_description

                                    Meine Adapter und Widgets
                                    TVProgram, SqueezeboxRPC, OpenLiga, RSSFeed, MyTime,, pi-hole2, vis-json-template, skiinfo, vis-mapwidgets, vis-2-widgets-rssfeed
                                    Links im Profil

                                    1 Antwort 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

                                    300

                                    Online

                                    33.0k

                                    Benutzer

                                    83.5k

                                    Themen

                                    1.3m

                                    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
                                    • Tags
                                    • Ungelesen 0
                                    • Kategorien
                                    • Unreplied
                                    • Beliebt
                                    • GitHub
                                    • Docu
                                    • Hilfe