[Résolu] Un utilisateur qui se connecte plusieurs fois...

Vos suggestions et idées pour améliorer IntraMessenger
Forum rules
Pour plus de lisibilité, et afin de faciliter le suivi, veuillez poster un nouveau sujet par thème.

[Résolu] Un utilisateur qui se connecte plusieurs fois...

Unread postby OliDAy5 » Fri Jul 12, 2013 9:31 am

Serait il envisageable qu'un utilisateur qui se connecte plusieurs fois (une session sur deux postes par ex.).
Que ce soit le client (IM) le plus récemment lancé, soit celui qui reçoive les messages.
Et que tous les clients lancés antérieurement soient désactivés.
OliDAy5
 
Posts: 162
Joined: Tue Apr 02, 2013 2:30 pm

Re: Un utilisateur qui se connecte plusieurs fois...

Unread postby THeUDS » Fri Jul 12, 2013 4:06 pm

OliDAy5 wrote:Que ce soit le client (IM) le plus récemment lancé, soit celui qui reçoive les messages.
Et que tous les clients lancés antérieurement soient désactivés.

C'est théoriquement ce qui doit se passer,
sauf que ça peut prendre 2-3 minutes pour désactiver les autres
mais avec la session coupée, ils ne doivent pas pouvoir recevoir de message.

Avez-vous constater un autre comportement ?
User avatar
THeUDS
 
Posts: 2311
Joined: Fri Apr 15, 2005 6:56 pm

Re: Un utilisateur qui se connecte plusieurs fois...

Unread postby OliDAy5 » Mon Jul 15, 2013 11:26 am

Parceque pour le moment, il est impossible pour un utilisateur connecté de se connecter une deuxième fois.

Si je me connecte une seconde fois j'obtiens au démarrage du client, ce message :

Image

Puis le client se ferme.
Dans les options sur le serveur, j'ai bien le paramètre " Nombre maxi de sessions (utilisateurs connectés simultanément) (0 : illimité)" à la valeur 0.
je ne vois pas d'autres paramètre qui contraindrait à ne pas pouvoir me connecter plusieurs fois.
Dans les rôles, je ne vois pas ce genre de paramètre non plus.
OliDAy5
 
Posts: 162
Joined: Tue Apr 02, 2013 2:30 pm

Re: Un utilisateur qui se connecte plusieurs fois...

Unread postby THeUDS » Mon Jul 15, 2013 5:52 pm

Oups ( :oops: ) c'était sans compter le cas particulier (exemple : poste anciennement verrouillé) où un contrôle de sécurité supplémentaire vérifie d'abord si une session est ouverte.

Dans tous les cas, aucune possibilité d'avoir deux sessions ouvertes.

Pour pouvoir considérer le dernier utilisateur comme celui à conserver (dans ce cas particulier),
ouvrir le fichier /common/user_start.inc.php
de la ligne 281 à 299
remplacer :
Code: Select all
{
  // Vérifie si une session en cours avec un autre check (donc le même compte depuis un autre PC).
  if (f_get_id_session_id_user($t_id_user) == 0)
  {
    update_check_user($t_id_user, $t_check);
    $retour = 'OK';
    //
    // si l'ancien existait :
    if ( ($usr_check != "") and ($usr_check != "WAIT") )
    {
      write_log("log_user_check_change", $t_user . ";" . $usr_check . ";" . $t_check );
    }
  }
  else
  {
    $retour = 'KO-OTHER-PC';
    write_log("log_user_check_double", $t_user . ";" . $usr_check . ";" . $t_check );
  }
}

par
Code: Select all
{
  // Vérifie si une session en cours avec un autre check (donc le même compte depuis un autre PC).
  if (f_get_id_session_id_user($t_id_user) == 0)
  {
    update_check_user($t_id_user, $t_check);
    $retour = 'OK';
    //
    // si l'ancien existait :
    if ( ($usr_check != "") and ($usr_check != "WAIT") )
    {
      write_log("log_user_check_change", $t_user . ";" . $usr_check . ";" . $t_check );
    }
  }
  else
  {
    #$retour = 'KO-OTHER-PC';
    #write_log("log_user_check_double", $t_user . ";" . $usr_check . ";" . $t_check );
    update_check_user($t_id_user, $t_check);
    $retour = 'OK';
  }
}



Les 2 lignes :
Code: Select all
update_check_user($t_id_user, $t_check);
$retour = 'OK';

ont été recopiées depuis le haut, en bas
et les 2 lignes juste avant sont commentées (avec dièse en début de ligne).
User avatar
THeUDS
 
Posts: 2311
Joined: Fri Apr 15, 2005 6:56 pm

Re: Un utilisateur qui se connecte plusieurs fois...

Unread postby OliDAy5 » Wed Jul 17, 2013 2:39 pm

Cela fonctionne. Les utilisateurs arrivent bien à se connecter de plusieurs postes.
Il semblerait que les clients liés à un même utilisateur cafouille un peu au début.
L'un et l'autre client se met en mode déconnecté pour se metrre en mode connecté un peu plus tard (1 à 2 minutes).

Un message envoyé à un utilisateur qui a deux clients ouverts, le message arrive sur les deux postes... (Pas tout a fait en même temps).
Pas gênant en soi, car cela fonctionne sur le dernier poste ou l'utilisateur a lancé le client.
Et s'il retourne sur le premier pc, il relit les messages qu'il a déjà lu sur le deuxième ordinateur...

Limite c'est peut-être mieux comme ça... dans mon cas...

Merciiii !
OliDAy5
 
Posts: 162
Joined: Tue Apr 02, 2013 2:30 pm

Re: Un utilisateur qui se connecte plusieurs fois...

Unread postby THeUDS » Wed Jul 17, 2013 5:21 pm

Le risque dans cette utilisation c'est que les sessions se ferment et s'ouvrent à nouveau en boucle.

Sur le serveur, dans les "Journaux serveur" consultez "Ouverture de session" pour vérifier...
User avatar
THeUDS
 
Posts: 2311
Joined: Fri Apr 15, 2005 6:56 pm

Re: [Résolu] Un utilisateur qui se connecte plusieurs fois..

Unread postby OliDAy5 » Wed Jul 24, 2013 10:20 am

Je viens de constater effectivement que dans le journal "Changement de poste".
Cela boucle, j'ai des records tous les 20 secondes...

Je dois faire machine arrière ?
OliDAy5
 
Posts: 162
Joined: Tue Apr 02, 2013 2:30 pm

Re: [Résolu] Un utilisateur qui se connecte plusieurs fois..

Unread postby OliDAy5 » Wed Jul 24, 2013 2:39 pm

J'ai préféré faire machine arrière pour éviter de tout saturer...
OliDAy5
 
Posts: 162
Joined: Tue Apr 02, 2013 2:30 pm


Return to Suggestions et idées

Who is online

Users browsing this forum: No registered users and 1 guest

cron