NEWS
[Neuer Adapter] Undok FSAPI
-
@hallo-amt Glückwunsch. Habe es eben kurz getestet. Läuft sofort. Laut/Leise Ein/Aus . Presets auswählen.
Klasse!
Wenn erwünscht, schaue ich morgen mal nach, welches Medion Radio ich genau habe.
Ciao Kalle
Ps: Medion MD 87505 -
@Ritschy2000 said in [Neuer Adapter] Undok FSAPI:
Eventl. ist es machbar, in einer Instanz mehrere Geräte einzubinden oder hast du deine Geräte
jeweils in einer eigenen Instanz? Habe insgesamt 4 Geräte, dann müsste ich keine
4 Instanzen installieren. Hat aber natürlich keine Priorität.Meine Geräte sind jeweils in einer eigenen Instanz. Das ist auch gut so, wenn eine Instanz abraucht geht die andere noch. Und natürlich macht es weniger Arbeit, wenn der Adapter nur ein Gerät kennen muss. Der Aufwand für mehrere Geräte in einer Instanz ist gar nicht so klein, die Konfiguration für X Geräte in einen Dialog zu basteln wäre auch nicht so schön.
Wenn ihr genaue Bezeichnungen vpn den Radios habt ist super, aber das werden so viele Modelle sein, die diese API nutzen, daß ich die genaue Bezeichung nur bei Fehlern brauche. Die können dann auf eine Liste für besondere Einstellungen, wenn sich der Fehler nicht beheben lässt.
-
Super das du dich dem Frontier Silikon Radios annimmst
Habe 4 davon und gerade für jedes eine Instanz installiert. Werde dann mal testen
-
@hallo-amt
Adapter schnell über github link im admin installiert. Gerät wird sofort erkannt und die Datenpunkte wurden aufgefüllt.
An aus usw kurz getestet, sieht gut aus. Danke schon mal, freue mich auf weitere Updates. -
@e-s said in [Neuer Adapter] Undok FSAPI:
@hallo-amt
Gerät wird sofort erkannt und die Datenpunkte wurden aufgefüllt.Da bitte nicht wundern, wenn kurz die Musik aus geht, um die ganzen Favoriten abzufragen muss ich kurz in den passenden Modus schalten. Damit dabei kein Ohren zerfressendes Rauschen oder andere störende Geräusche zu hören sind wird das Gerät bei Bedarf stummgeschaltet. Heute Abend baue ich noch ein, daß die aktuellen Favoriten bei einem Moduswechsel aktualisiert werden, dank der Benachrichtugungen vom Radio bekommt man den Moduswechsel schnell mit.
Doof nur, daß man sich auf dem Display bei DAB und Internetradio den Interpreten und den Titel des gespielten Liedes anzeigen lassen kann, das Radio die aber nicht über die API ausgibt. Also nicht wundern, wenn nicht alles befüllt wird. -
Habe gerade mal getestet und alle Datenpunkte wurden angelegt und können auch geschaltet werden. Was mir jedoch dabei auffällt ist nachdem ich den Radiosender gewechselt habe, der Datenpunkte für die URL zum Senderlogo nicht gefüllt werden.
Anbei mein Log;
frontier_silicon.1 2020-11-02 17:34:31.027 debug (8341) http://192.168.178.26:80/fsapi/GET_NOTIFIES?pin=1234&sid=1632484978 frontier_silicon.1 2020-11-02 17:34:31.026 debug (8341) {"val":true,"ack":true,"ts":1604334080608,"q":0,"from":"system.adapter.frontier_silicon.1","user":"system.user.admin","lc":1604334080608} frontier_silicon.1 2020-11-02 17:34:30.021 debug (8341) {"status":["FS_TIMEOUT"]} frontier_silicon.1 2020-11-02 17:34:03.803 debug (8341) http://192.168.178.26:80/fsapi/GET_NOTIFIES?pin=1234&sid=1632484978 frontier_silicon.1 2020-11-02 17:34:03.802 debug (8341) {"val":true,"ack":true,"ts":1604334080608,"q":0,"from":"system.adapter.frontier_silicon.1","user":"system.user.admin","lc":1604334080608} frontier_silicon.1 2020-11-02 17:34:02.638 debug (8341) {"status":["FS_TIMEOUT"]} frontier_silicon.1 2020-11-02 17:33:37.625 debug (8341) http://192.168.178.26:80/fsapi/GET_NOTIFIES?pin=1234&sid=1632484978 frontier_silicon.1 2020-11-02 17:33:37.624 debug (8341) {"val":true,"ack":true,"ts":1604334080608,"q":0,"from":"system.adapter.frontier_silicon.1","user":"system.user.admin","lc":1604334080608} frontier_silicon.1 2020-11-02 17:33:37.482 debug (8341) system.adapter.admin.0: logging true frontier_silicon.1 2020-11-02 17:33:36.620 debug (8341) {"status":["FS_TIMEOUT"]} frontier_silicon.1 2020-11-02 17:33:09.332 debug (8341) http://192.168.178.26:80/fsapi/GET_NOTIFIES?pin=1234&sid=1632484978 frontier_silicon.1 2020-11-02 17:33:09.331 debug (8341) {"val":true,"ack":true,"ts":1604334080608,"q":0,"from":"system.adapter.frontier_silicon.1","user":"system.user.admin","lc":1604334080608} frontier_silicon.1 2020-11-02 17:33:08.327 debug (8341) Item: netremote.play.status - [{"u8":["2"]}] frontier_silicon.1 2020-11-02 17:33:08.325 debug (8341) Item: netremote.play.info.text - [{"c8_array":["Green light / Lorde"]}] frontier_silicon.1 2020-11-02 17:33:08.325 debug (8341) {"status":["FS_OK"],"notify":[{"$":{"node":"netremote.play.info.text"},"value":[{"c8_array":["Green light / Lorde"]}]},{"$":{"node":"netremote.play.status"},"value":[{"u8":["2"]}]}]} frontier_silicon.1 2020-11-02 17:33:08.314 debug (8341) http://192.168.178.26:80/fsapi/GET_NOTIFIES?pin=1234&sid=1632484978 frontier_silicon.1 2020-11-02 17:33:08.313 debug (8341) {"val":true,"ack":true,"ts":1604334080608,"q":0,"from":"system.adapter.frontier_silicon.1","user":"system.user.admin","lc":1604334080608} frontier_silicon.1 2020-11-02 17:33:07.309 debug (8341) Item: netremote.play.status - [{"u8":["1"]}] frontier_silicon.1 2020-11-02 17:33:07.308 debug (8341) {"status":["FS_OK"],"notify":[{"$":{"node":"netremote.play.status"},"value":[{"u8":["1"]}]}]}
-
@hallo-amt Danke für den Adapter. Ich habe ihn mal installiert und mit meinem "JBL Playlist" getestet. Dieser ist kein Radio in dem Sinne, sondern gibt Inhalte nur über Spotify Connect, Google Cast und Bluetooth (und AUX) wieder. Bluetooth verwende ich damit nie, die beiden anderen Protokolle aber häufig. Das Gerät ist über die FSAPI ansprechbar.
Bei Google Cast kann ich den Chromecast (Google Home)-Adapter verwenden, bei Spotify Connect bekomme ich damit aber keine Titelinfos und die Lautstärkeeinstellung ist in dem Fall damit auch zickig. Darum ist es gut, dass es jetzt deinen Adapter auch gibt.
Was mir beim Testen aufgefallen ist, was nicht funktioniert:
-
Der Adapter listet unter Modes nicht die Google Cast Funktion mit auf. Wenn ich über Google Cast verbunden bin, wird bei media.input im Adapter weiter Spotify angezeigt. Hier die Ausgabe der validModes meines Gerätes von der API:
-
Der Artist wird beim Liedwechsel (Spotify oder Google Cast) nicht aktualisiert.
Ansonsten sieht es bisher schon gut aus.
Vielen Dank! -
-
@claus1993 said in [Neuer Adapter] Undok FSAPI:
Was mir jedoch dabei auffällt ist nachdem ich den Radiosender gewechselt habe, der Datenpunkte für die URL zum Senderlogo nicht gefüllt werden.
Ehrlich gesagt, bei mir auch nicht. Kannst du mal versuchen, ob die URL befüllt wird, wenn du Internet Radio nimmst? Die URL kommt nicht vom Radio, die ist von vTuner oder was SF grad nutzt.
@Steff75 said in [Neuer Adapter] Undok FSAPI:
Der Adapter listet unter Modes nicht die Google Cast Funktion mit auf. Wenn ich über Google Cast verbunden bin, wird bei media.input im Adapter weiter Spotify angezeigt. Hier die Ausgabe der validModes meines Gerätes von der API:
Das kann sein, die Modi mit
selectable=0
werden gerade rausgefiltert. Das liegt daran, daß bei meinen beiden ein Modus DMR mit ausgegeben wird, den die offiziell nicht können. Nein, ich hab noch nicht ausprobiert, ob die den Modus lernen können, wäre spannend
Vielleicht muss ich für Google Cast und Konsorten eine Ausnahme von dieser Regel einbauen.@Steff75 kannst du mal versuchen, mit http://IP:80/fsapi/SET/netRemote.sys.mode?pin=PIN&sid=SID&value=0 (oder Undok) den Modus aktiv auf Google Cast umzuschalten? Die Werte für PIN und SID stehen im Debuglog drin. Ich befürchte, daß der Modus zwar existiert, aber auch über die API nicht aufrufbar ist.
Alternativ lasse ich den Knopf zum Umschalten weg und ignoriere den Wert beimode.selected
.@Steff75 said in [Neuer Adapter] Undok FSAPI:
Der Artist wird beim Liedwechsel (Spotify oder Google Cast) nicht aktualisiert.
Vielleicht muss ich mir doch mal einen Spotify Zugang holen um das auszuprobieren. Bisher nehme ich dafür halt Bluetooth, da werden bei mir keine Titelinformationen übertragen. Also nichtmal am Radio angezeigt, obwohl die Definition der API das erlaubt.
Die API kann viel mehr, als die Radios wirklich nutzen. Ich befürchte, die Implementierung auf den Radios ist genau auf Undok zugeschnitten...
Und danke an alle für das Testen.
-
@Steff75 Google Cast ist jetzt in den Modi enthalten.
Die Favoriten werden beim Wechsel in einen anderen Modus aktualisiert.Auf Github ist die aktuelle Version 0.0.3.
-
@hallo-amt Super, dsnke.
Ich werde es morgenl ausprobieren. -
@hallo-amt said in [Neuer Adapter] Undok FSAPI:
@claus1993 said in [Neuer Adapter] Undok FSAPI:
Was mir jedoch dabei auffällt ist nachdem ich den Radiosender gewechselt habe, der Datenpunkte für die URL zum Senderlogo nicht gefüllt werden.
Ehrlich gesagt, bei mir auch nicht. Kannst du mal versuchen, ob die URL befüllt wird, wenn du Internet Radio nimmst? Die URL kommt nicht vom Radio, die ist von vTuner oder was SF grad nutzt.
Ehrlich gesagt meinte ich natürlich das Internetradio ....wer hört den Heute noch Radio über Antenne
-
@Ritschy2000 sagte in [Neuer Adapter] Undok FSAPI:
Eventl. ist es machbar, in einer Instanz mehrere Geräte einzubinden oder hast du deine Geräte
jeweils in einer eigenen Instanz? Habe insgesamt 4 Geräte, dann müsste ich keine
4 Instanzen installieren. Hat aber natürlich keine Priorität.Dem schließe ich mich auch an, da ich hier folgende Geräte zum Einbinden hätte:
- ein Silvercrest Internetradio SIRD 14 C4
- zwei Silvercrest WLAN-Lautsprecher SMRS 18 A1
- zwei Silvercrest WLAN-Lautsprecher SMRS 30 A1
Das SIRD 14C4 habe ich schon mal eingegeben und in der Objekteliste taucht auch so Vieles auf. Muss nur noch sehen, wie ich es ein- /ausgeschaltet bekomme und ggf die Lautstärke verändern kann.
Und falls es irgendwie geht wäre es noch schön, dem Adapter die URL einer mp3-Datei mitzugeben, die dann auf den ausgewählten Geräten ausgegeben wird, ähnlich wie man es bei den SONOS-Lautsprechern machen kann.Helfe gerne, so zeitnah wie möglich, wo und wie ich kann
-
Auch Luxus im Moment, aber wenn man in der Config neben der URL auch noch einen individuellen Namen zur Nutzung in der Objekteliste einbauen könnte, würde es bei mehr als einer Installation die Übersicht in der Liste steigern
-
Habe mal das SIRD 14C4 und zwei SMRS 30A1 über drei Adapterinstallationen eingebunden.
Soweit ich sehen kann, funktioniert die Erkennung der Geräte, ihrer Einstellungen, das manuelle Auslesen der Favoriten und auch der Wechsel der Modi. Da ich hier aber nur mit Internetradio gearbeitet habe und nicht über die anderen angebotenen Dienste verfüge, kann ich nichts zu deren Funktionsweise sagen.
Wie man das Abspielen einer mp3-Datei über URL erledigt, entzieht sich derzeit noch meiner Kenntnis. Es gibt jedoch über das Windowsprogramm "FS-Radio-Remote" oder die Android-APP "SilverCrest Smart Audio" die Möglichkeit über die Quelle "Music Player" und der Auswahl eines Speicherortes z.B. auf der Freigabe der Fritzbox eine dort als abgelegte mp3-Datei wiederzugeben. Wahrscheinlich geht es sogar noch einfacher über eine URL-Auswahl, aber das habe ich bisher auch noch nicht durchschaut.
Was mir noch aufgefallen ist: Zumindest die Android-APP hat auch eine Pause- und somit auch Play-Taste, mit der man die Widergabe anhalten und wieder abspielen kann. An den Geräten sind die Tasten hierfür ja auch vorhanden.
Und. Das scheint aber ein grundsätzliches Problem zu sein. Wenn ich mit einer der beiden o.g. Programme aus Windows oder Android auf ein übder den Adapter angebundenes Gerät gehe, dann übernimmt dieses scheinbar vollkommen die Kontrolle und der Adapter geht in den Modus
"status":["FS_TIMEOUT"]} Connection error
und muss erneut gestartet werden, nachdem die Apps keinen Zugriff mehr auf das jeweilige Gerät haben.
Und die Krönung irgendwann ganz am Ende der Entwicklung wäre natürlich, wenn man den Adapter an den SayIt-Adapter angliedern und in dieser Kombination Ausgaben auch über diese Geräte tätigen kann (wie bisher auch über die SONOS-Lautsprecher) . Aber dafür muss man auch noch an den SayIt-Adapter ran. Also momentan eher Zukunftsmusik
Nochmals: Danke für Deine Arbeit
-
Ach ja... Nur Eines war mir noch aufgefallen, scheint aber kein BUG oder so zu sein.
Bei der Ersteinrichtung des Gerätes erkennt der Adapter den Zustand des Gerätes unter Device/Power mit TRUE, auch wenn das Gerät in diesem Moment manuell ausgeschaltet ist. Nach der Einrichtung wird jedoch das Drücken der EIN/AUS-Tatse am Gerät bisher zuverlässig erkannt.
Jetzt stelle ich mal die Adapter-Logausgabe wieder auf Info und warte darauf, was sich hier noch so tut
-
@hallo-amt
Power steht im Datenpunkt auf "false" wenn das Gerät durch eine andere App eingeschaltet wurde. Hier wäre es sinnvoll wenn der Datenpunkt auf "true" gesetzt wird, sowie Datenpunkte wie Titel, Interpret, etc. auch aktualisiert werden.@Berchemer
anbei mal ein paar Datenpunkte zur Steuerung;Power - auf true oder false setzen
Mode schalten - in Modes > die jeweilige Nummer des Modes (0-8 bei mir) > switch to auf true setzen.
Favoriten schalten - in Modes > die jeweilige Nummer des Modes (0-8 bei mir) > presets > die jeweilige Nummer des Modes (0-5 bei mir) > switch to auf true setzen. -
@hallo-amt Ich habe die neue Version nun getestet. Google Cast klappt nun einwandfrei.
Zu der Sache mit den Artistinfos noch ergänzend: Bei jedem Titelwechsel werden die Datenpunkte media/graphic (Albumart) und media/name (Titelname) erfolgreich aktualisiert. Der Punkt media/artist scheint bei mir nur nach einem Adapterneustart oder Powerswitchs des Geräts zu aktualisieren.
Könntest du den Artist Status Refresh möglicherweise zu dem gleichen Trigger legen, wo du graphic & name auslösen lässt.Dankeschön!
-
@claus1993 said in [Neuer Adapter] Undok FSAPI:
....wer hört den Heute noch Radio über Antenne
Ich Aber nach dem Umzug nach Berlin war ich überrascht, daß dort SWR3 über DAB läuft.
@Berchemer said in [Neuer Adapter] Undok FSAPI:
Auch Luxus im Moment, aber wenn man in der Config neben der URL auch noch einen individuellen Namen zur Nutzung in der Objekteliste einbauen könnte, würde es bei mehr als einer Installation die Übersicht in der Liste steigern
Gern, ich hab dafür einen Issue aufgemacht, die helfen mir für den Überblick.
@Berchemer said in [Neuer Adapter] Undok FSAPI:
Wie man das Abspielen einer mp3-Datei über URL erledigt, entzieht sich derzeit noch meiner Kenntnis. Es gibt jedoch über das Windowsprogramm "FS-Radio-Remote" oder die Android-APP "SilverCrest Smart Audio" die Möglichkeit über die Quelle "Music Player" und der Auswahl eines Speicherortes z.B. auf der Freigabe der Fritzbox eine dort als abgelegte mp3-Datei wiederzugeben. Wahrscheinlich geht es sogar noch einfacher über eine URL-Auswahl, aber das habe ich bisher auch noch nicht durchschaut.
Irgendwie sollte das gehen. Das ist auf jeden Fall ein cooles Feature
@Berchemer said in [Neuer Adapter] Undok FSAPI:
Bei der Ersteinrichtung des Gerätes erkennt der Adapter den Zustand des Gerätes unter Device/Power mit TRUE, auch wenn das Gerät in diesem Moment manuell ausgeschaltet ist. Nach der Einrichtung wird jedoch das Drücken der EIN/AUS-Tatse am Gerät bisher zuverlässig erkannt.
Das ist merkwürdig, schaue ich mir an.
@claus1993 said in [Neuer Adapter] Undok FSAPI:
Power steht im Datenpunkt auf "false" wenn das Gerät durch eine andere App eingeschaltet wurde. Hier wäre es sinnvoll wenn der Datenpunkt auf "true" gesetzt wird, sowie Datenpunkte wie Titel, Interpret, etc. auch aktualisiert werden.
Ja, das ist ein Problem mit der API. Wenn über sie eine Aktion ausgeführt wird, gibt es keine Rückmeldung über die Notifies. Die melden alles, was sich per Tasten geändert wird und bestimmte Informationen auf dem Display.
@claus1993 said in [Neuer Adapter] Undok FSAPI:
Mode schalten - in Modes > die jeweilige Nummer des Modes (0-8 bei mir) > switch to auf true setzen.
Favoriten schalten - in Modes > die jeweilige Nummer des Modes (0-8 bei mir) > presets > die jeweilige Nummer des Modes (0-5 bei mir) > switch to auf true setzen.@Berchemer Modus und Favoriten einstellen geht auch mit modes.selected und danach modes.SelectedPreset, da kann man die Nummer des Modus bzw. des Presets reinschreiben. Ist einfacher als immer die Buttons rauszusuchen. Aber je nachdem, wie die Oberfläche aussieht, können auch die Buttons einfacher zu nutzen sein. Der Code für beide Wege wird geteilt, ich lasse beide drin.
@Steff75 said in [Neuer Adapter] Undok FSAPI:
Könntest du den Artist Status Refresh möglicherweise zu dem gleichen Trigger legen, wo du graphic & name auslösen lässt.
Dazu muss ich das Radio aktiv abfragen, wenn die anderen Ereignisse eintreffen, ist aber kein Problem und einfach umzusetzen.
Danke für die Rückmeldungen, ich bin erstaunt und erfreut, daß es schon so viele sind. Um den Überblick einfacher behalten zu können, habe ich die, die ich nicht vergessen habe, als Issue im GitHub angelegt.
DMR hat übrigens nichts mit dem DMR zu tun, das ist einfach Digital Media Receiver oder auch DLNA. Das kann nur vom Controller aktiviert werden, deshalb, wie auch Google Cast, nicht auswählbar. Es macht aber Sinn, das in den Objekten anzulegen. Stören tut es auf keinen Fall.
Für Multiroom habe ich mir noch ein zweites MR fähiges Radio von Philips geholt, das kommt aber frühestens für das Wochenende. Die Post und das Internet sind in Berlin langsamer als im Schwarzwald. Gefühlt brauchen Pakete einen Tag länger und das Internet ist bei mir 8MBit/s statt 100 MBit/s.
-
@Berchemer said in [Neuer Adapter] Undok FSAPI:
Und. Das scheint aber ein grundsätzliches Problem zu sein. Wenn ich mit einer der beiden o.g. Programme aus Windows oder Android auf ein übder den Adapter angebundenes Gerät gehe, dann übernimmt dieses scheinbar vollkommen die Kontrolle und der Adapter geht in den Modus
Das ist ein grundsätzliches Problem. Die API kann nur mit einem Gerät gleichzeitig reden. Das könnt ihr ausprobieren, indem ihr Undok auf dem Handy startet und danach die Instanz neustartet. Undok meldet euch dann ziemlich sofort, daß es die Verbindung verloren hat.
Man kann die API direkt mit PIN aufrufen und das Radio ohne Session steuern. Dann funktionieren die Notifies nicht, dafür braucht man zwingend eine Session, beim erstellen einer Session werden alle anderen beendet. Das kann man maximal durch einen Proxy beheben, den auch andere Apps nutzen. Ob das mit Undok funktioniert ist fraglich und für mich im Moment absolut nicht umsetzbar.
Die andere Möglichkeit wäre eine Einstellung zum aktiven pollen, dann müsste man aber mit teilweise alten Werten leben. -
@hallo-amt sagte in [Neuer Adapter] Undok FSAPI:
@Berchemer said in [Neuer Adapter] Undok FSAPI:
Und. Das scheint aber ein grundsätzliches Problem zu sein. Wenn ich mit einer der beiden o.g. Programme aus Windows oder Android auf ein übder den Adapter angebundenes Gerät gehe, dann übernimmt dieses scheinbar vollkommen die Kontrolle und der Adapter geht in den Modus
Das ist ein grundsätzliches Problem. Die API kann nur mit einem Gerät gleichzeitig reden. Das könnt ihr ausprobieren, indem ihr Undok auf dem Handy startet und danach die Instanz neustartet. Undok meldet euch dann ziemlich sofort, daß es die Verbindung verloren hat.
Man kann die API direkt mit PIN aufrufen und das Radio ohne Session steuern. Dann funktionieren die Notifies nicht, dafür braucht man zwingend eine Session, beim erstellen einer Session werden alle anderen beendet. Das kann man maximal durch einen Proxy beheben, den auch andere Apps nutzen. Ob das mit Undok funktioniert ist fraglich und für mich im Moment absolut nicht umsetzbar.
Die andere Möglichkeit wäre eine Einstellung zum aktiven pollen, dann müsste man aber mit teilweise alten Werten leben.Oder man könnte den Status der Fehlermeldung im Adapter abfragen (wenn das geht) oder eine Möglichkeit suchen, im LOG von ioBroker nach Fehlern bezüglich des Adapters zu suchen (siehe auch den Adapter LogParser, welcher das LOG nach Fehlern scannt) und dann in einem Abstand von festgelegter/konfigurierbarer Zeit (1-5 Sek) einen ReConnect/Restart des Adapters (WatchDog) zu versuchen. Den Versuch des Wiederverbindens könnte man mit dem konfigurierbaren Versand einer Mail/WhatsApp (über den jeweiligen Adapter) verbinden, welche versandt wird, wenn ein anderes Programm die Lautsprecher/Radios blockiert (und somit die Fehlermeldung im ioBroker erzeugt wird) , sodass man die zugehörige App nach erfolgreich zugestellter Benachrichtigung manuell beenden könnte. Nach Beendigung der FremdApp kann der automatische ReStart des Adapters nur noch von Erfolg gekrönt sein.
Sollte das alles etwas wirr und ggf. nicht nachvollziehbar gewesen sein , bitte nachfragen
Und solltest Du ggf. ein weiteres Gerät von SilverCrest benötigen, für 5 EU von mir ist es versichert versendet und Du kannst testen. Und 5 EU von mir zurück über PayPal-Freunde sind es dann auch nur noch für den Rückversand