Hey FHEM-Freunde
Hat sich jemand schon mit dem Thema Amazon Fire TV und FHEM beschäftigt.
Die kleine BOX bietet ja ordentlich Rechenpower und gibt mir die Möglichkeit meinen Phillipsfernseher(der für FHEM 1Jahr zu alt ist) als leistungsstarken SmartTV zu verwenden.
Gibt es eine Möglichkeit der/die/das Fire TV per FHEM anzusteuern? Da ich hierzu nichts gefunden habe gehe ich davon aus, dass es hierzu noch kein (öffentliches) Modul gibt.
Grüße
Fabian
es gibt (zur zeit?) kein api und keine app um fire tv zu steuern. und somit auch kein fire tv modul.
du kannst aber mit einem harmony hub und dem harmony modul unter anderem fire tv steuern. du bekommst aber keine rückmeldung was das ding gerade macht.
gruss
andre
Es gibt eine Möglichkeit (die) xbmc (app) auf das Ding zu bringen. xbmc kann man fern steuern, meine auch mit fhem.
offtopic: das ding hat leistung, ja. können tuts weniger als nen pi mit openelec... der ksotet keine 99€ (sogar mit codec-kauf nicht)
Ich habs für 49€ bekommen und für den Preis hat sichs gelohnt, für 99€ würde ich es mir nicht wieder kaufen
der knackpunkt am fire tv ist glaube ich eher das man wudnerbar die mit prime kostenlosen videos und serien schauen kann. einstecken und geht. ebenso die apps für ard,zdf und co. die zielgruppe ist eine deutlich andere als für einen bastel pi.
99 hätte ich zwar auch zu viel gefunden aber was die leistung angeht ist es sehr viel schneller als ein pi. der ist als hd player sehr sehr grenzwertig. das fire tv reagiert absolut flüssig und schnell. kein vergleich.
die xbmc oder plex app nütz dir nichts wenn du sie nicht starten kannst. und das geht ohne rooten nicht automatisch.
man kann es starten und nein man muss nicht rooten
http://www.pcgameshardware.de/Fire-TV-Hardware-259565/Specials/Fire-TV-XBMC-Kodi-1138098/
für mich erfüllt die Box nur wenige Punkte die ein mediacenter können muss (kann von Haus aus keine Dateien von freigaben spielen für alles außer prime bin ich auf apps angewiesen die es zur Zeit nur mangelhaft gibt, gängigen Formate werden nicht untertsützt, kein cec, .....)
das hatte ich nicht gemeint.
ohne rooten kannst du es nicht automatisch starten. d.h. es nützt nur bedingt wenn du zwar xbmc aus dem heraus steuern könntest du aber xbmc selber nicht aus fhem heraus starten kannst. es kann ja gerade irgendetwas anderes laufen.
stimmt natürlich aber wenn man es gestartet hat (wenn man es mal drauf hat nutzt man es wahrscheinlich auf Grund der Möglichkeiten eh zu meist) kann man fhem mit anbinden.
WebViewControll sollte auf dem Wege übrigens auch drauf gehen
Zitatprime kostenlosen Videos und Serien schauen
geht über xbmc ehr (release bezogen), wirklich kostenlos (prime kostet meines Wissens nach 30 Tagen), aus viel viel mehr Quellen und mit mehr Vielfalt. also auch so schon ein Grund xbmc auf dem FireTV zu nutzen
Zitatdas fire tv reagiert absolut flüssig und schnell.
jab, wie mein openelec-pi (auch mit HD-inhalten und von share im Netzwerk...)
sollte man ihn mal rooten können wäre es wirklich zu dem Preis /gerade für die 49€) ein tolles Teil.
Wenn ich mich recht erinnere, geht XBMC bzw. Kodi Autostart auch ohne Root.
http://kodi.wiki/view/Amazon_Fire_TV#Launch_XBMC_from_an_Existing_App_on_the_FTV_Home_Screen
Davon abgesehen gibt es einen Kodi Build (SPMC) der speziell bei der FireTV angeblich deutlich besser läuft.
Meine FireTV liegt noch in der Schachtel, da ich erst gestern Netzwerk in mein Fernsehzimmer gelegt habe. Grund Kodi auf der FireTV zu nutzen gibt es imho, neben den bereits angesprochenen, noch einen:
LiveTV
Ich will die Box später an einen Fernseher klemmen, wo ich kein SatKabel habe (und auch keines hinziehen kann).
Dazu fände ich es ausgesprochen praktisch und bequem, gleich alles über Kodi zu lösen. TV, Recordings, Bilder etc...
viel spannender würde ich es finden wenn man mit der box per spracheingabe fhem steuern könnte ;-)
Bei mir hat das FireTV mit Kodi und als Fallback die VU+ App darauf den RasPi abgelöst im Schlafzimmer. Ich nutze es für Prime YouTube und LiveTV um mir die Kanäle der VU+ übers Lan zu streamen.
klappt eigentlich recht gut.
Mittler weile steht wieder ein kleiner pc. Die armkisten schaffen dann doch keine 35gb rips in 3d vom nas :(
mittlerweile kann man aber den firetv auch mit linux betanken, root geht wohl auch für android
Es gibt ja mittlerweile eine Remote App für Android und iOS. Wäre es darüber möglich ein Modul für Fhem zu bauen? Hab es über iOS bisher noch nicht hinbekommen das Netzwerk zu sniffen, wenn die App läuft. Sollte über Android eventuell einfacher sein.
Könnte FHEM über diese APP Fire TV steuern?
http://www.aftvnews.com/new-drivers-allow-fire-tv-control-over-ip-via-home-automation-systems/ (http://www.aftvnews.com/new-drivers-allow-fire-tv-control-over-ip-via-home-automation-systems/)
LG
renmet
ich glaub nicht das jemand $49.95 für den treiber ausgibt... die apps müsste man mal mitsniffen was die so machen. hilft ja auch bei vielen anderen geräten (medion/lidl-radio, wlan-leds usw usw).
ich glaube nur nicht das es viele fire-tv user mit fhem gibt und darunter noch weniger die lust haben ein modul zu bauen
Fast 50$ ???
Um ne FireTV zu steuern? Ich mein, wenn sie dann wenigstens Kaffe ans Bett brächte. Aber das geht wohl ebenso wenig wie 24fps ::)
Kodi druff. Dafür hat fhem schon ein Modul ;)
Sniffen ist kein Thema :-)
Andoid Emulator auf den PC und Wireshark ist Dein Freund
Hallo,
mit aktivierter Android Debug Bridge auf dem AFTV und installierten adb Tools aus dem SDK lassen sich Informationen vom Fire TV beziehen.
Beispiel für das Einschalten(vom Standby) des Devices von einem Raspberry PI aus
Code:
#!/bin/bash
FTVIP=192.168.0.200
#connect to fire tv
adb disconnect
adb connect $FTVIP
#get Status on/off by reading led brightness val
led1=$(adb shell cat /sys/class/leds/lcd-backlight/brightness)
#led2=$(adb shell cat /sys/class/leds/bueller-status/brightness)
led1=$(echo $led1|sed -e s/^M//g)
#led2=$(echo $led2|sed -e s/^M//g)
if [ "$led1" = "0" ]
then
#power on device
adb shell input keyevent 26
else
echo "FTV is already on."
fi
Interessant! Hast du dazu noch weiter gehende Infos? Evtl. eine Beschreibung der Inhalte von /sys/class? Oder ganz konkret: Ist es möglich damit den Playstatus bzw. den aktuell gespielten Titel abzufragen?
Unter http://www.aftvnews.com/how-to-remotely-control-an-amazon-fire-tv-or-fire-tv-stick-via-adb/ finden sich weitere Keycodes mit denen sich eine rudimentäre Steuerung bewerkstelligen lässt.
Das interessiert mich.
Vielleicht findet sich ein Entwickler mit Lust und Ressourcen hierfür ;D
Mir fehlen leider die Ressourcen im Moment.
grüße
Im Anhang ein simples (auf die schnelle zusammen gehacktes) Skript, das Funktionen zur Verfügung stellt mit dem man ein Fire TV steuern kann. Voraussetzung ist ein installiertes adb (Link für Raspberry-Version im Skript). Es bildet die Fernbedienung ohne Sprachsuche ab, getestet ist's mit einem Fire TV Stick.
Der folgende Code ist für FTUI, damit lässt sich die Fernbedienung aus dem Screenshot einbauen (IP anpassen!):
<li data-row="1" data-col="2" data-sizex="2" data-sizey="4">
<header>FIRE TV</header>
<div class="centered container">
<div id="" data-type="button" data-fhem-cmd="{ftv_up('192.168.178.41')}" data-icon="fa-angle-up" data-on-background-color="#2E8AE6" class="cell"></div>
</div>
<div class="centered container">
<div id="" data-type="button" data-fhem-cmd="{ftv_left('192.168.178.41')}" data-icon="fa-angle-left" data-on-background-color="#2E8AE6" class="cell"></div>
<div id="" data-type="button" data-fhem-cmd="{ftv_enter('192.168.178.41')}" data-icon="fa-check-circle" data-on-background-color="#0066FF" class="cell"></div>
<div id="" data-type="button" data-fhem-cmd="{ftv_right('192.168.178.41')}" data-icon="fa-angle-right" data-on-background-color="#2E8AE6" class="cell"></div>
</div>
<div class="centered container">
<div id="" data-type="button" data-fhem-cmd="{ftv_down('192.168.178.41')}" data-icon="fa-angle-down" data-on-background-color="#2E8AE6" class="cell"></div>
</div>
<div class="centered container" style="margin-top:30px">
<div id="" data-type="button" data-fhem-cmd="{ftv_back('192.168.178.41')}" data-icon="fa-arrow-circle-o-left" data-on-background-color="#aa6900" class="cell"></div>
<div id="" data-type="button" data-fhem-cmd="{ftv_home('192.168.178.41')}" data-icon="fa-home" data-on-background-color="#9933FF" class="cell"></div>
<div id="" data-type="button" data-fhem-cmd="{ftv_menu('192.168.178.41')}" data-icon="fa-bars" data-on-background-color="#aa6900" class="cell"></div>
</div>
<div class="centered container">
<div id="" data-type="button" data-fhem-cmd="{ftv_prev('192.168.178.41')}" data-icon="fa-backward" data-on-background-color="#aa6900" class="cell"></div>
<div id="" data-type="button" data-fhem-cmd="{ftv_playpause('192.168.178.41')}" data-icon="fa-play" data-on-background-color="#FFCC00" class="cell"></div>
<div id="" data-type="button" data-fhem-cmd="{ftv_next('192.168.178.41')}" data-icon="fa-forward" data-on-background-color="#aa6900" class="cell"></div>
</div>
<div class="centered container" style="margin-top:30px">
<div id="" data-type="button" data-fhem-cmd="{ftv_search('Terminator 1', '192.168.178.41')}" data-icon="fa-search" data-on-background-color="#808080" class="cell"></div>
<div id="" data-type="button" data-fhem-cmd="{ftv_apps('192.168.178.41')}" data-icon="fa-tasks" data-on-background-color="#808080" class="cell"></div>
</div>
</li>
Wirklich sinnvoll wird's natürlich erst wenn ein "Rückkanal" möglich ist.
Das Anzeigen einiger Nachrichten wie die ein ankommender Anruf (geht bei Dreambox + Kodi) oder die fertige Waschmaschine wäre sicher eine tolle Sache.
Ist soetwas hinzubekommen?
kodi sollte doch eh auch jedem fire tv drauf sein (ohne find ich ihn sinnlos), evtl gehen da ja die fhemplugins auch zu installieren und du kannst ihn wie die Dreambox + Kodi nutzen.
leider ging mein stick gestern weg (verkauft) und heute lese ich die infos, schade (hät aber am leistungsmangel des sticks nicht viel geändert). aber am 5.10. kommt ja das neue firetv
Hallo.
Ich wollte die Firetv fernbesienung einbinden bekomme aber die folgende Fehlermeldung im log:
2016.03.27 12:50:33 1: reload: Error:Modul 99_Utils_FireTV deactivated:
Can't locate Switch.pm in @INC (you may need to install the Switch module) (@INC contains: /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/arm-linux-gnueabihf/perl5/5.20 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/99_Utils_FireTV.pm line 10.
BEGIN failed--compilation aborted at ./FHEM/99_Utils_FireTV.pm line 10.
2016.03.27 12:50:33 1: Including fhem.cfg
2016.03.27 12:50:33 1: reload: Error:Modul 99_Utils_FireTV deactivated:
Can't locate Switch.pm in @INC (you may need to install the Switch module) (@INC contains: /etc/perl /usr/local/lib/arm-linux-gnueabihf/perl/5.20.2 /usr/local/share/perl/5.20.2 /usr/lib/arm-linux-gnueabihf/perl5/5.20 /usr/share/perl5 /usr/lib/arm-linux-gnueabihf/perl/5.20 /usr/share/perl/5.20 /usr/local/lib/site_perl . ./FHEM) at ./FHEM/99_Utils_FireTV.pm line 10, <$fh> line 4.
BEGIN failed--compilation aborted at ./FHEM/99_Utils_FireTV.pm line 10, <$fh> line 4.
habe ich etwas vergessen?
folgende codes haben es zum laufen gebracht:
sudo chmod 777 /usr/bin/
sudo apt-get install libswitch-perl
sudo chmod 777 /usr/bin/adb
Hallo,
bin ziemlicher Neuling im Bereich FHEM.
Wie binde ich das FireTV Modul ein? Also was muss ich eingeben "define FireTV .... ????
Ich steuer den FireTV jetzt über AMAD.
Das hat zwar etwas gedauert, aber läuft jetzt.
Ich kann zum Beispiel von FHEM aus Kodi starten. Welches der Hauptnutzfaktor des Fire ist.
Zitat von: HB86 am 14 April 2016, 08:13:30
Wie binde ich das FireTV Modul ein? Also was muss ich eingeben "define FireTV .... ????
Das ist kein Modul, sondern eine Funktionssammlung. Du legst die Datei 99_Utils_FireTV.pm im Modul-Verzeichnis deiner Fhem-Installation (idR ist das /opt/fhem/FHEM) ab und kannst sie dann (nach "reload 99_Utils_FireTV" oder "shutdown restart") in eigenem Perl-Code verwenden.
Zitat von: AmunRe am 19 April 2016, 21:50:35
Ich steuer den FireTV jetzt über AMAD.
Das hat zwar etwas gedauert, aber läuft jetzt.
Ich kann zum Beispiel von FHEM aus Kodi starten. Welches der Hauptnutzfaktor des Fire ist.
Ist es mit AMAD auch möglich die Richtungstasten umzusetzten?
Wenn ja, wie?
Da ich die FTUI (noch) nicht nutze habe ich mir die FireTV-Fernbedienung mit dem Modul "remotecontrol" gebastelt (siehe Bild).
Dabei habe ich den Buttons die Funktion ftv_up, ftv_down ..usw zugewiesen.
Ein entsprechendes Notify hab ich auch schon erstellt.
Leider weiß ich aber nicht genau, wie ich dieses definieren muss, damit die Fernbedienung funktioniert.
Dachte eigentlich das funktioniert mit --> FireTV { $EVENT("192.168.XX.XX") }
Kann mir evtl jemand helfen?
Zitat von: AmunRe am 19 April 2016, 21:50:35
Ich steuer den FireTV jetzt über AMAD.
Das hat zwar etwas gedauert, aber läuft jetzt.
Ich kann zum Beispiel von FHEM aus Kodi starten. Welches der Hauptnutzfaktor des Fire ist.
Ich bin immer wieder erstaunt darüber was alles mit AMAD gesteuert wird ;D
Grüße
Zitat von: HB86 am 20 April 2016, 10:04:59
Ist es mit AMAD auch möglich die Richtungstasten umzusetzten?
Wenn ja, wie?
Theoretisch wäre es denkbar. Voraussetzung wäre das die Playersoftware intents zu lässt und diese Dokumentiert sind. Glaube ich aber nicht wirklich dran.
Zitat von: CoolTux am 20 April 2016, 13:09:53
Ich bin immer wieder erstaunt darüber was alles mit AMAD gesteuert wird ;D
Grüße
Das war aber auch meine erste Idee abseits von der normalen und langweiligen Tabletsteuerung. Ohne Maus und/oder Tastatur für den FireTV ist die Konfiguration jedoch schwierig ;)
Zitat von: CoolTux am 20 April 2016, 13:12:24
Theoretisch wäre es denkbar. Voraussetzung wäre das die Playersoftware intents zu lässt und diese Dokumentiert sind. Glaube ich aber nicht wirklich dran.
Wenn ich mich nicht täusche, gibt es doch ein FHEM Modul für KODI (XBMC)!? Da ist der Umweg sicher nicht notwendig. Also mit AMAD starten und steuern über das Modul sollte möglich sein.
Hat vielleicht noch einer ne Idee zu meiner anderen Frage, betreffend remotecontrol und notify
Zitat von: HB86 am 20 April 2016, 12:43:36
Kann mir evtl jemand helfen?
Bin ja grade per PM dabei - schreibst du bitte nachher hier kurz auf, wie's geht? :-)
Danke an nesges
Habs jetzt endlich hinbekommen.
Das notify hab ich jetzt so definiert: FireTV { ftv_key($EVENT,"192.168.XX.XX") }
Bei dem Modul "remotecontrol" den Buttons dann einfach noch die entsprechenden KEY-EVENTS zuweisen und fertig.
Anstatt die KEY-EVENTS auszuschreiben kann man übrigens auch zahlen benutzen.
Siehe: http://www.aftvnews.com/how-to-remotely-control-an-amazon-fire-tv-or-fire-tv-stick-via-adb/
Muss natürlich in der Utils_FireTV geändert werden
Zitat von: marvin78 am 20 April 2016, 13:30:24
Das war aber auch meine erste Idee abseits von der normalen und langweiligen Tabletsteuerung. Ohne Maus und/oder Tastatur für den FireTV ist die Konfiguration jedoch schwierig ;)
Tastatur und Maus habe ich für die Konfiguration natürlich an den Fire angeschlossen. Der hat einen USB Port, mit einem HUB kannst Du beides anschließen. Ist ja nur für die Ersteinrichtung.
Zitat von: CoolTux am 20 April 2016, 13:09:53
Ich bin immer wieder erstaunt darüber was alles mit AMAD gesteuert wird ;D
Grüße
Es ist einfach ein Super Modul. Leider ist die Einrichtung unter dem Fire etwas schwierig, weil Du keinen Playstore hast.
Was die Tasten angeht, wäre schon super wenn das auch gehen würde. Leider ist wohl wenig dokumentiert. Wenn müsste man die Tasten der Fernbedienung nachbauen. Da diese überall gültig sind.
Aber ich geb zu, ich hab den Flow grad so um das starten der App erweitert bekommen. Bin da echt ein Anfänger weil ich Tasker vorgeprägt war/bin.
EDIT:
Ich ahbe grad mal bei Automagic geschaut, es gibt die Funktion "Steuere UI" mit der Keys sendbar sind:
ZitatBoolean sendKey(Number keyCode)
Simuliert die angegebene Taste (Automagic Eingabemethode wird benötigt).
Oder einfach der home Bildschirm: home()
Damit müsste es doch machbar sein Tasten zu simulieren?
Zitat von: marvin78 am 20 April 2016, 13:31:38
Wenn ich mich nicht täusche, gibt es doch ein FHEM Modul für KODI (XBMC)!? Da ist der Umweg sicher nicht notwendig. Also mit AMAD starten und steuern über das Modul sollte möglich sein.
Genau das mache ich so. Ich starte über AMAD Kodi und starte dann das Fernsehprogramm über Fhem. Ich glaub aber, es ging wohl eher darum noch andere Sachen anzusteuern wie Netflix und co.
Bei der Frage wegen den Richtungstasten gings mir eher weniger um den FireTV Stick.
Hab ne Android-Box mit Sat-Receiver .. und bei der würde ich gerne die Richtungstasten ansteuern. Und auf der ist und kommt Kodi nicht drauf!
Hallo,
ich würde gerne nochmal eine Frage von nesges aufgreifen:
Hast du dazu noch weiter gehende Infos? Evtl. eine Beschreibung der Inhalte von /sys/class? Oder ganz konkret: Ist es möglich damit den Playstatus bzw. den aktuell gespielten Titel abzufragen?
Gibt es da aktuelle Infos über die Machbarkeit?
Danke und viele Grüsse,
Wolfgang
Hallo zusammen,
ich bin seit einiger Zeit auf der Suche nach einer Möglichkeit Kodi auf meinem FireTV direkt ohne lästiges rumklicken zu starten.
Bisher habe ich mir mit der App FireStarter geholfen, mit der es möglich war mit einem doppelten "Home-Klick" eine beliebige App zu starten, doch leider funktioniert das schon seit ein paar Wochen nicht mehr. Ich bekomme es auch nicht mehr hin, Kodi auf der Startseite meines FireTV anzeigen zu lassen, was früher auch mal geklappt hat.
Durch Recherche in diesem Thread und auf Google bin ich auf die adb-Steuerung aufmerksam geworden und hab mir das Ganze gleich mal auf meinem RPi, auf dem auch fhem und meine sonstige Hausautomation läuft, installiert. Tests mit dem Absetzen einzelner Befehle haben sofort funktioniert.
Dann bin ich bei Amazon darauf gestoßen, dass man Apps auch direkt mit einem adb-Befehl starten kann = Perfekt für meine Anforderung, Kodi direkt mit einem Tastendruck auf meiner Harmony zu starten
Mit dem Befehl über SSH
adb shell monkey -p org.xbmc.kodi -c android.intent.category.LAUNCHER 1
startet kodi direkt ohne irgendwelche sonstigen Klicks. Wenn man den Part org.xbmc.kodi
durch den Package-Name einer anderen App tauscht, kann man jede beliebige App mit diesem Befehl starten.
Auf meinem RPi habe ich mir dann ein kleines Script gebastelt (Betonung liegt auf basteln, ich bin absoluter Linux-Amateur, aber es funktioniert; IP muss auf Euren FireTV angepasst werden)
#!/bin/bash
#zuerst adb killen um mögliche alte verbindungen zu löschen
adb kill-server
#adb starte
adb start-server
#adb mit fireTVbox im wohnzimmer verbinden
adb connect 192.168.178.XX
#über adbKommando kodi starten
adb shell monkey -p org.xbmc.kodi -c android.intent.category.LAUNCHER 1
#adbVerbindung wieder trennen
adb disconnect 192.168.178.XX
#adb stoppen
adb kill-server
Dieses Script rufe ich dann aus fhem mit einem DOIF, welches auf meine Kodi Harmony-Aktion reagiert, auf
([Harmony_Wohnen:"activity: Kodi"])({system('sudo /home/pi/firetv.sh&');;})
Evtl. kann das hier jemand brauchen
Gruß
Hermann
Ein richtig schönes FireTV-Modul/Lösung gibt es aber derzeit leider noch immer nicht? :)
Um AMAD auf dem FireTV ans Laufen zu bringen, muss man ein paar Verrenkungen machen, aber es geht.
Auf meinem FireTV der 1. Generation funktioniert die folgende Vorgehensweise.
1. Auf dem Fire TV die App "Downloader" über den Appstore runterladen. Damit kann man beliebige Dateien von Webservern herunterladen. Man benötigt nur die URL. Wenn man eine .apk-Datei herunter lädt, kann sie anschließend auch gleich installiert weren (wichtig: Vorher unter System/Entwicklereinstellungen sicher stellen, dass man Apps aus unbekannten Quellen installieren kann).
2. Google bemühen, um einen Link zur APK-Datei von Automagic zu finden. Da ihr die URL hinterher im Downloader eintragen müsst, kann das anstrengend sein, wenn ihr a) keine Tastatur am FireTV angeschlossen habt und b) sie besonders lang ist :) Dann kann man den Umweg gehen, und die Datei auf einen lokalen Webserver kopieren und umbenennen (habe sie bei mir auf meinen pi unter /var/www/html abgelegt.
Automagic wird dann auf dem FireTV installiert.
3. Für die Flowsets müsst ihr wieder einen Weg finden, sie auf den FireTV zu bringen. Ich habe das auf die gleiche Weise gemacht, wie mit der APK-Datei, d.h. Flowset-XML aus dem FHEM-Verzeichnis kopieren, so dass ich mit dem Downloader darauf zu greifen konnte. Dann die URL im Downloader eintrag und Datei runterladen.
4. AMAD-Einrichtung gemäß WIKI-Anleitung
5. Im Automagic die Flowsets importieren. Das geht wie bei der normalen Handy-App auch, aber kann nur mit der Fire-TV-Fernbedienung etwas anstrengend sein. Die heruntergeladene xml-Datei liegt unter "Interner Speicher"/"Downloader.
Anschließend wie gewohnt die einzelnen Flows aktivieren und im FHEM auf das eintrudeln der Readings warten.
Moinsen,
ich bin schon eine Weile auf der Suche nach einer Lösung für mein FHEM-FireTV-Problem.
Kurze Beschreibung:
Hardware+Dienste:
RaspberryPi mit FHEM und LogitechMediaServer
Logitech Harmony
FireTV-Stick am Fernseher gesteuert durch Harmony
Also folgendes:
Am Fernseher habe ich den FireTV-Stick und nutze diesen als SqueezeBox zum Streamen von Musik vom LogitechMediaServer auf den Stick.
Dazu starte ich auf dem FireTV eine SqueezeBox-Client-App in meinem Fall SB-Player. Der Logitechmedia-Server erkennt das als Player und ich kann bspw. NetzRadio drauf streamen.
Ich habe dafür in der Harmony eine extra Activity angelegt namens MUSIK.
Mein Problem ist, dass das FireTV-OS bei Inaktivität Apps killt und in meinem Fall dummerweise ab und zu die SB-Player-App.
Daher suche ich eine Möglichkeit beim Wechsel auf die Activity MUSIK auch die App vorsorglich anzustarten am besten aus FHEM heraus.
Das HarmonyHUB ist in FHEM bereits eingebunden und ich kann auf den Event beim Wechsel auf die Activity MUSIK reagieren, was ich auch bereits tue, um beim Wechsel auf MUSIK auch den Player zu starten.
Das funktioniert prima aber nur, wenn die App läuft.
Jetzt meine Frage. Kann ich aus FHEM heraus Apps auf dem FireTV starten und wenn wie?
Gruß
Björn
Zitat von: loungelizard am 21 Januar 2017, 12:33:24
Um AMAD auf dem FireTV ans Laufen zu bringen, muss man ein paar Verrenkungen machen, aber es geht.
Auf meinem FireTV der 1. Generation funktioniert die folgende Vorgehensweise.
1. Auf dem Fire TV die App "Downloader" über den Appstore runterladen. Damit kann man beliebige Dateien von Webservern herunterladen. Man benötigt nur die URL. Wenn man eine .apk-Datei herunter lädt, kann sie anschließend auch gleich installiert weren (wichtig: Vorher unter System/Entwicklereinstellungen sicher stellen, dass man Apps aus unbekannten Quellen installieren kann).
2. Google bemühen, um einen Link zur APK-Datei von Automagic zu finden. Da ihr die URL hinterher im Downloader eintragen müsst, kann das anstrengend sein, wenn ihr a) keine Tastatur am FireTV angeschlossen habt und b) sie besonders lang ist :) Dann kann man den Umweg gehen, und die Datei auf einen lokalen Webserver kopieren und umbenennen (habe sie bei mir auf meinen pi unter /var/www/html abgelegt.
Automagic wird dann auf dem FireTV installiert.
3. Für die Flowsets müsst ihr wieder einen Weg finden, sie auf den FireTV zu bringen. Ich habe das auf die gleiche Weise gemacht, wie mit der APK-Datei, d.h. Flowset-XML aus dem FHEM-Verzeichnis kopieren, so dass ich mit dem Downloader darauf zu greifen konnte. Dann die URL im Downloader eintrag und Datei runterladen.
4. AMAD-Einrichtung gemäß WIKI-Anleitung
5. Im Automagic die Flowsets importieren. Das geht wie bei der normalen Handy-App auch, aber kann nur mit der Fire-TV-Fernbedienung etwas anstrengend sein. Die heruntergeladene xml-Datei liegt unter "Interner Speicher"/"Downloader.
Anschließend wie gewohnt die einzelnen Flows aktivieren und im FHEM auf das eintrudeln der Readings warten.
Damit sollte es gehen. Du kannst dann den Befehl openApp verwenden. Musst aber genau wissen wie der Packagename der App ist.
das hatte ich schon vermutet, aber bleibt denn das automagic bei dir am laufen oder wird das auch beendet wie mein sb player?
Das tool lässt sich übrigens via apps2fire sehr leicht auf den stick transferieren. Besser als mit downloader.
Alternativ kannst du auch per adb und ein bisschen Perl starten, Debugging muss auf dem FireTV aktiv sein:
sub ftv_adb($$) {
my $cmd = shift;
my $host = shift;
# aufs wesentliche gekürzt...
system("adb disconnect");
system("adb connect ".$host);
system("adb $cmd");
}
sub ftv_key($;$) {
my $key = shift;
my $host = shift;
ftv_adb("shell input keyevent $key", $host);
}
sub ftv_wakeup(;$) {
ftv_key("KEYCODE_WAKEUP", shift);
}
sub ftv_app($;$$) {
my $app = shift;
my $action = shift || 'start';
my $host = shift;
ftv_wakeup($host);
if($action eq 'start') {
ftv_adb("shell monkey -p $app -c android.intent.category.LAUNCHER 1", $host);
} elsif($action eq 'stop') {
ftv_adb("shell am force-stop $app", $host);
}
}
sub ftv_kodi(;$$) {
my $action = shift || 'start';
my $host = shift;
ftv_app('org.xbmc.kodi', $action, $host);
}
Die ftv_kodi startet das Package org.xbmc.kodi. Das müsstest du entsprechend für deine App anpassen. Liste der installierten Packages per adb shell pm list packages -f -3
@nesges die ADB-Variante muss ich mir mal zu Gemüte führen, dann ich damit auch den FireTV aufwecken und in den Schlaf schicken? Bei mir geht nämlich leider CEC scheinbar nicht.
@all wenn jemand eine Automagic Version als URL hat, bin ich sehr daran interessiert (PN).
Oder installiert ihr die kostenlose Testversion (http://automagic4android.com/de/testversion APK: http://automagic4android.com/automagic/eval/Automagic_1_32_0.apk ) und diese kann man InApp als Vollversion freischalten?
Zitat von: Hauswart am 15 Februar 2017, 15:40:54
@nesges die ADB-Variante muss ich mir mal zu Gemüte führen, dann ich damit auch den FireTV aufwecken und in den Schlaf schicken? Bei mir geht nämlich leider CEC scheinbar nicht.
Ja, das geht: KEYCODE_WAKEUP weckt auf, KEYCODE_POWER toggelt Schlaf oder Wach, KEYCODE_WAKEUP+KEYCODE_POWER legt ihn demnach schlafen. Unter http://developer.android.com/reference/android/view/KeyEvent.html findest du eine generelle gültige Liste von Android-Keycodes. Nicht alle sind auf dem FireTV sinnvoll oder möglich, ich hab bei mir folgende implementiert um die Funktionen der Fernbedienung abzubilden:
sub ftv_up(;$) {
ftv_key("KEYCODE_DPAD_UP", shift);
}
sub ftv_left(;$) {
ftv_key("KEYCODE_DPAD_LEFT", shift);
}
sub ftv_enter(;$) {
ftv_key("KEYCODE_DPAD_CENTER", shift);
}
sub ftv_right(;$) {
ftv_key("KEYCODE_DPAD_RIGHT", shift);
}
sub ftv_down(;$) {
ftv_key("KEYCODE_DPAD_DOWN", shift);
}
sub ftv_back(;$) {
ftv_key("KEYCODE_BACK", shift);
}
sub ftv_home(;$) {
ftv_key("KEYCODE_HOME", shift);
}
sub ftv_menu(;$) {
ftv_key("KEYCODE_MENU", shift);
}
sub ftv_prev(;$) {
ftv_key("KEYCODE_MEDIA_PREVIOUS", shift);
}
sub ftv_playpause(;$) {
ftv_key("KEYCODE_MEDIA_PLAY_PAUSE", shift);
}
sub ftv_next(;$) {
ftv_key("KEYCODE_MEDIA_FAST_FORWARD", shift);
}
sub ftv_wakeup(;$) {
# wakeup from daydream
ftv_key("KEYCODE_WAKEUP", shift);
}
sub ftv_power(;$) {
# press power button -> go to sleep or wakeup
ftv_key("KEYCODE_POWER", shift);
}
(ftv_key aus https://forum.fhem.de/index.php/topic,28770.msg585657.html#msg585657)
Bisher habe ich leider noch keine Möglichkeit gefunden vom FireTV zu lesen ("was läuft grade?"), die über "läuft das Package X?" hinaus geht, von daher reicht mir die lose Funktionssammlung. Wenn Interesse an einem reinen Remotecontrol-Modul besteht, würd ich das aber vielleicht mal ordentlich verpacken.
Zitat von: nesges am 15 Februar 2017, 16:43:37
Wenn Interesse an einem reinen Remotecontrol-Modul besteht, würd ich das aber vielleicht mal ordentlich verpacken.
Von meiner Seite ja :) Suche schon lange eine Möglichkeit den FireTV zu steuern. Eine Funktion wie ich sehr vermisse "Sleeptimer" mit FHEM wäre dies dann machbar. Der Fernseher (da CEC scheinbar bei mir nicht läuft) hat auch ein Sleeptimer.
Hier: https://forum.fhem.de/index.php/topic,28770.msg335420.html#msg335420 hattest du schon mal etwas gepostet, aber ich weiss nicht, ob dies noch aktuell ist.
Zitat von: Hauswart am 15 Februar 2017, 17:08:03
Eine Funktion wie ich sehr vermisse "Sleeptimer" mit FHEM wäre dies dann machbar.
Prinzipiell wäre das ja mit at lösbar:
define FTVSLEEP at +01:30:00 {ftv_wakeup('192.168.178.41') && ftv_power('192.168.178.41')}ZitatHier: https://forum.fhem.de/index.php/topic,28770.msg335420.html#msg335420 hattest du schon mal etwas gepostet, aber ich weiss nicht, ob dies noch aktuell ist.
Ist halbwegs aktuell. Ein bisschen was ist dazu gekommen und ftv_apps geht geschickter:
sub ftv_apps(;$) {
my $host = shift;
ftv_wakeup($host);
ftv_adb("shell am start -n com.amazon.tv.settings/.tv.AllApplicationsSettingsActivity", $host);
}
In meiner lokalen 99_Utils_FireTV.pm sind ein paar Sachen drin, die spezifisch für meine Installation sind, daher grade kein volles Update.
Kurze Nebenfrage wieso Aufwachen und dann schlafen schicken? Geht nicht direkt schlafen schicken?
Bei Gelegenheit wäre ich natürlich trotzdem über ein komplettes aktualisiertes File froh. Auch wenn ich glaube mit dem Infos schon sehr viel umsetzen zu können.
Edit: Ein coole FireTV-Modul wäre sicherlich auch etwas :)
Zitat von: Hauswart am 15 Februar 2017, 22:40:41
Kurze Nebenfrage wieso Aufwachen und dann schlafen schicken? Geht nicht direkt schlafen schicken?
Weil du nur in Kombination sicher bist, dass FireTV danach auch schläft, denn KEYCODE_POWER ist kein Sleep-Befehl, sondern KEYCODE_POWER toggelt. Und Fhem kennt den aktuellen Zustand nicht. Also sorgst du mit KEYCODE_WAKEUP erstmal dafür, dass der Zustand definiert ist und toggelst dann:
FireTV ist wach: KEYCODE_POWER -> FireTV schläft
FireTV ist schläft: KEYCODE_POWER -> FireTV ist wach
FireTV ist wach: KEYCODE_WAKEUP+KEYCODE_POWER -> FireTV schläft
FireTV ist schläft: KEYCODE_WAKEUP+KEYCODE_POWER -> FireTV schläft
Zitat von: Borstel am 15 Februar 2017, 13:30:54
das hatte ich schon vermutet, aber bleibt denn das automagic bei dir am laufen oder wird das auch beendet wie mein sb player?
Das tool lässt sich übrigens via apps2fire sehr leicht auf den stick transferieren. Besser als mit downloader.
Automagig läuft solang der Fire an ist immer.
Ich habe die hier verstreuten Funktionen in ein Modul gepackt: https://forum.fhem.de/index.php/topic,68748.0.html