IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

AJAX Discussion :

[AJAX] "chat" comment signaler à un client que son contact est en train de saisir un message


Sujet :

AJAX

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Juin 2007
    Messages : 130
    Points : 124
    Points
    124
    Par défaut [AJAX] "chat" comment signaler à un client que son contact est en train de saisir un message
    Bonjour, je développe une application de chat avec AJAX et php.
    j'aurais aimé prévenir un utilisateur que son contact est en train de saisir un message.
    La méthode est appliquée sur le site "facebook":
    Lorsque l'un de nos contact nous répond, un icone de bulle apparait en bas a droite dans le chat.
    J'aimerais savoir si quelqu'un peut m'indiquer comment réaliser cela?
    Merci d'avance

  2. #2
    Membre expérimenté Avatar de DoubleU
    Profil pro
    Inscrit en
    Janvier 2006
    Messages
    1 106
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2006
    Messages : 1 106
    Points : 1 388
    Points
    1 388
    Par défaut
    C'est pas hyper simple a faire...

    Du coté du type qui écrit, il faut que dès qu'il commence a écrire tu interceptes un evenement (onkeypress, onchange peut etre) sur le textarea dans lequel il écrit et que tu envoies via une requete un flag au serveur pour dire que la personne écrit. Des qu'il envoie son message, tu envoies un autre flag pour dire qu'il a fini d'écrire.

    Coté serveur, quand tu reçois le premier flag, tu mets la date dans ta base pour marquer le début de l'édition, et quand tu reçois le 2e, tu supprimes l'enregistrement du début d'édition.

    Du coté du type qui attend le message, tu envoies périodiquement une requete pour savoir si le contact a un flag écriture ou pas, et tu affiches ton mesage en conséquence. Tout le problème étant de déterminer la fréquence d'envoi des requetes: trop longue, tu ne verras rien passer, trop courte, tu vas spammer ton serveur pour pas grand chose.

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Juin 2007
    Messages
    130
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Haute Loire (Auvergne)

    Informations forums :
    Inscription : Juin 2007
    Messages : 130
    Points : 124
    Points
    124
    Par défaut
    Ok, merci beaucoup, je vais appliquer cette méthode et je verrai si j'arrive à trouver une fréquence pratique ou si il vaut mieux que je ne l'utilise pas.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 12/06/2015, 15h40
  2. comment peut on verifier si son email est blacklisté?
    Par alpha42 dans le forum Dépannage et Assistance
    Réponses: 8
    Dernier message: 05/12/2011, 15h31
  3. Signifier a un utilisateur que son compte est bloqué
    Par enicnath dans le forum Debian
    Réponses: 5
    Dernier message: 10/08/2011, 17h30
  4. [AJAX] Savoir si l'autre personne est en train de saisir un message
    Par Pepito2030 dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 28/01/2007, 13h14
  5. [AJAX] [JSP] Comment le moteur AJAX considère que le readyState == 4 ?
    Par SONY30 dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 02/11/2006, 15h45

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo