lucguinchard / plugin-Yamaha-musiccast

Plugin Jeedom permettant la gestion des appareils Yamaha compatible Musiccast.
https://lucguinchard.github.io/plugin-Yamaha-musiccast
GNU General Public License v2.0
7 stars 3 forks source link

Touche pause inefficace sur une source Net Radio #35

Closed yves19 closed 3 years ago

yves19 commented 3 years ago

Jeedom V4.061 Debian 10.7 Nuc intel 8i5BEH Lecteur réseau Yamaha NP-S303 Plug in YamahaMusiccast master v3.0

Description de l'anomalie : Impossible d’arrêter la lecture lorsque la source est Net Radio. image Le bouton "Pause" n'a aucun effet. A remplacer peut être par un bouton provoquant l’Arrêt plutôt que la Pause qui ne semble pas supportée par les flux net radio.

Description du fonctionnement attendu (par exemple sur une source Server) image

après appui sur le bouton Pause : image

lucguinchard commented 3 years ago

J'ai mis une nouvelle version en develop https://github.com/lucguinchard/plugin-Yamaha-musiccast/commit/9a45068cc69127f44005d62c6c28d4aba10b502d dans le fichier static.js il y a des options pour chaque input. actuellement il y a 3 modes possibles pour la barre de navigation (nav_playlist troisième valeur du tableau inputIconMap) :

Par la suite on pourra ajuster au mieux la barre de navigation de chaque input exemple avec des boutons ramdom, repeat...

lucguinchard commented 3 years ago

Bonjour @yves19,

Est-ce que tu as encore des soucis sur ce sujet ? Merci à toi.

Luc

yves19 commented 3 years ago

Bonjour.

Après mise à jour avec ton dernier correctif, pour la Source Net Radio c'est OK. Par contre pour la source Server lorsque l'on est précédemment sur Net Radio je n'ai aucun menu Play/Pause/Stop qui s'affiche. Donc c'est cette source qui désormais n'est plus pilotable. image image

lucguinchard commented 3 years ago

Je viens de mettre à jour develop le tableau pour afficher un play_pause sur le serveur. Voici la liste des inputs : le 3ème paramêtre permet d’afficher une barre de navigation.

    /**
    * ['onelinedefile'] : permet d’afficher le titre en cours.
    * ['divInputPochette'] Permet d’afficher la pochette.
    * ['nav_playlist'] Permet de savoir qu’elle est le type de barre de navigation à afficher.
    * ['divInputIcon'] Permet d’afficher l’icone en grand (quand il y a pas de pochette).
    * ['icon']
    */
    inputIconMap.set('airplay', [true, false, "play_pause", true, '<span class="fa-stack fa-lg"><i class="fas fa-mobile-alt fa-stack-2x"></i><i class="fas fa-music fa-stack-1x" style="font-size:0.5em"></i></span>']);
    inputIconMap.set('cd', [true, false, "play_pause", true, '<i class="fas fa-compact-disc"></i>']);
    inputIconMap.set('tuner', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('multi_ch', [true, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('phono', [false, false, false, true, '<i class="fas fa-record-vinyl"></i>']);
    inputIconMap.set('hdmi', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi1', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi2', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi3', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi4', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi5', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi6', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi7', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('hdmi8', [false, false, false, true, '<i class="fas fa-desktop"></i>']);
    inputIconMap.set('av1', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('av2', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('av3', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('av4', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('av5', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('av6', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('av7', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('v_aux', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('aux1', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('aux2', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('aux', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('audio1', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('audio2', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('audio3', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('audio4', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('audio5', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('audio_cd', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('audio', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('optical1', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('optical2', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('optical', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('coaxial1', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('coaxial2', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('coaxial', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('digital1', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('digital2', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('digital', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('line1', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('line2', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('line3', [false, false, false, true,  '<i class="fas fa-music"></i>']);
    inputIconMap.set('line_cd', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('analog', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('tv', [false, false, false, true, '<i class="icon techno-television4"></i>']);
    inputIconMap.set('bd_dvd', [false, false, "play_pause", true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('usb_dac', [true, false, false, true, '<i class="icon techno-memory"></i>']);
    inputIconMap.set('usb', [true, false, "play_pause", true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('bluetooth', [true, false, "play_pause", true, '<i class="fab fa-bluetooth icon_blue"></i>']);
    inputIconMap.set('server', [true, false, "play_pause", true, '<i class="fas fa-hdd"></i>']);
    inputIconMap.set('net_radio', [true, true, "stop", false, '<i class="fas fa-music"></i>']);
    inputIconMap.set('mc_link', [true, false, false, false, '<i class="fas fa-link"></i>']);
    inputIconMap.set('main_sync', [false, false, false, true, '<i class="fas fa-music"></i>']);
    inputIconMap.set('none', [false, false, false, true, '<i class="fas fa-music"></i>']);

Aujourd'hui il y a que :

L’idée au final c'est d’avoir play_pause uniquement pour play et pause, et des nouveaux play_pause_preview_next et play_pause_preview_next_reapeat_shuffle. bref plein d’évolution possible...

yves19 commented 3 years ago

Bonsoir.

Pas de changement sur la source Server après application de ce cette dernière évolution et après re-synchro puis redémarrage du plug in

lucguinchard commented 3 years ago

Pour cette mise à jour, il faut rafraîchir le JS, Ctrl+F5 sur le panel. Bonne soirée.

yves19 commented 3 years ago

J'ai réinstallé, synchro puis on/off et désormais c'est OK. Merci de ta réactivité.