Bonjour
Voilà, je vous expose mon interrogation
J'ai développé un petit Tchat utilisant du Long Polling.
L'affichage du tchat fonctionne très bien. Quand les deux personnes se parlent, ça s'affiche.
Partant de là, j'ai voulu implémenter une notification d'écriture : Quand une personne écrit, cela affiche chez l'autre qu'il est en train d'écrire.
J'ai donc "bricolé" un système qui, allie js et php.
L'algorithme de notification est le suivant :
On mesure la taille de la chaîne dans le champ de saisie par l'utilisateur A.
Si la taille de chaîne de saisie est supérieure à zéro, on modifie le fichier de notification de l'utilisateur A pour le mettre à 1.
Sinon, On modifie le fichier de notification de l'utilisateur A pour le mettre à 0.
L'algorithme de lecture est le suivant :
On ouvre le fichier de notification de l'utilisateur ne correspondant pas à l'utilisateur qui lit le tchat.
On retourne le contenu du fichier.
Là, JS prend le relais.
Si la valeur de réponse est un entier supérieur à 0
on affiche sur le navigateur l'icone de notification d'écriture.
Pour faire tout ça, j'utilise une fonction AJAX qui va exécuter un bout de code php permettant d'interroger le contenu des fichiers sur le serveur et afficher la réponse sur le navigateur)
Cette fonction est récursive, donc, se boucle sur elle-même toutes les 500ms (valeur arbitraire) afin de faire une notification instantanée.
J'aurais aimé savoir si il n'existait pas une méthode plus "propre" plutôt que l'usine à gaz que j'utilise ^^
J'espère que vous avez saisi le système.
Merci,
ZeClubbeur
Partager