unfoldedcircle / integration-androidtv

Android TV integration for Remote Two
https://www.unfoldedcircle.com/
Mozilla Public License 2.0
1 stars 5 forks source link

Added support for multiple instances of Android TV #31

Closed albaintor closed 7 months ago

albaintor commented 8 months ago

Hi,

I have added support for multiple Android devices based on your work on AppleTV integration. I have tested successfully the initialization of the integration with one device, then the addition of another AndroidTV device which gives me a second entity.

I have managed to create activities with both devices. However I haven't tried (yet) to send commands from one device or another as I was using the core simulator (which cannot send commands right ?)

I have also updated translations

albaintor commented 8 months ago

Hi,

ok no problem. I thought that it was a better idea to start from your branch as it is the latest one. It is working on my core simulator. However I don't understand why on the simulator I have the user form displayed (capture 1) and on my real device, the remote do receive the websocket message but won't display the form (capture 2):

image

image

It is strange, maybe because it is an external integration from the device side (I added it through a POST like you told). The remote just ignores the message :

2024-03-13 15:24:09.774096 +00:00   core    NOTICE  Ok(DriverSetupChange { event_type: Setup, state: WaitUserAction, error: None, require_user_action: Some(Input(SettingsPage { title: {"de": "Setup Modus", "en": "Setup mode"}, settings: [Setting { id: "info", label: {"en": "Discover or connect to Android TV device", "fr": "Découvrir ou connexion à l'appareil Android TV", "de": "Suche oder Verbinde auf Android TV Gerät"}, field: Label(Label { value: {"de": "Leer lassen, um automatische Erkennung zu verwenden.", "en": "Leave blank to use auto-discovery.", "fr": "Laissez le champ vide pour utiliser la découverte automatique."} }) }, Setting { id: "address", label: {"de": "IP-Adresse", "en": "IP address", "fr": "Adresse IP"}, field: Text(Text { value: Some(""), regex: None }) }] })) })

Anyway if you are on it this is not really useful to go further and dig this around.

albaintor commented 8 months ago

Hi again, my PR is incomplete : I just saw that the driver generate a pair certificate files androidtv_remote_cert.pem and androidtv_remote_key.pem -> I didn't pay attention. One pair of files per device is needed...

zehnm commented 7 months ago

Closing: new PR submitted