ÉcouterBrainz

|||
-|-|-|
:information_source: | Résumé | Plugin Discourse pour afficher les écoutes ListenBrainz d’un utilisateur sur son profil
:hammer_and_wrench: | Lien vers le dépôt | \u003chttps://git.sr.ht/~phw/discourse-listenbrainz\u003e
:open_book: | Guide d’installation | Comment installer des plugins dans Discourse


Fonctionnalités

Ce plugin Discourse permet aux utilisateurs de présenter leurs écoutes récentes de ListenBrainz sur leur profil. Les utilisateurs peuvent choisir d’afficher leur écoute la plus récente ou des statistiques générales sur leur profil ListenBrainz.

ListenBrainz est un service en ligne qui permet de suivre la musique que vous écoutez et vous fournit des informations sur vos habitudes d’écoute et des recommandations. Le projet est entièrement open-source et publie toutes les données en tant que données ouvertes.

Ce plugin est actuellement utilisé sur les forums de la communauté MusicBrainz, mais il pourrait également intéresser d’autres communautés liées à la musique.

Configuration

Paramètres administrateur

Vous pouvez configurer le plugin ListenBrainz dans l’interface d’administration de Discourse. Les options suivantes sont disponibles :

  • listenbrainz enable : Permettre aux utilisateurs d’afficher leur statut ListenBrainz sur leur profil. Par défaut : activé.

  • listenbrainz username matches discourse : Activez cette option si les noms d’utilisateur des utilisateurs Discourse correspondent généralement à leurs noms d’utilisateur ListenBrainz. Les utilisateurs peuvent toujours configurer un nom d’utilisateur ListenBrainz différent, mais il sera pré-rempli avec leur nom d’utilisateur Discourse. Cette option est principalement destinée à être utilisée sur les forums communautaires MetaBrainz. Par défaut : désactivé.

  • listenbrainz poster icon : Permettre aux utilisateurs d’afficher un lien vers leur profil ListenBrainz à côté de leur nom d’utilisateur dans chaque message. Par défaut : activé.

  • listenbrainz_onebox_enabled : Active la prise en charge d’Onebox pour les URL des pages de profil ListenBrainz. Par défaut : activé.

  • listenbrainz_onebox_range : Période de temps des statistiques pour les Onebox ListenBrainz. Par défaut : Ce mois-ci.

Préférences utilisateur

Chaque utilisateur contrôle si son activité ListenBrainz est affichée sur son profil. Les utilisateurs peuvent configurer cela dans les préférences de leur profil. Les préférences suivantes sont disponibles.

  • Afficher les informations ListenBrainz sur mon profil utilisateur : Lorsqu’elle est activée, une boîte d’information avec les détails du profil ListenBrainz de l’utilisateur sera affichée dans la carte utilisateur et le profil utilisateur. Le contenu de la boîte d’information peut être configuré avec les options ci-dessous. Par défaut : désactivé.

  • Nom d’utilisateur ListenBrainz : Le nom d’utilisateur ListenBrainz de l’utilisateur. Doit être défini pour que les détails ListenBrainz s’affichent pour l’utilisateur. Si listenbrainz username matches discourse est activé pour le site, alors cela prend par défaut le nom d’utilisateur Discourse, sinon la valeur par défaut est vide.

  • Afficher un lien vers mon profil ListenBrainz à côté de mon nom d’utilisateur Discourse : Lorsqu’elle est activée, un lien vers le profil ListenBrainz de l’utilisateur est affiché à côté de son nom d’utilisateur dans chaque message. Cette option n’est disponible que si le site a listenbrainz poster icon activé. Par défaut : désactivé.

  • Affichage : Configure le contenu affiché dans la boîte d’information ListenBrainz. Les options suivantes sont disponibles :

    • Dernière écoute : Affiche la piste en cours de lecture de l’utilisateur ou la piste la plus récemment écoutée.

    • Statistiques du profil utilisateur : Affiche des statistiques générales pour le profil ListenBrainz de l’utilisateur, telles que le nombre d’écoutes, la piste la plus écoutée et les pochettes des sorties les plus écoutées.

    • Dernière écoute avec repli sur les statistiques du profil utilisateur : Tente d’afficher la dernière écoute, mais si aucune n’est disponible, se rabat sur l’affichage des statistiques du profil utilisateur. C’est le réglage par défaut.

  • Période : Sélectionne la période pour laquelle les statistiques du profil utilisateur sont générées. Par défaut : Ce mois-ci.

  • Replier sur une période plus large s’il n’y a pas d’écoutes dans la période sélectionnée : Si activé, la vue des statistiques du profil se rabattra automatiquement sur une période plus large si vous n’avez eu aucune écoute dans la période sélectionnée. Par exemple, si vous avez sélectionné “Cette semaine” mais que vous n’avez pas d’écoutes enregistrées cette semaine, les statistiques se rabattront sur “Ce mois-ci”. Par défaut : activé.

  • Afficher la dernière écoute pas plus ancienne que : N’affiche pas la dernière piste jouée de l’utilisateur si elle est plus ancienne que le temps imparti. Par défaut : 24 heures.

