Beiträge von lukas.roegner

    Da der gescopte Name nicht funktioniert hat, habe ich das Plugin umbenannt. Ist nun unter dem Namen homebridge-apple-tv-remote auf NPM. Auch die URL für GitHub hat sich geändert. Die config.json müsst ihr nicht anpassen.

    Gestern Abend kam eine Anfrage über GitHub, daher habe ich das Plugin als @lukas.roegner/homebridge-appletv auf NPM veröffentlicht.


    Allgemein, wenn ihr ein per GitHub installiertes Plugin updaten wollt, dann einfach npm install -g <URL> verwenden.

    Morgen!


    Die Räume an sich werden nicht gemuted, sondern - wenn aktiviert - fügen sich einer bestehenden aktiven Gruppe hinzu. Über die priorities Liste kannst du für jeden Raum festlegen, in welcher Reihenfolge die anderen Speaker auf Aktivität gecheckt werden sollen.


    Um alle Gruppen aufzulösen kannst du einfach alle in HomeKit angezeigten Speaker auf "aus" stellen.

    Noch ein Update: ich habe für die API einen neuen Endpunkt /sonos-favorites eingebaut. Sobald man sich eine Playlist oder Radio in die Sonos-Favoriten in der Sonos App legt und dann diesen Endpunkt der API aufruft, bekommt man ganz einfach die URL heraus.

    Habe das Plugin aktualisiert, schaut euch einfach die REAME der API an, hier gebe ich auch current track Uri raus und man kann auch per POST ein current track setzen. Am Besten mal ein GET machen, wenn Spotify spielt, die URI kopieren und mit einem POST das Abspielen testen. Wenn das funktioniert, dann kann ich so etwas wie eine "Standard-Playlist" als Setting für die HomeKit Schalter einbauen.

    Zitat

    Gibt es eigentlich die Möglichkeit den Lautsprechern defaultmässig eine Playlist, Radiosender o.ä. zuzuweisen? Durch das dynamische gruppieren/ungruppieren werden ja die Playlists der Lautsprecher geleert.

    Ja, es gibt in der Sonos API grundsätzlich die Möglichkeit, explizit eine Quelle zu starten, z.B. eine Spotify Playlist. Das Problem daran ist, dass die Playlists (oder Radiosender o.Ä.) eine eindeutige URL haben, welche man angeben muss...und die muss man erst mal herausfinden. Ich überlege mal, ob man das irgendwie machen kann ohne umständlich auf die Sonos API zugreifen zu müssen.

    Update des homebridge-appletv Plugin: Wenn man den On/Off-Schalter nochmal auf den gleichen Status stellt, dann wurde dafür früher auch der Command an den Apple TV gesendet, das habe ich nun unterbunden.


    Beispiel: In einer Szene habt ihr "Apple TV ausschalten" per Switch integriert. Wenn der Apple TV bereits aus ist und ihr die Szene aktiviert habt, dann hat er sich eingeschaltet (weil es den Menu-Button Command erhalten hat). Das ist nun gefixt (Danke an Nastra für das Issue #4.


    Für alle, die eine Hilfe bei der Nutzung der API über Shortcuts brauchen, hier eine Anleitung (deutsch):

    https://gist.github.com/lukasr…37d0faa917104fe57d923a535

    Reine Ästhetik-Entscheidung. Bei meinen Plugins nutze ich Schalter meistens für sekundäre Aktionen (also Einstellungen von Geräten). Daher habe ich mich dazu entschieden, Steckdosen zu verwenden...und es hat noch keiner ein Issue auf GitHub erstellt, dass er es gerne konfigurieren möchte ;)

    DJay Du bist aber neugierig 8o


    Hintergrund:

    Ich habe zu Zeiten des Nuki SmartLock 1.0 (welches ja noch nicht HomeKit kompatibel war) das Plugin von Benzman81 genutzt.

    Dann bin ich zum Danalock gewechselt, da die nativen HomeKit Support hatten. War aber mit dem Auto-Unlock nie so richtig zufrieden.

    Also bin ich nach dem Release des Nuki SmartLock 2 wieder zu Nuki gewechselt, dieses aber über natives HomeKit eingebunden.


    Dann kam ja die nello Ära und ich habe angefangen, selbst Plugins für homebridge zu schreiben. Der nello an sich war schon sehr cool, aber mich hat immer gestört, dass man Notifications kompliziert über einen Webhook-Relay-Server routen musste.


    Als Nuki dann die ersten Infos zum Opener hat durchsickern lassen, hat es mich schon in den Fingern gejuckt und ich habe dann zum Launch (vorerst lokal auf meinem PC) ein Plugin für die Bridge API zur Steuerung des Openers geschrieben. Wie ihr vielleicht wisst ist nello pleite gegangen und die Server-Kommunikation ist unzuverlässig bis unmöglich geworden ( DJay kann ein Lied davon singen). Daher habe ich mich dann dazu entschieden, auf dem "Produktiv-System" auf Nuki umzusteigen und das Plugin auch mal ins GitHub einzuchecken. Da nicht kompliziert, habe ich den SmartLock Support noch eingebaut. Ich persönlich nutze weiterhin natives HomeKit für das SmartLock, Homebridge nur für den Opener.


    Unterschiede:

    Ich denke vom Funktionsumfang gibt es kaum Unterschiede zwischen den Plugins. Einziger Unterschied in der Architektur des Plugins ist, dass im Plugin von Benzman81 die Callbacks von Aktionen erst nach erfolgreichem Abschluss aufgerufen werden, mein Plugin fährt den Fire-and-Forget Ansatz. Das merkt man, wenn man z.B. in der Apple Home app auf die Schloss-Kachel drückt, um zu schließen/öffnen. Bei Benzman81 sieht man dann einen Lade-Spinner während der (Auf-)Schließ-Aktion, bei meinem Plugin wird der Status des Kachel direkt geändert. Das stimmt so, oder Benzman81?

    Update des Plugins: Status für On/Off und Play/Pause integriert - Play/Pause funktioniert bei mir unter Netflix und Apple TV App ganz gut, bei Prime Video hängt es etwas nach. Das liegt jedoch leider an den Messages, die der Apple TV sendet. Feel free to try out!


    Nochmal einen Dank an stickpin (Thank you!!!), durch sein neustes Update der node-appletv-x library hat der die Proto-Message Definitionen aus dem pyatv Projekt in das Node Package integriert und somit geupdated.