Fork me on GitHub




(1) 2 3 4 ... 14 »


[Nouveau module] aChat [Nouvelle version] v0.22
Semi pro
Inscrit: 05/06/2004 14:25
Messages: 750
Bonjour à tous!

Après un bon mois de codage, voici un nouveau module : aChat!

C'est un module de chat, avec AJAX, d'où son nom !
(à utiliser comme une Tagboard idéalement)

démo aChat par ici!

Après pas mal de tests sur xoops 2.0.13.2 et 2.0.14, je met ce module en beta publique, c'est maintenant à vous de le tester, et de me faire part de vos impressions, bugs trouvés, suggestions d'améliorations, je suis à l'écoute!


Coté fonctionnalités je vous laisse regarder le fichier lisezmoi.txt présent dans l'archive.
En résumé : Smileys, BBCodes, couleurs, (tout ca paramétrable), purge, création de fichiers logs...


Côté technique j'ai utilisé une classe AJAX javascript sous CC codé par un francais : XHRConnection.
(que j'ai légèrement modifié pour l'adapter à mes besoins!)
J'ai choisi XHRConnection car le fichier est très léger (8ko) par rapport aux autres monstres qui proposent un volume au moins triple!

Tout le reste vient de mon clavier de portable!


J'espère que ce module vous plaira et que vous serez nombreux à le tester!

PS :Je reviens de vacances dans 2 semaines, alors c'est normal que je ne vous réponde pas avant!




Open in new window

Voici la nouvelle version du module aChat, la v0.22.
(nouvelle version 0.22 : corrige le problème des caractères € et autres alphabets, corrige un problème lors de la création de fichiers logs, le pseudo choisi par les visiteurs anonymes n'était pas pris en compte, et d'aurtes petites corrections...)
(la version 0.21 est une mise à jour de la version 0.2, qui corrige le problème de la purge qui ne fonctionnait parfois pas, et qui optimise toutes les requetes sql, merci à Satanas pour son aide!)

