philharmoniedeparis / metascore-library

The front-end library that powers the metaScore authoring tool.
https://metascore.philharmoniedeparis.fr
CeCILL Free Software License Agreement v2.1
0 stars 0 forks source link

Certains liens d'API ne fonctionnent pas sous Chrome #428

Closed rbailly closed 8 months ago

rbailly commented 4 years ago

Ne fonctionne plus (cliquer sur "intervalle ascendant") : https://pad.philharmoniedeparis.fr/0729148-symphonie-n1-ludwig-van-beethoven.aspx

Fonctionne : https://pad.philharmoniedeparis.fr/0765070-symphonie-n-40-de-wolfgang-amadeus-mozart.aspx

semiaddict commented 4 years ago

Chrome a mis en place un système un peu complexe pour la gestion des permissions de l'autoplay qu'ils appellent "Media Engagement Index" ou MEI. Le système donne un score à chaque site visité par l'utilisateur qui permet au navigateur d’évaluer la propension de l'utilisateur à consommer des médias sur un site donné. Si le score est suffisamment élevé, un médias peut être déclenché automatiquement. Autrement, une action manuelle de l'utilisateur est nécessaire pour déclencher le média.

Normalement, le clic sur un lien d'API est égale à une action manuelle, mais cela ne semble plus être le cas dans la dernière version de Chrome, en particulier dans le cas d'un clic en dehors de l'iframe.

Je n'ai, pour le moment, aucune piste sérieuse pour y remédier. Comme le score MEI est individualisé, il est impossible de savoir en avance si la lecture automatique va fonctionner ou non. Google recommande d'afficher un bouton play si la lecture automatique n'a pas fonctionné pour inciter l'utilisateur à effectuer une action manuelle ! Cela risque d'être compliqué dans notre cas, car le clic sur le bouton devrait lire le dernier lien cliqué.

semiaddict commented 4 years ago

Je n'arrive cependant pas encore à comprendre pourquoi les liens sur des applications hébergées sur https://legacy-metascore.philharmoniedeparis.fr/ ne fonctionnent pas, tandis que celles hébergées sur https://metascore.philharmoniedeparis.fr/ fonctionnent.

rbailly commented 4 years ago

En fait si je comprend bien mon MEI, ça pourrait s'expliquer:

image

(metascore.philharmoniedeparis.fr est en "ishigh" et legacy ne l'est pas

On se retrouve donc avec des comportements différents d'un utilisateur à l'autre. Tout ça me semble assez pompeux et débile de leur part.

semiaddict commented 4 years ago

Chez moi il n'y a pas d'entrée pour legacy-metascore.philharmoniedeparis.fr, et pad.philharmoniedeparis.fr et metascore.philharmoniedeparis.fr n'ont pas un score élevé : image

Pourtant certains liens fonctionnent et pas d'autres. Je ne suis donc pas sûr que c'est le MEI qui est en cause ici…

rbailly commented 4 years ago

Effectivement, ça reste donc encore à creuser.

semiaddict commented 4 years ago

Après quelques tests, il semblerait que ce ne soit effectivement pas le MEI qui soit en cause, mais la redirection de l'iframe depuis metascore.philharmoniedeparis.fr vers legacy-metascore.philharmoniedeparis.fr.

En effet, si l'iframe a comme source l'URL legacy-metascore.philharmoniedeparis.fr directement, les liens fonctionnent sans problème. J'ai donc l'impression qu'il s'agit d'un bug dans Chrome qui ne gère pas bien les permissions d'autoplay dans le cas de redirection d'iframe !

rbailly commented 4 years ago

Ok, donc si on converti le contenu en metaScore 2.0, on devrait pouvoir résoudre le problème à notre niveau, n'est-ce pas ?

semiaddict commented 4 years ago

Ok, donc si on converti le contenu en metaScore 2.0, on devrait pouvoir résoudre le problème à notre niveau, n'est-ce pas ?

Oui, tout à fait. Une autre solution consiste à modifier les URLs des iframes de la v1 dans la page pour pointer directement sur legacy.

rbailly commented 4 years ago

Je pense qu'il vaut mieux les convertir (s'ils ne sont pas affectés par le problème des scénarios) car sinon si un jour on les converti il faudra re-changer le lien.

semiaddict commented 8 months ago

Je ferme ce cas, car il semble que l'application concernée ait déjà été migrée.