Autor Thema: Angular Frontend mit WebSocket Kommunikation  (Gelesen 8649 mal)

Offline alec_osborne

  • Jr. Member
  • **
  • Beiträge: 54
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #15 am: 07 Juni 2016, 23:01:00 »
Also im Frontend muss Initialized stehen sonst wird es nicht gehen.

Vielleicht findest du hier die Lösung. Hast du alle alle dort beschriebenen Schritte gemacht?
https://forum.fhem.de/index.php/topic,28634.0.html


Man kann alles einbinden und steuern was in FHEM auch geht. Nur habe ich keine SONOS und habe deswegen auch noch keine Directive gemacht.

Na eine Samlung gibt es nicht....Im Seedproject sind aber alle Directiven enthalten. Nur als Samples sind sie nicht implementiert.

Ich kann ja als nächstes mal ein Sample mit dem Wetter machen.

Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #16 am: 08 Juni 2016, 08:04:28 »
Das Problem mit der Verbindung habe ich hinbekommen. Einfach auf einer anderen Maschine installiert und jetzt geht es.

Wäre cool wenn du diverse Samples implementieren kannst, wie bei deinen Screenshots.
Du könntest ja einfach deine ganzen Einträge veröffentlichen, den Rest bekommt man dann irgendwie hin.

Das mit der Sonos ist schade....Wenn man die Bausteine aus dem Tablet-UI dafür verwenden könnte wäre das ja auch schon cool.

Aktuell finde ich dein Frontend sehr gelungen!

Ich hoffe Du entwickelst es weiter.

Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #17 am: 18 Juni 2016, 12:42:03 »
Danke schon mal für die Charts.

Was würdest Du denn benötigen um die Sonos mit dazu zu nehmen?

Hier wäre das Reading vom Websocket:


