Ankündigung

Einklappen
Keine Ankündigung bisher.

LBS19000809 - Alexa Control

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • jonofe
    antwortet
    Du könntest einfach Links auf das .alexa.cookie anlegen:

    Code:
    cd /tmp
    ln -s .alexa.cookie .alexa-[B][COLOR=#FF0000]<ID>[/COLOR][/B].cookie
    <ID> einfach durch die ID des Alexa-Control-LBS ersetzen. Das musst du dann nur einmalig machen und danach nur noch das Skript starten, welches dann die .alexa.cookie erneuert.

    Einen Kommentar schreiben:


  • eXec
    antwortet
    Zitat von jonofe Beitrag anzeigen
    Code:
    wget https://loetzimmer.de/patches/alexa_remote_control_plain.sh
    chmod 755 alexa_remote_control_plain.sh
    
    cd /tmp
    cp .alexa.cookie .alexa-{LBS-ID}.cookie
    Hi jonofe


    bestimmt gibt es eine Möglichkeit die beiden Befehle als eine Art CRON-Job oder so etwas ablaufen zu lassen, oder?
    Bei mir hat sich nun auch wieder der Cookie verabschiedet, aber durch Ausführen vom alexa_control_plain.sh und anschließendem Kopieren/Ersetzen der Cookies konnte dies behoben werden.

    Deswegen die Frage, kann man das scripten und sei es nur manuell startbar, damit ich nicht jedes Copy/Paste für alle Geräte einzel machen muss? Dafür bin ich nicht Linux fir genug, aber für dich bestimmt kein Ding.

    Grüße Andre

    Einen Kommentar schreiben:


  • sepplo815
    antwortet
    Ja, leider sicher.
    Hatte an einem Tag 4 verschiedene...

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Bist du sicher? Ich war der Meinung die ID ändert sich nur bei neuem pairing. Werde das aber bei mir noch mal testen

    Einen Kommentar schreiben:


  • sepplo815
    antwortet
    Sooo....

    Hab es jetzt mit einer RasPi zum Laufen bekommen.
    Die ID bekomm ich raus und wenn ich die statt der Mac Adresse Eintrage funktioniert alles wunderbar.
    Das Problem ist aber, dass sich diese ID immer wieder ändert...
    Auch ohne Neustart des Echo oder so, die ist immer wieder eine andere...

    Hmmm...
    Seppl

    Einen Kommentar schreiben:


  • sepplo815
    antwortet
    jetzt bekomme ich das

    Code:
    bluetooth devices for dev:Lounge type:A7WXQPH584YP serial:G2A0RF03745604D0:
    error: Invalid character
    .bluetoothStates[] | select(.deviceSerialNumber == $serial) | "\(.pairedDeviceList[]?.address) \(.pairedDeviceList[]?.friendlyName)"
                                                                                        ^
    error: Invalid character
    .bluetoothStates[] | select(.deviceSerialNumber == $serial) | "\(.pairedDeviceList[]?.address) \(.pairedDeviceList[]?.friendlyName)"

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    dann mach mal

    Code:
    yum install epel-release -y
    yum install jq -y
    und ein

    Code:
    chmod 755 alexa_remote_control*.sh
    Danach sollte es so funktionieren: (statt sh verwende ./ am Anfang des Befehls)

    Code:
    ./alexa_remote_control.sh -d Lounge -b list

    Einen Kommentar schreiben:


  • sepplo815
    antwortet
    leider nein

    Code:
    [root@edomi tmp]# sh alexa_remote_control.sh -d Lounge -b list
    alexa_remote_control.sh: Zeile 452: jq: Kommando nicht gefunden.
    alexa_remote_control.sh: Zeile 453: jq: Kommando nicht gefunden.
    alexa_remote_control.sh: Zeile 454: jq: Kommando nicht gefunden.
    ERROR: unkown device dev:Lounge

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Die curl Version von CentOS 6.5 ist zu alt. MAcht aber nichts. Du kannst im Skript einfach das --http1.1 löschen. Danach sollte es hoffentlich funktionieren.

    Einen Kommentar schreiben:


  • sepplo815
    antwortet
    OK - hab ich mal gemacht.
    Bekomme die Meldungen:
    Code:
    curl: option --http1.1: is unknown
    curl: try 'curl --help' or 'curl --manual' for more information
    grep: /tmp/.alexa.header: Datei oder Verzeichnis nicht gefunden
    curl: option --http1.1: is unknown
    curl: try 'curl --help' or 'curl --manual' for more information
    awk: Kommandozeile:1: Fatal: Kann Datei '/tmp/.alexa.cookie' nicht zum Lesen öffnen (Datei oder Verzeichnis nicht gefunden).
    curl: option --http1.1: is unknown
    curl: try 'curl --help' or 'curl --manual' for more information
    grep: /tmp/.alexa.header2: Datei oder Verzeichnis nicht gefunden
    ERROR: Amazon Login was unsuccessful. Possibly you get a captcha login screen.
     Try logging in to https://alexa.amazon.de with your browser. In your browser
     make sure to have all Amazon related cookies deleted and Javascript disabled!
    Ich glaune die Refferenzierung auf die cURL binary ist falsch.
    Ist die schon standardmäßig auf dem EDOMI Server oder muss ich die noch installieren?
    Wenn ja, wie? 8-)


    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Zitat von sepplo815 Beitrag anzeigen
    Aber wie soll ich das Skript ausführen?
    Am Edomi Server?
    Auf dem EDOMI Server.
    Du musst im Skript aber vorher deine Amazon Kennung eintragen (genau wie beim LBS).

    Einen Kommentar schreiben:


  • sepplo815
    antwortet
    Hi,
    habe mir die von dir verlinkte Seite schon durchgelesen…
    (trau mich fast nicht fragen)
    Aber wie soll ich das Skript ausführen?
    Am Edomi Server?
    Am Windows (oder Mac) Rechner wird das wohl nicht funktionieren.
    Meine Linux Kenntnisse sind leider recht dürftig.

    und DANKE für deine schnellen Bemühungen!!!

    LG
    Seppl

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Ich hatte wohl irgendwie die Generationen von Echo Dot und Echo durcheinandergebracht.
    Habe selbst auch einen Echo 2. Generation mit Stoff und konnte das Verhalten nachvollziehen und das Problem auch lösen.
    Wenn du auf die Seite mit dem weiter oben verlinkten Skript gehst und dort die Anleitung zu den Bluetooth Befehlen durchliest, dann steht dort, dass es auch sein kann, dass nicht die BT MAC Adresse verwendet wird, sondern eine andere scheinbar zufällig generierte ID. Genau das scheint beim Echo 2. Generation der Fall zu sein. Mit dem Skript, welches du auf dieser Seite downloaden kannst, kann man aber die Liste der verbundenen BT Devices auslesen und damit auch die IDs.

    Code:
    alexa_remote_control.sh -d <Echo-Name> -b list
    Bei mir sieht das dann für Dot und Echo so aus (Dot hat den Namen "Andre" und der Echo den Namen "Kueche")

    Code:
    andre@goliath:~$ ./alexa_remote_control.sh -d Andre -b list
    bluetooth devices for [B]dev:Andre [/B]type:A3S5BH2HU6V### serial:G090L91072040###:
    [COLOR=#00FF00][B]18:D2:76:39:##:##[/B][/COLOR] Mate9
    andre@goliath:~$ ./alexa_remote_control.sh -d Kueche -b list
    bluetooth devices for [B]dev:Kueche [/B]type:A7WXQPH58### serial:G2A0P30774140###:
    [COLOR=#FF0000][B]975997198670 [/B][/COLOR]Mate9
    Wenn ich nun den roten Code an E31 meines LBS verwende, dann funktioniert es auch mit dem Echo 2. Generation.
    Bei Gelegenheit schaue ich mir das Skript noch mal an und versuche den LBS um die Liste der verbundenen BT Devices zu ergänzen.

    Einen Kommentar schreiben:


  • jonofe
    antwortet
    Nein, im Moment leider nicht, allerdings wird an einer Stelle im Code nach "deviceType" gefiltert, welcher bisher ECHO (Echo, Echo Dot), WHA (Echo Group), ROOK (Echo Show) oder KNIGHT (Echo Spot) sein konnte. Evtl. wurde ein neuer deviceType für den Echo mit Stoff eingeführt?
    Du könntest die Zeil 1329

    PHP-Code:
    // logging($id,'Devices JSON: '.$content); 
    mal wieder einkommentieren und dann noch mal testen. Dann müssten die RAW Datein eigentlich im Log stehen, inkl. eines möglichen neuen DeviceTypes.

    Einen Kommentar schreiben:


  • sepplo815
    antwortet
    Aktuell ist mir nur das bekannt.
    Bei Node-red hat das „finde meine Geräte“ mit dem Echo (ohne Dot und mit Stoff) nicht funktioniert. Mit dem Dot (ohne Stoff) schon.

    Hast du eine Vermutung woran das liegen kann?

    Einen Kommentar schreiben:

Lädt...
X