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
    741

  • 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.4k

Ausgabe Name des Senders

Geplant Angeheftet Gesperrt Verschoben Blockly
22 Beiträge 5 Kommentatoren 729 Aufrufe 4 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.
  • matze55M matze55

    Hallo liebe Community, da ich lange nicht hier war und auch nichts am iobroker machte, wollte ich mal wissen ob es realiesierbar ist.

    Ich habe den Adapter e2-openwebif.0 installiert und auch die Daten meiner Gigablue UHD Trio 4K Pro eingetragen. Zeigt auch alles grün an, also arbeitet der Adapter sauber.
    In den Objekten zeigen auch die Tuner daten alles an. Nund wollte ich per Blocklyscript es so bewerkstelligen das Alexa bei der Sprachausgabe den Sendernamen ansagt...

    Danke erst mal im vorraus..lg

    Thomas BraunT Online
    Thomas BraunT Online
    Thomas Braun
    Most Active
    schrieb am zuletzt editiert von
    #7

    @matze55 sagte:

    da ich lange nicht hier war und auch nichts am iobroker machte

    Auf welchem Stand bist du denn dann da unterwegs?
    Guck mal per

    iob diag
    

    wie es da ausschaut.

    Linux-Werkzeugkasten:
    https://forum.iobroker.net/topic/42952/der-kleine-iobroker-linux-werkzeugkasten
    NodeJS Fixer Skript:
    https://forum.iobroker.net/topic/68035/iob-node-fix-skript
    iob_diag: curl -sLf -o diag.sh https://iobroker.net/diag.sh && bash diag.sh

    1 Antwort Letzte Antwort
    0
    • matze55M matze55

      Ich möchte ja kein eigenen Text. Ich würde den Datenpunkt gerne im Baustein Text das hier ausgeben,,,,,,enigma2.0.enigma2.CHANNEL,,,,,,

      Habe den Anderen Adapter deinstalliert und Enigma2 genommen funktioniert wunderbar.

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

      @matze55 sagte:

      Ich möchte ja kein eigenen Text. Ich würde den Datenpunkt gerne im Baustein Text das hier ausgeben,,,,,,enigma2.0.enigma2.CHANNEL,,,,,,

      Probiers mal hiermit, leg ein neues TYPE SCRIPT ( kein JavaScript) an und kopier das Script rein.
      Dann mußt du nur noch ganz oben die .xxxxxx mit dem DP von deinem Echo ersetzten.

      TYPE SCRIPT

      // ID-Definitionen (Bitte die Alexa-ID an deinen Echo anpassen!)
      const channelDP: string = 'enigma2.0.enigma2.CHANNEL';
      const alexaSpeakDP: string = 'alexa2.0.Echo-Devices.G0XXXXXXXXXXXXXX.Commands.speak'; // <-- Hier deine Echo-ID eintragen
      
      // Trigger bei Änderung des Sendernamens
      on({ id: channelDP, change: 'ne' }, (obj) => {
          const channelName: string = obj.state.val;
      
          // Falls der Datenpunkt mal leer ist oder der Receiver ausgeschaltet wird
          if (!channelName || channelName === 'off' || channelName === '') {
              return; 
          }
      
          // Der Text, den Alexa sprechen soll
          const speechText: string = `Du guckst jetzt ${channelName}`;
      
          // Befehl an Alexa senden (ack: false, damit der Adapter den Befehl ausführt)
          setState(alexaSpeakDP, speechText, false);
      
          log(`Alexa-Ansage ausgelöst: "${speechText}"`, 'info');
      });
      
      1 Antwort Letzte Antwort
      0
      • matze55M Offline
        matze55M Offline
        matze55
        schrieb am zuletzt editiert von
        #9

        Super...das hat auf anhieb mit Anpassung der Datenpunkte geklappt. Ein dickes Danke an dich.

        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 am zuletzt editiert von
          #10

          Kann man das auch noch erweitern auf ,,,enigma2.0.enigma2.PROGRAMM,,,

          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

            Kann man das auch noch erweitern auf ,,,enigma2.0.enigma2.PROGRAMM,,,

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

            @matze55 sagte:

            Kann man das auch noch erweitern auf ,,,enigma2.0.enigma2.PROGRAMM,,,

            Probier es hiermit:

            // ID-Definitionen (Bitte die Alexa-ID an deinen Echo anpassen!)
            const channelDP: string = 'enigma2.0.enigma2.CHANNEL';
            const programDP: string = 'enigma2.0.enigma2.PROGRAMM';
            const alexaSpeakDP: string = 'alexa2.0.Echo-Devices.G0XXXXXXXXXXXXXX.Commands.speak'; // <-- Hier deine Echo-ID eintragen
            
            // Trigger bei Änderung des Sendernamens
            on({ id: channelDP, change: 'ne' }, (obj) => {
                const channelName: string = obj.state.val;
            
                // Falls der Datenpunkt leer ist oder der Receiver ausgeschaltet wird
                if (!channelName || channelName === 'off' || channelName === '') {
                    return; 
                }
            
                // Kurze Verzögerung abwarten, damit auch der PROGRAMM-Datenpunkt den neuen Wert hat
                setTimeout(() => {
                    // Aktuelle Sendung auslesen
                    const programState = getState(programDP);
                    const programName: string = programState && programState.val ? programState.val.toString() : '';
            
                    let speechText: string = `Du guckst jetzt ${channelName}.`;
            
                    // Wenn ein Sendungstitel vorhanden ist, diesen an den Text anhängen
                    if (programName && programName !== 'off' && programName !== '') {
                        speechText += ` Es läuft gerade: ${programName}`;
                    }
            
                    // Befehl an Alexa senden (ack: false)
                    setState(alexaSpeakDP, speechText, false);
            
                    log(`Alexa-Ansage ausgelöst: "${speechText}"`, 'info');
                }, 500); // 500 Millisekunden Verzögerung
            });
            

            Da beim umschalten eine Verzögerung bei der Aktualisierung von 'Channel' und 'Programm' auftreten kann, ist eine Zeitverzögerung von 500ms eingebaut, wenn die nicht ausreicht, mußt du unten den Wert von 500 auf z.B. 700 erhöhen.

            Wenn keine Programminformationen vorhanden sind sagt Alexa nur den Sendernamen an.

            Deaktivier das andere Script bevor du das neue startest! Brauchst du ja noch nich löschen, falls mit dem neuen was nicht funktioniert. Wenn alles funktioniert, kannst du das andere Script löschen.

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

              Funktioniert perfekt. Danke für deine Unterstützung.

              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
                #13

                Der Code klappte wunderbar jetzt versuche ich das mit dem Picon zu bewerkstelligen.
                Momentaner Stand:

                // Konfiguration: Passe die IP und ggf. die Instanz deines enigma2-Adapters an
                const boxIp = "XXX.XXX.XXX.XX"; // IP-Adresse deines Enigma2-Receivers
                const boxPort = "80";           // Port des OpenWebIF (Standard ist 80)
                const e2Instance = "enigma2.0.enigma2"; // Name deiner Enigma2-Instanz im ioBroker enigma2.0.enigma2.CHANNEL_SERVICEREFERENCE
                
                // Datenpunkt für die generierte URL definieren
                const targetState = "0_userdata.0.gigablue.picon_url";
                createState(targetState, "", {
                    name: "Aktuelle Picon URL",
                    type: "string",
                    role: "text"
                });
                
                // Trigger auf die Servicereferenz des Enigma2-Adapters setzen
                on({id: `${e2Instance}.CHANNEL_SERVICEREFERENCE`, change: "ne"}, function (obj) {
                    let sRef = obj.state.val;
                    
                    if (sRef && sRef.length > 0) {
                        // Enigma2 Servicereferenz umwandeln (Doppelpunkte zu Unterstrichen)
                        // Am Ende darf kein Doppelpunkt stehen, diesen wegschneiden, falls vorhanden
                        if (sRef.endsWith(":")) {
                            sRef = sRef.slice(0, -1);
                        }
                        let piconName = sRef.replace(/:/g, "_");
                        
                        // Vollständige URL zusammensetzen
                        let piconUrl = `http://${boxIp}:${boxPort}/picon/${piconName}.png`;
                        
                        // In den erstellten Datenpunkt schreiben
                        setState(targetState, piconUrl, true);
                        log(`Picon URL aktualisiert: ${piconUrl}`, "info");
                    } else {
                        // Falls kein Sender aktiv ist oder kein Signal anliegt, leeren
                        setState(targetState, "", true);
                    }
                });
                

                Bei der Ausgabe im Log zeigt er mir die richtige URL an wo das Picon gespeichert ist, aber in der Ausgabe in 0_userdata.0.gigablue.picon_url zeigt er mir zwar an das :

                http://XXX.XXX.XXX.XX/picon/1:0:1:2EF4:441:1:FFFF0000:0:0:0:.png
                

                Ich bekomme zum Teufel hinten den Doppelpunkt nicht weg. Hat da jemand ein Tip für mich.

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

                AsgothianA 1 Antwort Letzte Antwort
                0
                • matze55M matze55

                  Der Code klappte wunderbar jetzt versuche ich das mit dem Picon zu bewerkstelligen.
                  Momentaner Stand:

                  // Konfiguration: Passe die IP und ggf. die Instanz deines enigma2-Adapters an
                  const boxIp = "XXX.XXX.XXX.XX"; // IP-Adresse deines Enigma2-Receivers
                  const boxPort = "80";           // Port des OpenWebIF (Standard ist 80)
                  const e2Instance = "enigma2.0.enigma2"; // Name deiner Enigma2-Instanz im ioBroker enigma2.0.enigma2.CHANNEL_SERVICEREFERENCE
                  
                  // Datenpunkt für die generierte URL definieren
                  const targetState = "0_userdata.0.gigablue.picon_url";
                  createState(targetState, "", {
                      name: "Aktuelle Picon URL",
                      type: "string",
                      role: "text"
                  });
                  
                  // Trigger auf die Servicereferenz des Enigma2-Adapters setzen
                  on({id: `${e2Instance}.CHANNEL_SERVICEREFERENCE`, change: "ne"}, function (obj) {
                      let sRef = obj.state.val;
                      
                      if (sRef && sRef.length > 0) {
                          // Enigma2 Servicereferenz umwandeln (Doppelpunkte zu Unterstrichen)
                          // Am Ende darf kein Doppelpunkt stehen, diesen wegschneiden, falls vorhanden
                          if (sRef.endsWith(":")) {
                              sRef = sRef.slice(0, -1);
                          }
                          let piconName = sRef.replace(/:/g, "_");
                          
                          // Vollständige URL zusammensetzen
                          let piconUrl = `http://${boxIp}:${boxPort}/picon/${piconName}.png`;
                          
                          // In den erstellten Datenpunkt schreiben
                          setState(targetState, piconUrl, true);
                          log(`Picon URL aktualisiert: ${piconUrl}`, "info");
                      } else {
                          // Falls kein Sender aktiv ist oder kein Signal anliegt, leeren
                          setState(targetState, "", true);
                      }
                  });
                  

                  Bei der Ausgabe im Log zeigt er mir die richtige URL an wo das Picon gespeichert ist, aber in der Ausgabe in 0_userdata.0.gigablue.picon_url zeigt er mir zwar an das :

                  http://XXX.XXX.XXX.XX/picon/1:0:1:2EF4:441:1:FFFF0000:0:0:0:.png
                  

                  Ich bekomme zum Teufel hinten den Doppelpunkt nicht weg. Hat da jemand ein Tip für mich.

                  AsgothianA Offline
                  AsgothianA Offline
                  Asgothian
                  Developer
                  schrieb zuletzt editiert von
                  #14

                  @matze55 sagte:

                  let piconName = sRef.replace(/:/g, "_");

                  Dir fehlt da das 'multi'

                  sRef.replace(/:/gm, "_"); sollte gehen

                  ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                  "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

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

                    Nein geht leider nicht. unter 0_userdata.0.gigablue schreibt er das-->

                    http://XXX.XXX.XXX.XX/picon/1:0:1:30:5:85:FFFF0000:0:0:0:.png
                    

                    richtig sollte es so sein->

                    http://XXX.XXX.XXX.XX/picon/1_0_1_30_5_85_FFFF0000_0_0_0.png
                    

                    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
                    • AsgothianA Offline
                      AsgothianA Offline
                      Asgothian
                      Developer
                      schrieb zuletzt editiert von Asgothian
                      #16

                      Ok.. gesehen.. ich denke ich würde das so lösen:

                      sRef = `${sRef}.png`
                      sRef.replace(':.', '.').replace(/:/gm,'_')
                      

                      getestet habe ich das mit diesem Snippet auf jsfiddle.net:

                      const sRef = 'http://XXX.XXX.XXX.XX/picon/1:0:1:30:5:85:FFFF0000:0:0:0:.png'
                      console.log(sRef.replace(':.', '.').replace(/:/gm,'_'))
                      

                      ioBroker auf RPi4 - Hardware soweit wie möglich via Zigbee.
                      "Shit don't work" ist keine Fehlermeldung, sondern ein Fluch.

                      1 Antwort Letzte Antwort
                      0
                      • icebearI Online
                        icebearI Online
                        icebear
                        schrieb 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 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 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 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 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 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

                                  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

                                  374

                                  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