TODO

Veuillez consulter le suivi des problèmes officiel pour les problèmes ouverts et les fonctionnalités prévues.

7 « J'aime »

y a-t-il quelque chose de similaire sur Spotify ?

Pas à ma connaissance. Si quelqu’un souhaite le faire, ListenBrainz pourrait servir de base sur laquelle construire.

Est-ce trop difficile à faire ? Je me demande si je peux y arriver ?

Désolé, j’ai manqué votre question ici. La difficulté dépendra de votre expérience en développement d’applications web et plus spécifiquement si vous avez de l’expérience avec les frameworks Ember.js et Ruby on Rails. J’ai personnellement une expérience assez large du développement web, mais je n’avais pas d’expérience supplémentaire avec Ember.js. Ce fut donc souvent la partie la plus longue lors du développement du plugin, car j’ai dû comprendre comment faire les choses que je voulais faire dans ce framework.

Quoi qu’il en soit, la première étape consisterait à configurer une instance locale de Discourse pour le développement et à essayer de faire fonctionner le plugin LB. J’ai consigné mes notes personnelles sur ce qu’il faut faire à l’adresse https://git.sr.ht/~phw/discourse-listenbrainz/tree/develop/item/CONTRIBUTE.md (mais c’est très bref). Une fois que cela fonctionnera, vous pourrez commencer à expérimenter ce qui se passe lorsque vous modifiez certaines parties du code.

Mais après avoir dit tout cela, je n’ai personnellement aucun intérêt à faire le truc Spotify. Si vous voulez vous attaquer à cela et que vous avez des questions sur la structure et le fonctionnement de mon plugin, je peux vous aider, mais tout ce qui concerne l’API Spotify et son utilisation devra provenir de la documentation de Spotify.

1 « J'aime »

Je suppose que vous avez de l’expérience avec ListenBrainz puisque vous avez créé ceci lol, comment cela fonctionne-t-il avec last.fm ? Je n’ai personnellement jamais utilisé l’un ou l’autre, mais je trouve la fonctionnalité de ce plugin intéressante, cependant, il semble que la plupart de mes utilisateurs (ou éventuellement aucun) utilisent ListenBrainz, mais plusieurs utilisent déjà last.fm. J’ai regardé et j’ai vu que l’on peut importer depuis lastfm vers ListenBrainz, mais je suppose que ce n’est pas une connexion active comme lastfm se connecte à Spotify. etc (ce qui, je suppose, est la même chose que fait ListenBrainz ?).

En gros, savez-vous s’ils se sont inscrits à ListenBrainz et si j’ai installé ce plugin, est-il possible de chaîner Spotify (ou autre) > lastfm > ListenBrainz, et ainsi ce plugin fonctionnerait ? Je suppose que non car il semble plutôt que l’on puisse importer ses données lastfm mais que ce n’est pas activement surveillé.

Oui, c’est ça. Vous pouvez répéter l’importation et cela n’importera que les nouvelles données. Mais ceci est plutôt destiné à migrer de last.fm vers ListenBrainz et non à une synchronisation continue.

ListenBrainz peut être directement connecté à Spotify, et enregistrera toutes les écoutes à partir de là.

En dehors de cela, ce plugin n’a bien sûr de sens que lorsque les utilisateurs utilisent réellement LB.

Il pourrait être très intéressant d’avoir quelque chose de similaire pour last.fm ou, comme suggéré ci-dessus, pour Spotify. Pour diverses raisons, je n’ai moi-même aucun intérêt à y consacrer du travail, mais j’invite toute personne intéressée à prendre mon plugin comme base pour un tel plugin.

Je suppose, oui. Je ne suis pas l’un des développeurs, mais j’ai réalisé plusieurs intégrations ListenBrainz et je l’utilise aussi très activement moi-même. J’ai également travaillé d’une manière ou d’une autre sur plusieurs projets liés à MusicBrainz, principalement MusicBrainz Picard.