Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

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

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Cloud Dienste
  4. Verfügbarkeit Alexa im Netzwerk prüfen.

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    2.0k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    919

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Verfügbarkeit Alexa im Netzwerk prüfen.

Geplant Angeheftet Gesperrt Verschoben Cloud Dienste
alexa
11 Beiträge 4 Kommentatoren 4.8k Aufrufe 1 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • ruhr70R Offline
    ruhr70R Offline
    ruhr70
    schrieb am zuletzt editiert von Negalein
    #1

    Na prima…

    Ein Skript geschrieben, was die Verfügbarkeit eines Alexa Echo im Netzwerk mit nmap prüft, da ein Ping bei den Amazon Echos nicht funktioniert…

    Skript (benötigt nmap):

    // Prüft die Verfügbarkeit eines Amazon Echos im Netz bei bekannter IP-Adresse
    // Rückmeldung der Prüfung etwas > 10 Sekunden
    // Voraussetzungen:
    // --------------------------
    // nmap muss installiert sein
    // IP-Adresse in der "abfrage" anpassen
    var alexaName       = "81 Wohnzimmer";
    var alexaIP         = "172.16.130.81";
    var logOn           = false; // Logausgabe im Skript
    var forecreation    = false; // true: Datenpunkte werden überschrieben (ween z.B. Bezeichnungen geändert wurden)
    var pfad            = "Systeminfos.Alexa.Echo_81" + "."; // Pfad in dem die Datenpunkte angelegt werden
    // Datenpunktnamen:
    var idEchoUp            = pfad + 'up';
    var idEchoLatency       = pfad + "latency";
    var idEchoStatustime    = pfad + "timestamp";
    var idMacAddress        = pfad + "mac address";
    // regelmässige Wiederholungen der Abfrage
    var cronStr         = "*/5 * * * *";
    var abfrage         = 'nmap '+alexaIP+' -sT -A --top-ports=20';
    //var abfrage         = 'nmap '+alexaIP+' -sT -A -n -T4 --top-ports=20';
    // -----------------------------------------------------------------------------
    createState(idEchoUp, false, forecreation, {
         name: 'Alexa Echo '+alexaName+'up',
         desc: 'Alexa Echo '+alexaName+' up',
         type: 'boolean',
         unit: '',
         role: 'value'
    });
    createState(idEchoLatency, "initalisiert", forecreation, {
         name: 'Alexa Echo '+alexaName+' Latency',
         desc: 'Alexa Echo '+alexaName+' Latency',
         type: 'string',
         unit: '',
         role: 'value'
    });
    createState(idEchoStatustime, now(), forecreation, {
         name: 'Alexa Echo '+alexaName+' letzter Status',
         desc: 'Alexa Echo '+alexaName+' letzter Status',
         type: 'string',
         unit: '',
         role: 'value'
    });
    createState(idMacAddress, "initalisiert", forecreation, {
         name: 'Alexa Echo '+alexaName+' Mac Adresse',
         desc: 'Alexa Echo '+alexaName+' Mac Adresse',
         type: 'string',
         unit: '',
         role: 'value'
    });
    // -----------------------------------------------------------------------------
    function now() {
        return formatDate(new Date(), "hh:mm:ss, YYYY-MM-DD");
    }
    function abfrageConsole() {
        exec(abfrage, function(err, stdout, stderr) {
            if(logOn) log("Abfrage: "+abfrage);
            if (err) {
                log("Fehler Amazon Echo Scan: " + err,"error");
                return;
            }
            var out = stdout.toString();
            if(logOn) log(out);
            if(!out || (!out.match("Host is up") && !out.match("Host seems down")))  log("Amazon Echo Scan unklares Ergebnis","warn");
            var up      = false;
            var latency = "n.e.";
            var mac     = "n.e.";
            if (out.match("Host is up")) {
                up = true;
                latency = out.match(/\(.+latency/g);
                latency = latency.toString().replace(/ latency/,"");
                latency = latency.toString().replace("(","");
    
                mac = out.match(/..:..:..:..:..:../g).toString();
                // ..:..:..:..:..:..
            }
            setState(idEchoUp           ,up);        
            setState(idEchoLatency      ,latency);
            setState(idEchoStatustime   ,now());
            setState(idMacAddress       ,mac);
            if(logOn) log("Scan Amazon Echo :"+alexaName+": ");
            if(logOn) log("Alexa Echo Mac-Adresse: " + mac);
            if(logOn) log("up: " + up);
            if(logOn) log("Latency: " + latency);
        });
    }
    function abfragen() {
        abfrageConsole();
    }
    // regelmässige Wiederholungen
    // -----------------------------------------------------------------------------
    schedule(cronStr, abfragen);
    // main
    // -----------------------------------------------------------------------------
    function main() {
        abfragen();
    }
    // Start Skript:
    // -----------------------------------------------------------------------------
    setTimeout(main,    500);
    

    Und da muss ich danach feststellen, dass man mit dem radar-Adapter die Echos auch überwachen kann :roll: :mrgreen: :mrgreen: :oops:

    Adapter: Fritzbox, Unify Circuit
    Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

    E 1 Antwort Letzte Antwort
    0
    • apollon77A Offline
      apollon77A Offline
      apollon77
      schrieb am zuletzt editiert von
      #2

      @ruhr70:

      Und da muss ich danach feststellen, dass man mit dem radar-Adapter die Echos auch überwachen kann :roll: :mrgreen: :mrgreen: :oops: `

      Per MAC, Bluetooth oder fping?

      Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

      • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
      • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
      1 Antwort Letzte Antwort
      0
      • ruhr70R Offline
        ruhr70R Offline
        ruhr70
        schrieb am zuletzt editiert von
        #3

        @apollon77:

        @ruhr70:

        Und da muss ich danach feststellen, dass man mit dem radar-Adapter die Echos auch überwachen kann :roll: :mrgreen: :mrgreen: :oops: `

        Per MAC, Bluetooth oder fping? `

        Bluetooth: nein

        (habe die Radar-Instanz beim Master unter ESXi genommen, die hat kein Bluetooth)

        MAC: nein

        (ich hatte probiert, ob die MAC alleine ausreicht)

        fping: keine Ahnung

        Ohne Parameter bringt mir ein fping:

        michael@ubuntu1604server:~$ fping 172.16.130.81
        172.16.130.81 is unreachable
        

        Adapter: Fritzbox, Unify Circuit
        Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

        1 Antwort Letzte Antwort
        0
        • apollon77A Offline
          apollon77A Offline
          apollon77
          schrieb am zuletzt editiert von
          #4

          Wie macht es der radar Adapter dann?

          Beitrag hat geholfen? Votet rechts unten im Beitrag :-) https://paypal.me/Apollon77 / https://github.com/sponsors/Apollon77

          • Debug-Log für Instanz einschalten? Admin -> Instanzen -> Expertenmodus -> Instanz aufklappen - Loglevel ändern
          • Logfiles auf Platte /opt/iobroker/log/… nutzen, Admin schneidet Zeilen ab
          1 Antwort Letzte Antwort
          0
          • ruhr70R Offline
            ruhr70R Offline
            ruhr70
            schrieb am zuletzt editiert von
            #5

            Keine Ahnung, ist nicht von mir ;-)

            fping mit Parametern?

            https://github.com/frankjoke/iobroker.r … /README.md

            Adapter: Fritzbox, Unify Circuit
            Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

            1 Antwort Letzte Antwort
            0
            • eric2905E Offline
              eric2905E Offline
              eric2905
              schrieb am zuletzt editiert von
              #6

              Die Frage muss wohl eher lauten, was Du im Radar-Adapter eingetragen hast.

              IP?

              MAC (LAN oder BT)?

              usw.

              Gruß,

              Eric

              Roses are red, violets are blue,

              if I listen to metal, my neighbours do too

              1 Antwort Letzte Antwort
              0
              • ruhr70R Offline
                ruhr70R Offline
                ruhr70
                schrieb am zuletzt editiert von
                #7

                @eric2905:

                Die Frage muss wohl eher lauten, was Du im Radar-Adapter eingetragen hast.

                IP?

                MAC (LAN oder BT)?

                usw. `

                Ich glaube die Frage war zu 90% beantwortet. :D

                BT: hatte ich geschrieben, dass der ESXi kein Bluetooth hat.

                MAC: steht oben, dass ich die MAC alleine eingetragen hatte, ohne Ergebnis.

                bleibt nur die IP (oder https://…)

                Aber um das klar zu beantworten: es funktioniert wenn nur die IP eingetragen ist.

                Ich habe die IP und die MAC gepflegt, wobei die MAC nichts bringen dürfte.

                Bluetooth habe ich über die andere radar-Instanz nicht getestet.

                Adapter: Fritzbox, Unify Circuit
                Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                1 Antwort Letzte Antwort
                0
                • eric2905E Offline
                  eric2905E Offline
                  eric2905
                  schrieb am zuletzt editiert von
                  #8

                  Ah, ok. Ich hatte es so verstanden, das Du die einzelnen Varianten er manuell ausprobiert hast um dann festzustellen, das der Radar-Adapter es auch kann…

                  Missverständnis.

                  Gruß,

                  Eric

                  Roses are red, violets are blue,

                  if I listen to metal, my neighbours do too

                  1 Antwort Letzte Antwort
                  0
                  • ruhr70R Offline
                    ruhr70R Offline
                    ruhr70
                    schrieb am zuletzt editiert von
                    #9

                    Habe ich aber vorhin drüber geärgert, dass ich es nicht eindeutig beschrieben habe, was ich beim Radar gemacht hatte :D

                    Wollte erst großspurig 100% schreiben, habe dann aber festgestellt, dass es nicht präzise war :-(

                    :mrgreen:

                    Aber unabhängig davon wüsste ich gerne bei beiden Varianten (nmap und radar-Adapter), was da genau geschieht.

                    Bei nmap kann ich mir die Parameter ansehen, die im Skript drin sind. Der Ist-Stand ist mit einem einfachen Versuch per google entstanden. Beim radar-Adapter müsste man Wireshark anschmeissen.

                    Falls ein Netzwerkprofi anwesend ist… ;-)

                    Adapter: Fritzbox, Unify Circuit
                    Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                    1 Antwort Letzte Antwort
                    0
                    • ruhr70R Offline
                      ruhr70R Offline
                      ruhr70
                      schrieb am zuletzt editiert von
                      #10

                      Kleiner Nachtrag…

                      Der Radar Adapter zeigt mir bei einen Echo tlw. nicht erreichbar an (82).

                      Die Logik, warum das so sein sollte, erschliesst sich mir nicht.

                      Aus den ganzen Adaptern gibt es bei der Fritzbox noch eine weitere Alternative.

                      Der tr-64 Adapter. Der hat allerdings das Problem, dass die Gerätenamen in den Einstellungen des Adapters nicht mit in den Datenpunktnamen Übernomen werden. Zwei der Echos heissen in der Fritzbox "Linux". Damit habe ich dann für beide Geräte nur noch einen Datenpunkt. Wahrscheinlich werde ich es aber über die Fritzbox ändern können.

                      327_alexa_monitoring.jpg

                      [EDIT]

                      tr-64 Adapter:

                      Wie vermutet. Man kann die Namen der Geräte in der Fritzbox ändern. Die Datenpunkte werden dann automatisch neu erstellt. Die alten Datenpunkte muss man händisch löschen. Da bei den Einstellungen das Feld "Gerätenamen" editierter ist, sollte das wahrscheinlich auch anders funktionieren.

                      P.S.: der tr-64 ist übrigens ein sehr sehr cooler Adapter geworden. Respekt!

                      Adapter: Fritzbox, Unify Circuit
                      Skripte: dynamic hue, Bluetooth Scan, Multi-Ereignisliste

                      1 Antwort Letzte Antwort
                      0
                      • ruhr70R ruhr70

                        Na prima…

                        Ein Skript geschrieben, was die Verfügbarkeit eines Alexa Echo im Netzwerk mit nmap prüft, da ein Ping bei den Amazon Echos nicht funktioniert…

                        Skript (benötigt nmap):

                        // Prüft die Verfügbarkeit eines Amazon Echos im Netz bei bekannter IP-Adresse
                        // Rückmeldung der Prüfung etwas > 10 Sekunden
                        // Voraussetzungen:
                        // --------------------------
                        // nmap muss installiert sein
                        // IP-Adresse in der "abfrage" anpassen
                        var alexaName       = "81 Wohnzimmer";
                        var alexaIP         = "172.16.130.81";
                        var logOn           = false; // Logausgabe im Skript
                        var forecreation    = false; // true: Datenpunkte werden überschrieben (ween z.B. Bezeichnungen geändert wurden)
                        var pfad            = "Systeminfos.Alexa.Echo_81" + "."; // Pfad in dem die Datenpunkte angelegt werden
                        // Datenpunktnamen:
                        var idEchoUp            = pfad + 'up';
                        var idEchoLatency       = pfad + "latency";
                        var idEchoStatustime    = pfad + "timestamp";
                        var idMacAddress        = pfad + "mac address";
                        // regelmässige Wiederholungen der Abfrage
                        var cronStr         = "*/5 * * * *";
                        var abfrage         = 'nmap '+alexaIP+' -sT -A --top-ports=20';
                        //var abfrage         = 'nmap '+alexaIP+' -sT -A -n -T4 --top-ports=20';
                        // -----------------------------------------------------------------------------
                        createState(idEchoUp, false, forecreation, {
                             name: 'Alexa Echo '+alexaName+'up',
                             desc: 'Alexa Echo '+alexaName+' up',
                             type: 'boolean',
                             unit: '',
                             role: 'value'
                        });
                        createState(idEchoLatency, "initalisiert", forecreation, {
                             name: 'Alexa Echo '+alexaName+' Latency',
                             desc: 'Alexa Echo '+alexaName+' Latency',
                             type: 'string',
                             unit: '',
                             role: 'value'
                        });
                        createState(idEchoStatustime, now(), forecreation, {
                             name: 'Alexa Echo '+alexaName+' letzter Status',
                             desc: 'Alexa Echo '+alexaName+' letzter Status',
                             type: 'string',
                             unit: '',
                             role: 'value'
                        });
                        createState(idMacAddress, "initalisiert", forecreation, {
                             name: 'Alexa Echo '+alexaName+' Mac Adresse',
                             desc: 'Alexa Echo '+alexaName+' Mac Adresse',
                             type: 'string',
                             unit: '',
                             role: 'value'
                        });
                        // -----------------------------------------------------------------------------
                        function now() {
                            return formatDate(new Date(), "hh:mm:ss, YYYY-MM-DD");
                        }
                        function abfrageConsole() {
                            exec(abfrage, function(err, stdout, stderr) {
                                if(logOn) log("Abfrage: "+abfrage);
                                if (err) {
                                    log("Fehler Amazon Echo Scan: " + err,"error");
                                    return;
                                }
                                var out = stdout.toString();
                                if(logOn) log(out);
                                if(!out || (!out.match("Host is up") && !out.match("Host seems down")))  log("Amazon Echo Scan unklares Ergebnis","warn");
                                var up      = false;
                                var latency = "n.e.";
                                var mac     = "n.e.";
                                if (out.match("Host is up")) {
                                    up = true;
                                    latency = out.match(/\(.+latency/g);
                                    latency = latency.toString().replace(/ latency/,"");
                                    latency = latency.toString().replace("(","");
                        
                                    mac = out.match(/..:..:..:..:..:../g).toString();
                                    // ..:..:..:..:..:..
                                }
                                setState(idEchoUp           ,up);        
                                setState(idEchoLatency      ,latency);
                                setState(idEchoStatustime   ,now());
                                setState(idMacAddress       ,mac);
                                if(logOn) log("Scan Amazon Echo :"+alexaName+": ");
                                if(logOn) log("Alexa Echo Mac-Adresse: " + mac);
                                if(logOn) log("up: " + up);
                                if(logOn) log("Latency: " + latency);
                            });
                        }
                        function abfragen() {
                            abfrageConsole();
                        }
                        // regelmässige Wiederholungen
                        // -----------------------------------------------------------------------------
                        schedule(cronStr, abfragen);
                        // main
                        // -----------------------------------------------------------------------------
                        function main() {
                            abfragen();
                        }
                        // Start Skript:
                        // -----------------------------------------------------------------------------
                        setTimeout(main,    500);
                        

                        Und da muss ich danach feststellen, dass man mit dem radar-Adapter die Echos auch überwachen kann :roll: :mrgreen: :mrgreen: :oops:

                        E Offline
                        E Offline
                        Eggi
                        schrieb am zuletzt editiert von
                        #11

                        @ruhr70
                        Servus
                        Ich habe Dein Script vewendet - funktioniert soweit auch; nur........

                        Ich habe einige wenige Echo's im Haus in Verwendung.
                        Bei einem funktioniert Dein Script problemlos.
                        Bei einem anderen mit angepaßter IP-Adresse jedoch liefert das Script im ioBroker nicht und liefert immer das Ergebnis zurück, daß das Gerät nicht verfügbar wäre. Wenn ich im Terminal vom ioBroker-Docker jedoch genau die gleiche die Befehlszeile von nmap so wie Du es im Script generierts eingebe, wird ein Online-Ergebnis ausgegeben.

                        Hast Du eine Idee, warum nmap im ioBroker ein falsches Ergebnis liefert?

                        1 Antwort Letzte Antwort
                        0
                        Antworten
                        • In einem neuen Thema antworten
                        Anmelden zum Antworten
                        • Älteste zuerst
                        • Neuste zuerst
                        • Meiste Stimmen


                        Support us

                        ioBroker
                        Community Adapters
                        Donate
                        FAQ Cloud / IOT
                        HowTo: Node.js-Update
                        HowTo: Backup/Restore
                        Downloads
                        BLOG

                        775

                        Online

                        32.6k

                        Benutzer

                        82.2k

                        Themen

                        1.3m

                        Beiträge
                        Community
                        Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                        ioBroker Community 2014-2025
                        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