Après les retours d'utilisation de la version 0.1, j'ai ajouté pas mal de fonctionnalités et corrigé les problèmes trouvés, donc cette version devrait être stable et rester la dernière version un certain temps (à moins qu'on trouve de gros problèmes, au quel cas il y a aura bien évidemment une nouvelle version !)

Télécharger aChat v0.22

démo aChat v0.22 par ici!


Coté fonctionnalités je vous laisse regarder le fichier lisezmoi.txt présent dans l'archive. En résumé : Smileys, BBCodes, couleurs, choix du pseudo pour les anonymes, (tout ca paramétrable), purge, création de fichiers logs, gestion des droits d'envoie, clonage du module en un clic (Merci Solo!) pour créer différents salons, possibilité de voir les anciens messages envoyés, ainsi que les archives etc...

Côté technique j'ai utilisé une classe AJAX javascript sous CC codé par un français : XHRConnection.
(que j'ai légèrement modifié pour l'adapter à mes besoins!)

Le fichier contient les langues français, anglais (à refaire, me contacter), et espagnol ( merci à JAWi Tugal !)
Contactez moi si vous avez d'autres traductions ! (je les mettrai ici).

Posté le : 06/08/2006 04:05

Edité par Niluge sur 30/08/2006 23:39:34
Edité par Niluge sur 30/08/2006 23:41:13
Edité par Niluge sur 31/08/2006 18:34:57
Edité par Niluge sur 01/09/2006 17:07:34
Edité par Niluge sur 01/09/2006 17:08:14
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Supporter Xoops
Inscrit: 09/01/2005 13:37
De Breizh
Messages: 16972
Merci, et bonne vacances

Kris

Posté le : 06/08/2006 05:04

La connaissance s'accroît quand on la partage ...
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Régulier
Inscrit: 09/03/2004 09:12
Messages: 106
Salut Niluge !

Bravo pour ce module déjà bien au point pour une béta :bravo:
Les fonctionnalités sont au rendez-vous et seules quelques améliorations me le feront sans mettre en production à la place de mon vieux "shoutbox-3.0 Final" trafficoté par mes soins.

Je note pour cela l'excellente idée de pouvoir avoir un choix de la couleur du message et celle aussi du tronquage à l'affichage d'url trop longues, c'est effectivement un problème dans "shoutbox". Enfin, j'ai apprécié aussi la possibilité de faire des sauvegardes des messages !

Je pense par contre que plus que l'affichage du nombbre de messages dans la base de donnée, ce qui serait intéressant, ce serait de d'accéder à la liste des messages de la base et de pouvoir supprimer une entrée simplement dans l'interface admin. Il m'arrive d'avoir des posts à supprimer (des url justement...) et pour le moment sous "shoutbox", je le fais en accédant par ftp au fichier "shout.csv" et en le modifiant à la main. Une situation pas confortable n'est-ce pas !

Si le fait de pouvoir envoyer un message de la couleur choisie est une excellente idée (ce qui permet d'y voir plus clair tout de même lors d'une conversation à plusieurs), ce qui serait bien, c'est de conserver le choix de cette couleur dans un cookie par exemple, afin de ne pas devoir à chaque fois, chaque message sous IE seulement, mais pourquoi pas chaque session, resélectionner cette couleur de choix.

Autre idée aussi, actuellement, les messages s'affiche de haut pour les plus anciens, vers le bas pour les plus récents. Ce serait bien de pouvoir laisser le choix de cette affichage, pour ma part, je préfère les plus récents en haut.
A noté également que dans le bloc, ce serait tout autant sympa de pouvoir choisir le nombre de messages à afficher, pour le moment, je trouve qu'une dizaine de messages, c'est un peu court.

Enfin, encore une petite idée retournée par un des membres du site que j'administre : Actuellement, le bloc de la "shoutbox" est visionnable par les membres, mais pas par les anonymes pour des raisons de sécurité. Il serait donc intéressant d'avoir la possibilité de proposer les messages aux anonymes mais sans pouvoir "chater".

Sinon, du côté stabilité du module, pas grand chose à dire. En tout cas sous Firefox. Pour ma part, je l'ai testé dans un environnement local "xoops v2.0.13.2".
J'ai parfois des temps assez long (en tout cas pas rapport avec le choix de temps voulu du côté admin) d'affichage des message ?! Voir pas de message du tout quand la liste est blanche ?! Mais c'est peut-être lié à mon environnement, mieux vaut attendre des retours d'autres testeurs
Là où j'ai des problèmes, c'est sous IE (v7.x, pas testé sous la v6.x) où j'ai le bloc qui s'ajuste mal avec la largeur de la colonne si les messages sont trop longs. C'est même pire quand on ouvre l'option vu que celle-ci occupe la largeur du nombre de smileys... Une fois de plus, c'est peut-être lié à mon thème, j'ai pas poussé le test complétement...

Voilà, oui je sais cela fait un peu beaucoup pour un retour de vacances et un peu exigant de ma part, toutesfois j'ai véritablement accorché à ton module et j'y crois assurément.
Mes capacités en la programmation de module sont limitées mais mes possibiltés à tester infinies, donc n'hésite pas à me solliciter

Bon courage pour ce développement !
@+

Posté le : 07/08/2006 13:57

Edité par machenzy sur 08/08/2006 12:53:22

Open in new window
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Semi pro
Inscrit: 05/06/2004 14:25
Messages: 750
Merci pour vos retours! surtout machenzy!

Concernant le tronquage d'url trop longues, j'ai rajouté cette fonctionnalité coté client à l'affichage, en javascript, quelques heures seulement avant de tout publier, et bon apprendre les expressions régulières et leurs subtilités en une soirée c'est pas facile!
Bref tout ca pour dire qu'elle est succeptible d'être améliorée, mais bon ca à l'air de bien marcher actuellement.
J'avais codé une autre fonction qui tronque les mots trop long, mais là ca a posé beaucoup trop de problèmes, et va falloir que je prenne un cours d'expressions régulières pour faire marcher ca. (actuellement la fonction tronque le code html, alors un simple smiley se transforme en bout de code html à l'affichage c'est moche!)

Concernant le côté admin, la version 0.1 contenait le strict minimum, et l'affichage du nombre de messages dans la base de donnée c'est plus pour décorer qu'autre chose!

J'ai commencé la version 0.2, et j'ai rajouté déjà la posibilité de tronquer par nombre de jours au lieu de par nombre de messages. Je vas ajouter la possibilité de supprimer des messages, mais ca sera assez archaïque, par manque de temps ( je reprends les études dans moins de 2 semaines et bref il faudra que je m'arrete de coder!) je pense à une suppression par id de messages, c'est pas top mais bon les id des messages sont récupérables très facilement dans le code html généré à l'affichage donc ca devrait suffir dans un 1er temps.

Concernant le cookie pour enregistrer la couleur, j'y ai pensé, mais je suis faché avec les cookies (j'ai jamais réussi à faire fonctionner ces bêtes!) bref j'essairai de voir ca. Mais normalment sous IE comme sous Opera ou FF, le choix de la couleur reste tout le temps qu'on reste sur la page sans la recharger....

Pour l'ordre des messages je vais ajouter une option, ca coute rien, même si la quasi totalité des tchat se font dans le sens que j'ai utilisé...

Pour le bloc, il faut aller voir dans les options du bloc, normalment dès la v0.1 on pouvait choisir le nombre de messages à afficher initialement. de toute facon si le tchat est utilisé, le nombre de message visible grandit rapidement!

Pour ce qui est des droits d'accès aux annonymes, sans avoir le droit d'envoyer des messages, je n'y avait vraiment pas pensé, mais ca à l'air indispençable, car c'est ce qui est revenu très souvent sur les retours sur le site xoops.org! Bref je vais voir ce que je peux faire de ce côté aussi!

Concernant les performances, j'ai déjà amélioré une petite chose qui fait beaucoup : quand on envoie un message, ca passe par une requete AJAX, qui ne faisait rien d'autre, maintenant en retour elle récupère aussi les nouveaux messages postés, bref on gagne en fluidité!
Après niveaux tests en local il faut savoir que Apache n'est pas aussi optimisé sous Windows que sous Linux, et que donc un serveur test local sous windows sera moins performant qu'un vrai serveur web. Par contre je ne peux pas nier que mon module soit quand même lourd, mais ca je ne peux rien y faire, chaque client envoie uen requete toutes les X secondes au serveur, et ca ca utilise beaucoup de ressources... C'est pour ca que le temps d'actualisation est paramétrable, en fonction de vos besoins, par défaut il est réglé en mod tchat sur un petit site, idéal pour 5 personnes par exemple, de toute facon si c'est pour faire un vrai tchat, il faut nécessairement utiliser IRC, et là c'est complètement différent.
J'ai aussi tenté d'optimiser au maximum les actualisations : le module télécharge uniquement les nouveaux messages postés. (ca a d'ailleur posé bcp de problèmes quand on flood, la marchine s'enraye et répète en boucle des messages, du coup j'ai fait un javascript qui à chaque arrivée de messages, regarde un par un si il n'est pas déjà affiché, du coup ca ralentit tout l'affichage du coté du floodeur...ce qui n'est pas forcément mal!)


Je n'ai pas IE7 donc je ne peux pas tester sur ce navigateur, mais sur IE6, j'ai testé avec le thème par défaut, et ca allait bien, après si la colonne n'est pas de la même largeur, faut ajuster les templates et le css.( à ce sujet j'ai rajouté une option dans le bloc, pour choisir soi même la taille de la zone de saisie du message, ce qui permet une plus simple modification pour s'adapter à d'autres thèmes). Mais en effet IE a la facheuse tendance à faire n'importequoi quand le contenu d'une div est plus grand que la div...