2016.06.18 13:10:30 5: websocket command list devs: sonos_Allgemein
2016.06.18 13:10:30 5: {
  'buffer' => '{"payload":{"readings":{"PlaylistsVersion":{"Time":"Sa 18 Jun 2016 10:27:48 CEST GMT","Value":"RINCON_B8E937E7B3C401400,40"},"currentStreamAudio":{"Value":"1","Time":"Sa 18 Jun 2016 10:53:22 CEST GMT"},"QueueVersion":{"Value":"","Time":"Sa 18 Jun 2016 10:29:40 CEST GMT"},"nextOriginalTrackNumber":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"Mute":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"roomNameAlias":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"Allgemein"},"SleepTimer":{"Value":"off","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"ZoneGroupID":{"Value":"RINCON_B8E937E7B3C401400:__","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"OutputFixed":{"Time":"Sa 18 Jun 2016 09:55:11 CEST GMT","Value":"0"},"fieldType":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":""},"MasterPlayer":{"Value":"sonos_Allgemein","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"currentTrackPosition":{"Time":"Sa 18 Jun 2016 11:02:21 CEST GMT","Value":"0:00:00"},"AlarmList":{"Value":"{}","Time":"Sa 18 Jun 2016 10:55:25 CEST GMT"},"currentTrackURI":{"Time":"Sa 18 Jun 2016 10:53:22 CEST GMT","Value":"aac://mp3channels.webradio.antenne.de/antenne.aac"},"presence":{"Time":"Sa 18 Jun 2016 10:55:20 CEST GMT","Value":"appeared"},"nextAlbumArtURL":{"Value":"/fhem/sonos/cover/empty.jpg","Time":"Sa 18 Jun 2016 10:29:04 CEST GMT"},"Bass":{"Time":"Sa 18 Jun 2016 09:55:11 CEST GMT","Value":"2"},"currentAlbumArtist":{"Value":"","Time":"Sa 18 Jun 2016 10:29:04 CEST GMT"},"Treble":{"Value":"1","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"currentAlbum":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"currentSenderCurrent":{"Value":"","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"GroupMute":{"Time":"Sa 18 Jun 2016 09:55:11 CEST GMT","Value":"0"},"currentAlbumArtURL":{"Value":"http://192.168.190.41:1400/getaa?s=1&u=x-sonosapi-stream%3as15034%3fsid%3d254%26flags%3d8224%26sn%3d0","Time":"Sa 18 Jun 2016 10:53:22 CEST GMT"},"Balance":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"IsMaster":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"1"},"currentAlbumArtURI":{"Time":"Sa 18 Jun 2016 10:47:04 CEST GMT","Value":"./www/images/default/SONOSPLAYER/sonos_Allgemein_AlbumArt.gif"},"transportState":{"Value":"PLAYING","Time":"Sa 18 Jun 2016 10:53:22 CEST GMT"},"serialNum":{"Value":"B8-E9-37-E7-B3-C4:F","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"Loudness":{"Time":"Sa 18 Jun 2016 09:55:11 CEST GMT","Value":"0"},"SubEnable":{"Value":"1","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"LastActionResult":{"Time":"Sa 18 Jun 2016 10:55:24 CEST GMT","Value":"Play: Success!"},"Repeat":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"0"},"DailyIndexRefreshTime":{"Value":"","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"nextTrackDuration":{"Value":"","Time":"Sa 18 Jun 2016 10:29:04 CEST GMT"},"location":{"Value":"http://192.168.190.41:1400/xml/device_description.xml","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"infoSummarize2":{"Time":"Sa 18 Jun 2016 11:09:14 CEST GMT","Value":"PLAYING => ANTENNE BAYERN: Shawn Mendes - Stitches"},"CrossfadeMode":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"currentOriginalTrackNumber":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"nextTrackProvider":{"Value":"","Time":"Sa 18 Jun 2016 10:29:04 CEST GMT"},"SubPolarity":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"infoSummarize4":{"Value":"","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"currentSender":{"Time":"Sa 18 Jun 2016 10:30:04 CEST GMT","Value":"ANTENNE BAYERN"},"GroupVolume":{"Value":"18","Time":"Sa 18 Jun 2016 10:47:05 CEST GMT"},"SlavePlayer":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"[]"},"softwareRevision":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"6.2"},"roomName":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"Allgemein"},"QueueHash":{"Time":"Sa 18 Jun 2016 10:29:40 CEST GMT","Value":"f584076b7df9e67d33332041cbc3fff6"},"saveRoomName":{"Value":"Allgemein","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"currentTrackDuration":{"Time":"Sa 18 Jun 2016 10:53:22 CEST GMT","Value":"0:00:00"},"SleepTimerVersion":{"Value":"","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"playerType":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"S1"},"infoSummarize3":{"Value":"Lautstärke: 18 ~ Ton An ~ Balance: Mitte ~ Kein Kopfhörer","Time":"Sa 18 Jun 2016 10:47:04 CEST GMT"},"AlarmListIDs":{"Value":"","Time":"Sa 18 Jun 2016 10:55:25 CEST GMT"},"Shuffle":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"AlarmRunningID":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":""},"currentTrackProvider":{"Value":"Radio","Time":"Sa 18 Jun 2016 10:47:03 CEST GMT"},"nextTrackURI":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"Volume":{"Time":"Sa 18 Jun 2016 10:47:03 CEST GMT","Value":"18"},"AlarmListVersion":{"Value":"RINCON_B8E937E7B3C401400:0","Time":"Sa 18 Jun 2016 10:55:25 CEST GMT"},"RepeatOne":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:10 CEST GMT"},"numberOfTracks":{"Value":"2","Time":"Sa 18 Jun 2016 10:53:22 CEST GMT"},"TruePlay":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"AlarmRunning":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"0"},"SubGain":{"Value":"0","Time":"Sa 18 Jun 2016 09:55:11 CEST GMT"},"state":{"Value":"appeared","Time":"Sa 18 Jun 2016 10:55:25 CEST GMT"},"currentTitle":{"Value":"","Time":"Sa 18 Jun 2016 10:29:04 CEST GMT"},"nextTitle":{"Value":"","Time":"Sa 18 Jun 2016 10:29:04 CEST GMT"},"nextArtist":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"currentTrack":{"Value":"1","Time":"Sa 18 Jun 2016 10:53:22 CEST GMT"},"roomIcon":{"Time":"Sa 18 Jun 2016 09:55:11 CEST GMT","Value":"living"},"currentArtist":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"RadiosVersion":{"Time":"Sa 18 Jun 2016 10:29:40 CEST GMT","Value":"RINCON_B8E937E7B3C401400,28"},"currentNormalAudio":{"Time":"Sa 18 Jun 2016 11:05:04 CEST GMT","Value":"0"},"nextAlbum":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"HeadphoneConnected":{"Time":"Sa 18 Jun 2016 09:55:10 CEST GMT","Value":"0"},"nextAlbumArtist":{"Time":"Sa 18 Jun 2016 10:29:04 CEST GMT","Value":""},"nextAlbumArtURI":{"Value":"./www/images/default/SONOSPLAYER/sonos_Allgemein_NextAlbumArt.png","Time":"Sa 18 Jun 2016 10:29:04 CEST GMT"},"currentSenderInfo":{"Value":"Shawn Mendes - Stitches","Time":"Sa 18 Jun 2016 11:09:14 CEST GMT"},"FavouritesVersion":{"Time":"Sa 18 Jun 2016 10:29:40 CEST GMT","Value":"RINCON_B8E937E7B3C401400,28"},"infoSummarize1":{"Time":"Sa 18 Jun 2016 11:09:14 CEST GMT","Value":"ANTENNE BAYERN: Shawn Mendes - Stitches"}},"arg":"sonos_Allgemein","index":0,"name":"sonos_Allgemein","num":1},"type":"listentry"}',
  'type' => 'text'
}

