Vérifiez vos informations

Il semblerait que les informations techniques de votre profil n'aient pas été actualisées depuis un certain temps... Pour que l'aide apportée vous soit efficace, il est important que ces informations soient à jour : prenez quelques secondes pour confirmer ou compléter les informations suivantes.


Lien de votre forum
Version de ce forum
Vous êtes le fondateur de ce forum
Vous avez modifié le CSS de ce forum
Vous avez modifié les templates de ce forum
Votre navigateur

Flux RSS / Webhook Discord

Voir le sujet précédent Voir le sujet suivant Aller en bas

Êtes-vous pour ou contre ?

Flux RSS / Webhook Discord Left1138%Flux RSS / Webhook Discord Right11 38% 
[ 5 ]
Flux RSS / Webhook Discord Left1162%Flux RSS / Webhook Discord Right11 62% 
[ 8 ]
 
Total des votes : 13
  • 0

Flux RSS / Webhook Discord Empty Flux RSS / Webhook Discord

Message par Fabsgugu le Ven 9 Aoû 2019 - 14:47

Bonjour à tous.

Avec l’émergence de Discord, plus en plus de Forum se retrouvent dessus. Voir la possibilité d'une connexion entre Forumactif et Discord ne serait pas idiot. Recevoir une notification sur le Discord quand une action sur le forum serait effectuée, serait un grand plus vraiment non négligeable. Par exemple pour un forum RP, recevoir une notification quand un post est effectué (après on peut forcement aller plus loin, mais en soit les posts me semble être la base)

Ma pensée à commencer avec l'envie de mettre en avant les derniers posts des membres effectuées, en retirant tout le flood. Actuellement sur forumactif la liste des derniers posts ne contient aucun filtre, et du coup les posts importants se noient dedans. Le Flux RSS quant à lui ne permet d'avoir qu'une liste de sujet. J'ai donc décidé de partir sur une solution JS. Mon objectif était qu'au moment qu'une personne poste son message, une notification soit envoyé sur le Discord. La solution est globalement satisfaisante car on arrive à avoir des notifications pour uniquement les sujets voulus. Cependant, le JS ce n'est pas ultra fiable dans ce genre de processus -> Si quelqu'un quitte vite la page, le JS n'a pas le temps de se lancer du coup la notification ne se lance pas, ou bien encore si cette personne bloque le JS par exemple. Du coup on a environ 80% des posts, ce n'est donc pas une solution optimale.

Je colle en dessous le script, je le laisse à la disposition des gens, néanmoins il faut savoir qu'il ne fonctionne pas à 100%. Il faut logiquement changer dessus les webhook, les catégories qu'on veut, et même changer le parsage, votre forum ayant sans doute un HTML différent du mien :

Code:
/**********************************
* @author : Fabsgugu
* @site : https://www.rpgdbz.com
* @version : 1.0
* @version_forumactif : phpbb2
***********************************/

document.write("<script type='text/javascript' src='http://images.rpgdbz.com/js/webhook.js'></script>" );

$(function () {

    /*********************
      CONFIGURATION
    ***********************/
    function config_webhook(url_post, titre) {
      
      // Configuration webhook : Liste vos différents webhook. Il est possible d'en mettre plusieurs à la suite.
        var webhook = {'id1' : 'https://discordapp.com/api/webhooks/idwebhook',
                       'id2' : 'https://discordapp.com/api/webhooks/idwebhook2',
                       'id3' : 'https://discordapp.com/api/webhooks/idwebhook3'};
      
      // Configuration de vos messages sous le format suivant :
      // { 'id du message' : [ [liste id cat ou topics autorisés ex: 'c1','f2','t4', ... ],['post','create','edit'] webhook['id_webook'], 'nom bot','message','titre message', 'couleur hexadécimal' , ... }
        return {
          'id1': [ ['c4'],['post','create'], webhook['zenoh'], "Zen-oh", "Rendez vous sur " + url_post + " dès à présent !", 'Nouveau rp de ' + _userdata.username + ' : ' + titre, "#049eff"],
          'id2': [ ['t12217'], ['post'], webhook['beerus'], "Beerus", "Rendez vous sur " + url_post + " dès à présent !", 'Message important du staff !', "#049eff"],
          'id3': [ ['f2'], ['create'], webhook['presentation'], "Zen-oh", "Rendez vous sur " + url_post + " dès à présent pour le saluer !", 'Nouvelle présentation de : ' + _userdata.username , "#049eff"]
               };
    }
    /*********************
      FIN DE CONFIGURATION
    ***********************/


    // On garde en mémoire le fait qu'on vient d'un click, ainsi que le type de post
    jQuery("form").on('click', 'input[name=post]', function (event) {
      if($('form table strong').html() == 'Editer le sujet'){
        createCookie('post_forum', 'edit', 1);
      }
      else if($('form table strong').html() == 'Poster un nouveau sujet'){
        createCookie('post_forum', 'create', 1);
      }
      else{
        createCookie('post_forum', 'post', 1);
      }
    });
  
    /* Mise en place de l'envoie de donnée si on est bien sur la page de confirmation d'un nouveau post */
    if ('/post' == window.location.pathname && getCookie('post_forum') != 'false' && $("#page-body table table table a").first().html() == 'Cliquez ici pour voir votre message') {
        console.log('here');
       // Si on sort de l'écran avant la fin du script, on n'envoit pas les données, donc on rajoute un message d'avertissement
      /*
        var myEvent = window.attachEvent || window.addEventListener;
        var chkevent = window.attachEvent ? 'onbeforeunload' : 'beforeunload';

            myEvent(chkevent, function(e) {
                var confirmationMessage = 'Attention, les données sont en cours de migration, quitter quand même ?';
                (e || window.event).returnValue = confirmationMessage;
                return confirmationMessage;
            }); */
      // Type de message
        var type = getCookie('post_forum');
      
      // Récupération de l'url du nouveau post
        var href = $("#page-body table table table a").first().attr('href');
        href = href.replace(/&amp;/g, '&');
        var url = window.location.origin + href;
      
      // Récupération de l'url du nouveau post propre pour pouvoir le parser
        var t_value = extractUrlParams(url)['t'];
        var url_2 = window.location.origin + '/viewtopic?t=' + t_value;
      
      // Si l'url existe on va pouvoir la parser pour récupérer des élements
        $.get(url_2, function (data) {
          
          // Récupération des élements de la page
            var titre = $(data).find("h1.cattitle").html().replace('&nbsp;','');
          
          // Récupération des paramètres
            var params = config_webhook(url, titre);

          // On regarde pour chaque config
            $.each(params, function (name, param) {

             // On regarde si c'est un bien un des modes autorisé            
              if ($.inArray(type, param[1]) >= 0){
                  
                // On regarde si l'url fait parti des topics à envoyer
                  if ($.inArray('t' + t_value, param[0]) >= 0) {  
                      hook_send(param);
                      return false;
                  }

                // On regarde pour chaque element du fil d'ariane si ça fait partie ou non des cats à envoyer
                  $(data).find(".nav.ariane a").each(function (index) {
                      var par = $(this).attr('href');
                      par = par.substring(1).split('-');

                      if ($.inArray(par[0], param[0]) >= 0) {
                          hook_send(param);
                          return false;
                      }
                  });
              }
            }).done( function() {
                delete myEvent;
            });
        });
    }
    createCookie('post_forum', false, 1);
});

/* Fonction pour envoyer un message webhook à partir de param */
function hook_send(param){
    let Hook = new Webhook(param['2'], () => {
       Hook.custom(param['3'], param['4'], param['5'], param['6'] );
    })
}

/* Fonction pour récupérer les paramètres d'une url */
function extractUrlParams(url) {
    var t = url.substring(0).split('?');
    t = t[1].substring(0).split('&');
    var f = [];
    for (var i = 0; i < t.length; i++) {
        var x = t[i].split('=');
        f[x[0]] = x[1];
    }
    return f;
}

On arrive donc au fait qu'il faudrait que Forumactif nous permette d'agir à ce moment là. La solution la moins coûteuse du coté de Forumactif serait de fournir un Flux RSS avec le choix des catégories / sujet (comme mon script) qui retourne non pas les derniers sujets, mais les derniers messages.

La solution optimale serait de faire l'équivalent de mon code mais en PHP (ce qui reste plus pratique car pas besoin de parser la page), laissant ainsi dans le backoffice juste à mettre les webhook et les catégories/sujets souhaités.

Voilà ^^