Concernant les nouveautés que j'ai déjà codés : 2 nouvelles pages coté client :

Viewlogs.php et Viewarchives.php

La 1ere page permet de voir les anciens messages envoyés, encore présent dans la base de donnée, avec une navigation simple grâce à un formulaire plein d'options. (choix du nombre de messages par pages, et de l'ordre des messages, avec navigation par page bien évidemment!)

La 2eme page liste les fichiers html créés par les purges effectuées coté admin, et de les afficher sur le site (le script lit le fichier html et l'insert dans la page ).

Bref tout ca pour simplifier la lecture des anciens messages.


En écrivant ce post j'ai aussi eu une nouvelle idée : un nouveau bloc qui lui serait statique, juste un apercu de ce qui se passe sur le tchat, utile pour des sites à fort traffic, comme ca il n'y a pas 250 visiteurs simultanés qui actualisent inutilement le tchat.

Bref je pense avoir fait le tour de ce que j'avais à dire/

Encore merci machenzy pour ton retour fort intéressant et encourageant!

D'ici une semaine environ je posterait une nouvelle version avec tout ce qui a été dit ici, et le reste si il y a du nouveau!

Posté le : 23/08/2006 02:35
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Régulier
Inscrit: 04/11/2005 13:45
Messages: 177
Bonjour,

J'ai une petite question concernant ce module.

Est-il envisageable qu'il puisse gérer des rooms ?

Je m'explique :

Ce n'est pas que je m'occupe d'un site avec des rooms dans tout les coins mais mes membres ont souhaités avec des espaces de discussions privés.
C'est un site concernant des maladies rares et par conséquent certaines discussions sont très intimes ...

Actuellement, j'utilise le Xoops Chat 1.5 car il gère les rooms mais l'affichage dans un bloc n'est pas correct.

Je pense donc que si aChat pouvait gérer des rooms, il répondrait aux besoins d'un grand nombre de webmasters ...

Merci d'avance pour la réponse !

Posté le : 23/08/2006 11:39
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Semi pro
Inscrit: 05/06/2004 14:25
Messages: 750
Bonjour pmartina,
D'autres personnes m'ont déjà demandé d'ajouter cette fonctionnalité , pouvoir gérer plusieurs rooms. Le problème est que ca nécessite pas mal de changements et que dans ma vision initiale du module, il n'y a pas besoin de rooms.

Ce module est fait pour êter utilisé comme uen Tagboard à la base, et pas comme un tchat, avec rooms et autres...

une solution pour créer plusieurs rooms est de cloner le module. Concernant tes besoins, il te faudrait des rooms privées, mais privés jusqu'à quel point? gestion des droits par groupes de membres xoops? ca c'est tout à fait possible avec la gestion des droits xoops, et puis du clonage pour garder un autre tchat public, par contre si c'est pour créer des rooms privées pour 2 ou 3 personnes là c'est plus possible et vraiment trop compliqué à coder pour moi. Dans ce dernier cas je te conseil d'utiliser un tchat IRC, c'est très pratique.

Donc la gestion des rooms je ne pense pas que ca soit pour la version 0.2 car ca s'écarte trop de ma vision initiale du module, et que je n'ai plus le temps de recoder trop de nouveautés. Par contre il se peut que dans une prochaine version j'ajoute cette fonctionnalité, mais ca ne sera pas pour tout de suite...

Donc si tu souhaites utiliser mon module, je te conseille de rechercher sur ce site comment cloner un module! Et d'attendre la version 0.2 qui aura pas mal d'améliorations!

Posté le : 23/08/2006 15:03
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Admin Frxoops
Inscrit: 04/02/2003 07:37
De Belgique
Messages: 3376
@Niludge : Si tu as besoin d'aide pour le clonage d'un module, tu peux t'inspirer de ce que j'ai fait dans le module myhome. Regadre le script '/admin/utilities.php'.

Si tu as besoin d'explication, je suis à ta disposition.


Posté le : 23/08/2006 15:14
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Semi pro
Inscrit: 05/06/2004 14:25
Messages: 750
Merci Solo71 pour l'aide!

J'avais justement téléchargé ce module pour le tester!

Je vais le regarder d'un peut plus près alors!
C'est la fameuse fonction autoclonage que j'ai déjà apercu quelquepart dans un résumé des possibilité d'un module récemment mis à jour dont tu parles?

Au fait c'est pas Niludge, mais Niluge, ou Niluge_KiWi sur xoops.org, bref encore merci je vais voir tout ca!

Posté le : 23/08/2006 15:18
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Semi pro
Inscrit: 05/06/2004 14:25
Messages: 750
Super fonction de clonage!

Je l'ai un peut modifié, pour qu'elle gère les majuscules dans le nom du module.

j'ai remplacé : début ligne 153



$CLONE  strtoupper(eregi_replace("-","_"$clone));
    
$clone  strtolower(eregi_replace("-","_"$clone));
    
$Clone  ucfirst($clone_orig);
    
$MODULE strtoupper($module);
    
$Module ucfirst($module);

    
$patterns = array(
      
// first one must be module directory name
      
$module  => $clone,
      
$MODULE  => $CLONE,
      
$Module => $Clone,
    );


par


$CLONE  strtoupper(eregi_replace("-","_"$clone));
    
$clone eregi_replace("-","_"$clone);
    
$clone_bas  strtolower(eregi_replace("-","_"$clone));
    
$Clone  ucfirst($clone_orig);
    
$MODULE strtoupper($module);
    
$Module ucfirst($module);
    
$module_bas strtolower($module);
    
    
$patterns = array(
      
// first one must be module directory name
      
$module  => $clone,
      
$module_bas  => $clone_bas,
      
$MODULE  => $CLONE,
      
$Module => $Clone,
    );


Et la ca conserve les majuscules ( sur mon module j'ai cloné en aChat2 et le C restait bien en majuscule )!


Il serait intéressant aussi de copier les CHMOD du module initial, car ca pourrait poser quelques problèmes sinon...

En tout ca ca c'est le genre de script qui devrait être intégré d'office au prochains Xoops, ca éviterait que chaque module l'embarque... c'est comme le menu horizontale qui apparait dans de plus en plus de modules, c'est con de recopier le même code à chaque fois...

Posté le : 23/08/2006 18:28
Partager Twitter Partagez cette article sur GG+
Re: [Nouveau module] aChat v0.1 Beta Publique!
Régulier
Inscrit: 09/03/2004 09:12
Messages: 106
Salut Niluge !

Juste un petit mot pour te dire que j'ai pris note de tout cela, que et je suis toujours ton projet

Dernièrement, j'ai relevé un autre petit désagréement.
Le "tagboard" est positionné un accueil dans un block donc. Mais pour des raisons de poids, il tombe au milieu-gauche. Le problème est qu'appriori, il y a tout de suite "focus" sur la boite de texte dès qu'on appelle index.php. Et donc, si j'ai été clair, tu as compris que du coup, la page se déplace vers le bas, cachant un espace en haut automatiquement (sou IE comme sous FF)

Voilà bon courage et bonne reprise alors
@+

Posté le : 25/08/2006 01:20

Open in new window
Partager Twitter Partagez cette article sur GG+

 Haut   Précédent   Suivant
(1) 2 3 4 ... 14 »



Vous pouvez voir les sujets.
Vous ne pouvez pas débuter de nouveaux sujets.
Vous ne pouvez pas répondre aux contributions.
Vous ne pouvez pas éditer vos contributions.
Vous ne pouvez pas effacez vos contributions.
Vous ne pouvez pas ajouter de nouveaux sondages.
Vous ne pouvez pas voter en sondage.
Vous ne pouvez pas attacher des fichiers à vos contributions.
Vous ne pouvez pas poster sans approbation.

Propulsé avec XOOPS | Graphisme adapté par Tatane, Grosdunord, Montuy337513

60 Personne(s) en ligne (48 Personne(s) connectée(s) sur Forum) | Utilisateur(s): 0 | Invité(s): 60 | Plus ...