« Letzte Änderung: 18 Juni 2016, 13:12:41 von Grimm80 »

Offline alec_osborne

  • Jr. Member
  • **
  • Beiträge: 54
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #18 am: 19 Juni 2016, 10:26:23 »
Hi na das war schon sehr hilfreich. Ich würde es noch schön finden wenn du mir die Liste mit fhem Befehlen schickst.

Gesendet von meinem HUAWEI CRR-L09 mit Tapatalk


Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #19 am: 19 Juni 2016, 11:10:00 »
diese ist doch in der Commandref hinterlegt?

Sonos:
Sonos

Sonosplayer:
Sonosplayer

Ich hab damit auch schonmal angefangen ein Modul zu bauen :-)
Laut und Leise bekomm ich hin sowie das Aktuelle Logo, aber Bass, Trible, Playlist etc schaff ich leider net.
Da hab ich zu wenig durchblick in deinem Frontend.


Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #20 am: 19 Juni 2016, 11:12:03 »
MAn kann das noch alles schöner machen, aber für die ersten Schritte in deinem Frontend, kam ich schon relativ weit denke ich.

Hier mal ein Screenshot meiner kleinen Übung:

« Letzte Änderung: 19 Juni 2016, 11:16:37 von Grimm80 »

Offline alec_osborne

  • Jr. Member
  • **
  • Beiträge: 54
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #21 am: 19 Juni 2016, 16:48:38 »
Hi,

na das sieht doch schon sehr gut aus. Welche Funktion soll ich mir mal ansehen Stop/Play/Pause +/- Channel ?

Möchtest du den Code einchecken? Oder wie wollen wir da verfahren?


Grus A.


Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #22 am: 19 Juni 2016, 19:10:44 »
Wenn Du willst kannst den soweit einchecken...
Naja ich benötige noch Bass und Tribel sowie die Playlisten und Favoriten in einer DropDown wenn das irgendwie geht.


Offline alec_osborne

  • Jr. Member
  • **
  • Beiträge: 54
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #23 am: 23 Juni 2016, 08:48:14 »
Hi,

das heißt du brauchst noch eine Funktion für folgende Commandos?
set SONOS_PLAY Bass XX;
set SONOS_PLAY Treble XX;
Das wird bestimmt zu voll auf der Seite.

Kann man das nicht in ein Configmenü (Modaler Dialog) auslagern das über ein Zahnrad erreichbar ist. Das sind doch Funktionen die nicht unbedingt in die erste Ebene gehören oder?
Wo bekomme ich die FavoritenRadioliste her? Die kann ich nicht finden.


Gruß A.





Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #24 am: 23 Juni 2016, 18:41:34 »
Ja natürlich kann man das so auslagern.  ;D

Bei meinem Test wollte ich das halt erstmal so einbauen, habe das aber leider nicht so hinbekommen.
Ich denke mit einem Slider (up / down) wäre das ganz gut so.

Wenn Du dann was grob fertig hast, würde ich mich freuen wenn Du mir das zu kommen lässt, vielleicht hab ich dann noch paar Idden.
Die Playlists bzw. Favoriten mit einer DropDown, oder was wäre deine Idee?


Offline alec_osborne

  • Jr. Member
  • **
  • Beiträge: 54
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #25 am: 23 Juni 2016, 22:09:19 »
Ja....mal sehen ich benötige das Commando für das "Get Favoritenliste" Und die Struktur die da geliefert wird. Ist das ein Reading in dem Sonos Device?
Ich baue nächste Woche mal einen Vorschlag den du dir dann ansehen kannst.


Gruß S.

Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #26 am: 24 Juni 2016, 21:28:56 »
Hier mal die Einzelheiten so wie es in FHEM aussieht als Pic.

Hoffe das Hilft



Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #27 am: 24 Juni 2016, 21:32:24 »
Und hier noch die SET-Liste

Offline alec_osborne

  • Jr. Member
  • **
  • Beiträge: 54
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #28 am: 24 Juni 2016, 21:35:45 »
Hallo,

und sonos_allgemein ist das das Sonos Device oder das Sonos_Play Device? Was kommt da zurück wenn man get Favourites macht bestimmt kein JSON oder? Kannst das ja mal zum Spass in deiner Controler schreiben und absetzen und schauen was passiert.

Gruß A

Offline Grimm80

  • Full Member
  • ***
  • Beiträge: 110
Antw:Angular Frontend mit WebSocket Kommunikation
« Antwort #29 am: 25 Juni 2016, 16:44:59 »
Das "sonos_Allgemein" ist der Name meiner Sonos.
Wenn man "get Favoutites" macht kommt folgendes raus:


LastActionResult:            GetFavourites: "1LIVE","Antenne","DASDING","PN-Eins","Pure-FM","ROCK-ANTENNE","Radio-Gong","sunshine live","sunshine live - Die 90er","sunshine live - EDM","sunshine live - house"