Dernière édition par Fabsgugu le Ven 9 Aoû 2019 - 18:07, édité 1 fois
Fabsgugu

Fabsgugu
Nouveau membre

Masculin
Messages : 29
Inscrit(e) le : 10/12/2008

https://www.rpgdbz.com
Fabsgugu a été remercié(e) par l'auteur de ce sujet.
  • 0

Flux RSS / Webhook Discord Empty Re: Flux RSS / Webhook Discord

Message par Kallindra le Ven 9 Aoû 2019 - 14:51

Bonjour !

j'ai voté contre parce que je trouve que le forum propose DEJA une plateforme de discussion rapide : le Chat !
Et oui cette si jolie fonctionnalité, pratique pour découvrir ses camarades de RP ou forum, papoter avec eux, les découvrir, discuter des rps en cours (désolée je l'utilise beaucoup dsur le fow RPG) etc !
Pourquoi vouloir aller ailleurs ???????????
Bref un gros NON pour moi.
Kallindra

Kallindra
Membre habitué(e)

Féminin
Messages : 1441
Inscrit(e) le : 04/03/2013

http://world-of-conan.forumactif.com/
Kallindra a été remercié(e) par l'auteur de ce sujet.

Flux RSS / Webhook Discord Empty Re: Flux RSS / Webhook Discord

Message par Fabsgugu le Ven 9 Aoû 2019 - 15:03

Il faut comparer ce qui est comparable. Le chat de Forumactif est très limité. Sur une communauté assez importante, ça devient vite inutilisable, il devient nécessaire de séparer les chats en plusieurs catégories. Discord fournit également un vocal, ce que Forumactif ne fournit pas. C'est un peu comme se dire qu'on a pas besoin d'internet car les lettres existent ^^. Mais en soit je conçois que cela ne sera pas utile à tout le monde.

Sinon c'est justement pour mettre en avant les RPs que cette solution serait utile, car on pourrait avoir une notification dés qu'un RP est posté.

Ce n'est pas une question de voir ailleurs, c'est juste de joindre deux outils ensemble.
Fabsgugu

Fabsgugu
Nouveau membre

Masculin
Messages : 29
Inscrit(e) le : 10/12/2008

https://www.rpgdbz.com
Fabsgugu a été remercié(e) par l'auteur de ce sujet.

Flux RSS / Webhook Discord Empty Re: Flux RSS / Webhook Discord

Message par Bryx le Ven 9 Aoû 2019 - 17:50

Bonjour,

Il s'agit d'une proposition très intéressante !

Je suis beaucoup Discord, les chatbox Forumactif sont de plus en plus mis de côté sur les forums où je suis pour des serveurs Discord, tout le contraire de la réponse de Kallindra. Pour te dire, les serveurs Discord on détrôner les nombreux systèmes de chatbox des forums phpBB, myBB, SMF, IP Board et même NodeBB. Cette proposition ne concerne pas que les forums RP, mais tous les forums dans sa globalité. Beaucoup de forums Forumactif migre leur chatbox vers des serveurs Discord pour les raisons que tu as déjà citées et obtenir une telle option sur les forums Forumactif serait un très grand plus et cela rendrait un peu de trafic pour les forums (incites les membres Discord à voir le forum).

En conclusion, une proposition fortement utile pour l'avenir des forums de Forumactif car les membres cherchent la facilité d'accès et la rapidité. Contrairement à ce qu'a dit Kallindra, la chatbox de base de Forumactif n'est ni sur la version mobile et est très compliqué d'accès depuis un mobile, je suis presque sûr que de plus en plu de monde essaye de venir sur les forums Forumactif ou autre (type Bouygues, Orange, LeRoyMerlin, Samsung) sur des smartphones et ses forums là sont très sensible à ce que pense les lecteurs, clients, membres, équipes de ses forums. J'ai voté POUR !

Tu verras que la communauté Forumatif composé d'ancien son contre l'utilisation des forums sur des smartphones car un smartphone sert à envoyer des SMS et des appels téléphoniques, ce que mes membres disent ce sont eux qui ne souhaite pas se mettre à la page de l'air du temps et c'était l'un des principaux points forts et principales de Forumactif d'être à la pointe de la technologie, ce fût plus le cas maintenant bien que l'équipe technique et commerciale de Forumactif essaye tant de reprendre la main dessus (ex : Application web progressive (PWA) disponible sur les forums Forumactif, https://forum.forumactif.com/t399897-).

Bonne fin de journée Wink
Bryx

Bryx
*

Masculin
Messages : 41
Inscrit(e) le : 03/12/2017

https://blackclover.fr
Bryx a été remercié(e) par l'auteur de ce sujet.
  • 0

Flux RSS / Webhook Discord Empty Re: Flux RSS / Webhook Discord

Message par Victor-57 le Ven 9 Aoû 2019 - 18:01

Les ChatBox ont toujours été plus ou moins mises sur le côté sur les forums, on ne peut pas le nier.
Discord a largement dépassé Skype, Mumble et TeamSpeak. Cette proposition ne peut que être positive.

Il ne faut plus être fermé mais voir le futur: la ChatBox forumactif, sauf grosse mise à jour, est condamnée à être sous-utilisée.
Victor-57

Victor-57
****

Masculin
Messages : 413
Inscrit(e) le : 06/03/2013

http://speedcraft.forumofficiel.fr
Victor-57 a été remercié(e) par l'auteur de ce sujet.

Flux RSS / Webhook Discord Empty Re: Flux RSS / Webhook Discord

Message par Jess Capa Hier à 17:35

Bonjour !

C'est sûr que tout ça induit un autre débat, un duel Chatbox / Discord. Forcément notre position sur ce débat aura une influence directe sur votre requête. Personnellement, j'admets volontiers que la Chatbox est dépassée, elle bug souvent, son utilisation n'est pas intuitive contrairement à Discord où l'on peut, par exemple, éditer ses messages, en supprimer, créer des salons etc... Pourtant je refuse de créer un Discord pour mon forum RPG parce que ça ne ferait qu'éparpiller la communauté entre ceux qui l'utiliseront ou pas. C'est autant de membres qui ne devront plus passer par le forum pour se retrouver, et je trouve que c'est un moins, voire le meilleure moyen de détruire l'activité de son fo à terme. Je dis ça d'expérience et, encore une fois, ce n'est que mon ressenti.

Dans cette logique (qui n'est que la mienne) je ne vois absolument aucun intérêt de lier Forumactif à Discord pour la notification de sujets importants postés et compagnie. A l'inverse, je serais d'accord pour un lien de ce type avec la Chatbox elle-même, et plus largement l'amélioration de celle-ci. Si ce n'est pas possible, laissons à Discord le loisir d'accueillir ceux qui veulent s'y exiler, mais ne facilitons pas la migration totale des communautés avec de tels liens privilégiés entre lui et Forumactif.

En résumé je vote contre parce que je ne veux pas encourager une migration sur une plateforme extérieure au forum, ce qu'impliquera plus facilement votre suggestion si elle finit validée.

PS: Je serais prête à revoir ma position si le staff de FA (et pas les admins de forums via un tour de passe-passe) mettait en place une sorte de widget / iframe Discord pour remplacer par défaut la Chatbox actuelle, directement sur le forum, mais j'ignore si c'est raisonnable ou réalisable. Quitte à lier les deux plateformes, autant le faire jusqu'au bout et dans ce cas, oui, j'y vois une cohérence et une véritable utilité. Cette option contenterait les utilisateurs de Discord à l'extérieur sans imposer aux membres de quitter le forum. Quoique... Même pas sûr. Et puis ça induirait tout de même plus de boulot aux admins pour la validation des nouveaux membres pour le passage aux salons privés etc... La Chatbox a l'avantage, par exemple, d'inscrire directement le nom de l'utilisateur sur le forum et pas son pseudo, ce qui n'est pas automatique avec Discord où l'intervention d'un admin est nécessaire pour opérer le changement de pseudo. Ce dernier point est évidemment problématique pour les administrateurs de forum RPG en particulier où il est toujours sympa de voir par défaut le nom du personnage plus qu'un simple pseudo. Bref, de l'administration supplémentaire là où tout est automatisé sur la CB de FA. Mais je digresse, c'est un autre débat !

Bonne journée Smile
Jess Capa

Jess Capa
Nouveau membre

Féminin
Messages : 24
Inscrit(e) le : 04/10/2017

http://www.magicneverdies-rpg.com/
Jess Capa a été remercié(e) par l'auteur de ce sujet.

Voir le sujet précédent Voir le sujet suivant Revenir en haut


Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum