Babble Chat

Une correction a été créée et une PR a été soumise, car @gdpelican n’a pas répondu depuis une semaine. Vous pouvez utiliser le dépôt alternatif jusqu’à ce que la correction soit intégrée dans le dépôt principal.
Dépôt alternatif : https://github.com/PuttyTribe/babble
PR : Fix issue with search controller by ti0 · Pull Request #302 · gdpelican/babble · GitHub

Pour basculer, modifiez simplement votre configuration et remplacez le dépôt babble existant par : https://github.com/PuttyTribe/babble.git, puis reconstruisez.

@Newuser @itsbhanusharma @Boost @4ong

3 « J'aime »

Oh, lol, il semble que nous ayons un concours de beauté :wink:

L’erreur est due à ce changement dans le cœur :

@angus, je te laisse être le juge :wink:

Ouh, quelle coïncidence ! :slight_smile: Aucune activité pendant une semaine, puis deux solutions proposées à 20 minutes d’intervalle !
J’avais initialement choisi cette solution, mais j’ai décidé de partir sur une solution universelle, car le paramètre n’est utilisé dans aucun cas.

1 « J'aime »

J’ai fusionné la PR de @merefield qui corrige ce problème.

@ti0 Merci également pour ta PR. L’argument est effectivement utilisé :slight_smile: Si tu appelles super sans arguments (c’est-à-dire au lieu de super()), les arguments de la sous-classe sont automatiquement transmis à super. Si tu examines la méthode qui est surchargée, tu verras où l’argument est utilisé : discourse/lib/search.rb at main · discourse/discourse · GitHub.

@ti0 @merefield À titre d’information, nous devrions proposer une PR au cœur de Discourse pour ajouter un hook permettant d’ajouter de nouveaux type_filters dans la classe Search depuis un plugin. Cela serait plus performant et stable que de patcher la méthode execute. Ce pourrait être un petit projet intéressant si tu parviens à convaincre l’équipe de Discourse que cela vaut la peine d’être ajouté.

@justin As-tu fini par résoudre ce problème ? J’ai rencontré le même problème jusqu’à ce que je modifie simplement la façon dont Babble charge son moteur dans ma propre branche. Je soupçonne que cela est lié à la manière dont différents environnements traitent la méthode de chargement des fichiers de @gdpelican dans l’initialiseur, c’est-à-dire :

require Rails.root.join('plugins', 'babble', 'app', path).to_s

Il est difficile de l’identifier avec précision. Je pourrais proposer une PR pour mettre à jour la méthode de chargement des fichiers de Babble et voir si @gdpelican est d’accord pour passer de la méthode standard des plugins Discourse en utilisant load avec File.expand_path plutôt que require avec Rails.root.


edit J’ai également ajouté Babble à try.thepavilion.io afin que tu puisses le tester dans un environnement mis à jour toutes les 24 heures.

À l’avenir, s’il y a un bug critique avec Babble (c’est-à-dire qu’il ne fonctionne pas du tout) et que James n’est pas disponible, veuillez @angus ou @merefield et nous le corrigerons (ou examinerons une PR :slight_smile: ).

6 « J'aime »

Je voulais dire que le paramètre n’est pas utilisé dans la méthode surchargée que nous avons modifiée. D’après ce que vous dites, mon code devrait toujours fonctionner, car l’appel à super transmettrait simplement les **args, qui collectent les arguments nommés, et c’est plus stable si d’autres paramètres sont ajoutés à l’avenir. Est-ce que cela a du sens ? Ou manque-t-il quelque chose de mon côté ?

1 « J'aime »

Oui, vous avez raison :slight_smile:

Je viens de faire un petit test et votre méthode semble également fonctionner pour les besoins immédiats (c’est-à-dire qu’elle préserve la fonctionnalité de readonly_mode). C’est un peu étrange sur le plan conceptuel si l’on y réfléchit, car **args devrait théoriquement être défini avant même que la superclasse ne soit appelée. Personnellement (et peut-être que James aurait un avis différent), je pense toujours préférer la méthode plus explicite, car nous passons déjà les arguments implicitement en appelant simplement super. Ajouter une implicitité supplémentaire avec **args semble devenir un peu trop complexe.

Bien que je comprenne ce que vous voulez dire, dans l’ensemble, je trouve que la meilleure démarche dans ces situations est de chercher une manière explicite d’éviter les conflits avec le code principal, plutôt que de recourir à des méthodes implicites de type « catchall ». Cette approche a tendance à entraîner d’autres problèmes par la suite. Comme mentionné ci-dessus, je préférerais que nous puissions refactoriser cela en ajoutant un nouveau type_filter dans la base de code principale. Ce serait, je pense, un excellent petit projet.

Est-il possible de définir globalement l’option « ouvrir automatiquement le chat lors du chargement de la page » sur « oui » par défaut pour tous les utilisateurs ?

Est-il possible d’afficher les URL dans Babble comme sur Threads ?

Par exemple, lorsqu’on publie un lien Twitter dans Babble Chat, les contenus du tweet s’affichent au lieu de simplement montrer l’URL.

Quelqu’un a-t-il intégré Memberful et vu apparaître le vrai nom de ses utilisateurs sous leur nom de compte dans le chat ?

J’aimerais masquer leur vrai nom si possible.

Édit : J’ai une solution temporaire, je demande aux membres d’utiliser leur nom d’affichage comme nom complet lors de l’inscription, ou je modifie manuellement leur nom complet pour qu’il corresponde au nom d’affichage après leur intégration.

Est-ce que quelqu’un l’utilise encore à la date du 17 septembre 2020 ?

Je voulais simplement vérifier que ce n’était pas un projet secondaire.

3 « J'aime »

@angus, vous êtes peut-être l’assistant Babble le plus disponible pour le moment. Je vous contacte donc avec une demande de mise à jour de code, bien que je serais ravi que n’importe qui puisse traiter ce problème.

Je viens de mettre à jour notre version de Discourse vers 2.6.0beta2 (spécifiquement cette version de commit GitHub) et le sélecteur d’émojis est maintenant cassé.

@itsbhanusharma aide à l’installation de notre Discourse et son premier avis est qu’il s’agit d’un problème de compatibilité avec la mise à jour du sélecteur d’émojis dans le cœur de Discourse.

Problème du sélecteur d’émojis

Environnement :

Navigateur : Firefox ou Chrome (dernière version)
Affichage : Bureau, tablette et mobile
Possibilité de reproduire le problème : 100 %

Étapes pour reproduire le problème :

  • Ouvrez une fenêtre de chat Babble.
  • Cliquez ou appuyez sur l’icône du sélecteur d’émojis

Résultat attendu :

L’interface du sélecteur d’émojis s’ouvre

Résultat réel :

Rien ne se passe. Aucune fenêtre du sélecteur d’émojis ne s’ouvre.


Si cela ne complique pas les choses, la personne qui résoudra le problème du sélecteur d’émojis pourrait également vouloir corriger une traduction manquante.

Lorsque vous cliquez sur l’icône « … » à côté d’un message de chat, l’option Signaler s’affiche sous la forme « [en_US.post.actions.flag] » au lieu de « Signaler ».

2 « J'aime »

Le sélecteur d’émojis dans Babble ne fonctionne plus non plus pour mon site.

1 « J'aime »

En outre, mon chat défile aléatoirement vers le haut. Je crois que c’était un problème auparavant aussi.

1 « J'aime »

@angus ou toute autre personne disposant des compétences techniques pour aider avec Babble en ce moment – avez-vous un espoir de résoudre les deux problèmes que j’ai signalés il y a trois semaines dans cette réponse du forum ?

Merci pour ta réponse rapide, Joel.

J’ai ajouté la prise en charge du nouveau sélecteur d’émojis de Discourse.

J’ai également corrigé ce problème.

7 « J'aime »

Bonjour @angus, merci pour ton travail acharné sur ce plugin !

Mon système Discourse fonctionne avec une URL de base personnalisée pour le polling long. Comme je viens d’ajouter Babble, je constate qu’il n’ajoute aucun en-tête Access-Control (CORS), ce qui fait échouer plusieurs requêtes.

Je pourrais éventuellement écrire une correction si tu pouvais m’indiquer la bonne direction dans le code. :slight_smile:

Après avoir installé les dernières mises à jour de Discourse et la dernière version de Babble (il y a quelques jours, puis à nouveau hier pour vérifier si le problème était résolu), je rencontre des problèmes pour envoyer des messages, et l’indicateur de lecture reste bloqué en affichant qu’il y a de nouveaux messages.

Juste maintenant, alors que je ne pouvais pas envoyer de message, j’ai obtenu une série de cette erreur dans la console du navigateur :

Uncaught Error: No Reason Phrase
    jQuery 13
    error _application-49dab3118e527975ea48703627a0152cbe26663b7fde8423c667b094d716ae08.js:8967
    jQuery 4
_ember_jquery-865569b174cc91f4563f3552f437b32c6eadf9f6c3d49eae02cfe50e5a8c7dfa.js:38573:14
    jQuery 13
    u self-hosted:1177
    error _application-49dab3118e527975ea48703627a0152cbe26663b7fde8423c667b094d716ae08.js:8967
    jQuery 4
1 « J'aime »

Des comptes avec des noms d’utilisateurs étranges (commençant par « f5c… », par exemple f5cfe2e6cc098d) ont été détectés dans la liste des comptes du forum - This is the problem of a specific user or something else?

Votre plugin a-t-il déjà rencontré un tel problème ?

https://site.example.com/u?name=f5c

Quelle pourrait être la raison (il n’y avait aucun canal sur le site de test jusqu’à présent) ?


babble
6db4042

Veuillez corriger (babble_initial_user_count)

chemin admin/site_settings/category/plugins?filter=plugin%3Ababble

1 « J'aime »