You are not logged in.

Announcement

 Téléchargez la dernière version stable de GLPI      -     Et vous, que pouvez vous faire pour le projet GLPI ? :  Contribuer
 Download last stable version of GLPI                      -     What can you do for GLPI ? :  Contribute

#1 2016-11-24 16:04:38

kali24
Member
Registered: 2009-09-21
Posts: 84

Collecteur avec Gmail

Bonjour,

Nous utilisons le collecteur GLPI depuis longtemps avec une bal GMail en IMAP avec succès.

Depuis la mise à jour en 9.1.1 (0.90.2 auparavant ), les mails non collectés par GLPI sont donc refusés mais leur libellé " Boite de Reception" disparait.

Cela n'etait pas le cas avant mis à jour :

Les mails étaient passés en lus mais le libellé n'était pas supprimé. Aujourd'hui, ils sont "archivés" automatiquement , il faut donc aller dans " tous les messages " pour les retrouver. Il arrive donc de louper des messages importants qui ne sont pas destinés à être collectés.

Avez vous deja rencontrer ce comportement ?

Merci beaucoup pour vos réponses.


Debian Squeeze / Glpi 9.1.1 / Fusioninventory 9.1+1.1 / Agent fusion 2.3.18
PHP 5.4.45-0+deb7u6
Zend Engine v2.4.0

Offline

#2 2017-01-09 12:24:27

kali24
Member
Registered: 2009-09-21
Posts: 84

Re: Collecteur avec Gmail

Bonjour à tous,

Je rebondis sur ce post puisque je suis aujourd'hui dans la nécessité de couper mon collecteur suite à des comportements instables.

Je m'explique.

Comportement souhaité : Lorsqu'un mail arrive dans la BAL Gmail " INBOX", le collecteur passe dessus toutes les 10 minutes :

-Soit il correspond à un règle d'import, auquel cas un ticket est crée, le label "Boite de réception" Gmail supprimé et un label GLPI_OK Gmail est crée.

-Soit il ne correspond pas à une règle d'import , auquel cas le ticket n'est pas crée , le label "Boite de réception" Gmail se supprime et un label GLPI_NOK se crée de façon à pouvoir voir le mail et le traiter manuellement avec GLPI.

Aujourd'hui , ce systeme fonctionne la plupart du temps mais nous avons des comportement aléatoires sans pouvoir en determiner la cause :

- Certains tickets se créent en double
- Certains suivis se créent en double
- Certains mails ne sont pas traités par le collecteur

Je pense avoir un gros problème avec le traitement des labels GMAIL par le collecteur GLPI.

- Lorsqu'un mail est crée en double, je pense que le collecteur est passé sur le mail mais n'a pas fait son traitement sur le label ( pas enlevé INBOX et pas ajouté GLPI_OK ). Ce qui fait que GLPI refait son boulot , il revoit le mail et le reimport de nouveau en ticket mais cette fois en faisant son job sur les labels.
- Lorsqu'un suivi est en double , je pense que le pb est similaire.

- Pour les mails non traités, nous avons retrouvés des mails qui ne portaient pas de label et qui étaient non lus. Cela peut signifier que le collecteur est passé sur le mail, ne l'a pas importé mais a enlevé le label " Boite de reception" sans ajouter de label " GLPI_NOK" ou "GLPI_OK". Cela a pour consequence de laisser des mails non lus mais ne portant plus de labels et se retrouvent donc dans un no man's land.

Aujourd'hui, j'aimerai pouvoir diagnostiquer ce probleme , le resoudre mais je ne sais pas comment m'y prendre...

Pouvez vous m'aider ? Est ce un bug ?

Merci beaucoup pour vos réponses !

Paramétrage GLPI :
Dossier des messages entrants (optionnel, souvent INBOX) : INBOX
Dossier d'archivage des courriels acceptés (optionnel) : GLPI_OK
Dossier d'archivage des courriels refusés (optionnel) : GLPI_NOK

Last edited by kali24 (2017-01-09 12:26:09)


Debian Squeeze / Glpi 9.1.1 / Fusioninventory 9.1+1.1 / Agent fusion 2.3.18
PHP 5.4.45-0+deb7u6
Zend Engine v2.4.0

Offline

#3 2017-01-09 13:13:48

kali24
Member
Registered: 2009-09-21
Posts: 84

Re: Collecteur avec Gmail

J'ajoute que dans php-errors.log , lorsque un mail n'est pas importé et que son label est enlevé , les messages suivants s'affichent .

Il a fallut 3 fois pour importer correctement le meme mail.


2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Warning(2): imap_header(): Bad message number
  Backtrace :
  :
  inc/mailcollector.class.php:1166                   imap_header()
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1167
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1168
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1169
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1173
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1174
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1179
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Warning(2): Creating default object from empty value
  Backtrace :
  inc/mailcollector.class.php:1196
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1199
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1199
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1201
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1201
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Notice(8): Undefined property: stdClass::$message_id
  Backtrace :
  inc/mailcollector.class.php:1202
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-09 16:00:43 [2@s-srv-119]
  *** PHP Warning(2): imap_fetchheader(): Bad message number
  Backtrace :
  :
  inc/mailcollector.class.php:1124                   imap_fetchheader()
  inc/mailcollector.class.php:1216                   MailCollector->getAdditionnalHeaders()
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()

Last edited by kali24 (2017-01-09 17:33:32)


Debian Squeeze / Glpi 9.1.1 / Fusioninventory 9.1+1.1 / Agent fusion 2.3.18
PHP 5.4.45-0+deb7u6
Zend Engine v2.4.0

Offline

#4 2017-01-11 13:11:46

kali24
Member
Registered: 2009-09-21
Posts: 84

Re: Collecteur avec Gmail

Personne n'a d'idées ?  (désolé pour le up... )


Debian Squeeze / Glpi 9.1.1 / Fusioninventory 9.1+1.1 / Agent fusion 2.3.18
PHP 5.4.45-0+deb7u6
Zend Engine v2.4.0

Offline

#5 2017-01-11 15:05:31

anthony_v
Member
Registered: 2017-01-10
Posts: 4

Re: Collecteur avec Gmail

Bonjour,

En ce qui concerne le problème des mails qui sont archivés alors qu'il ne devraient pas être pris en compte par le collecteur :

Une solution théorique serait de créer un filtre pour les mails de demande d'assistance et les placer automatiquement dans un dossier (par exemple GLPI), puis de dire au collecteur de scanner ce dossier plutôt que le dossier inbox, afin de laisser les autres mails intactes (exemple : Dossier de réception = GLPI ; Dossier archivage ok : GLPI/OK ; Dossier archivage non ok : GLPI/NOK)

Pour les mails qui ne sont pas collectés du tout : vérifier si l'adresse du demandeur n'est pas la même que l'adresse du collecteur. Dans ce genre de cas, le mail passe en liste noire.

En ce qui concerne le log php je ne peux malheureusement rien faire.

En espérant avoir pu t'aider.

Cordialement.

Offline

#6 2017-01-11 15:30:10

kali24
Member
Registered: 2009-09-21
Posts: 84

Re: Collecteur avec Gmail

Merci beaucoup pour votre réponse.

Je suis en train de tester le fonctionnement du collecteur avec une bal Outlook sur une base de recette pour voir si j'ai le meme comportement ou non.


Debian Squeeze / Glpi 9.1.1 / Fusioninventory 9.1+1.1 / Agent fusion 2.3.18
PHP 5.4.45-0+deb7u6
Zend Engine v2.4.0

Offline

#7 2017-01-11 17:31:07

kali24
Member
Registered: 2009-09-21
Posts: 84

Re: Collecteur avec Gmail

J'ai poursuivi mes tests :

Transfert automatique des mails recus sur gmail vers une bal Outlook.fr
Nouveau serveur Debian 8 installé from scratch ( 7 en prod ), maj OK
Glpi à jour +  plugins à jour.
Collecteur configuré sur la bal Outlook

Comportement identique, certains mails importés deux fois. Le mail importé reste dans la bal de reception, et ne disparait de celle ci que lors de la deuxieme collecte.

J'ai le sentiment que c'est le corps du mail ( issu de Gmail ) qui pose soucis.

Meme message d'erreur sur ce serveur dans le php-errors.log :

2017-01-11 16:24:55 [2@s-srv-211]
  *** PHP Warning(2): imap_header(): Bad message number
  Backtrace :
  :
  inc/mailcollector.class.php:1166                   imap_header()
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()
2017-01-11 16:24:55 [2@s-srv-211]
  *** PHP Notice(8): Trying to get property of non-object
  Backtrace :
  inc/mailcollector.class.php:1167
  inc/mailcollector.class.php:640                    MailCollector->getHeaders()
  inc/mailcollector.class.php:508                    MailCollector->buildTicket()
  inc/mailcollector.class.php:1614                   MailCollector->collect()
  :                                                  MailCollector::cronMailgate()
  inc/crontask.class.php:834                         call_user_func()
  front/crontask.form.php:50                         CronTask::launch()

Last edited by kali24 (2017-01-11 17:36:24)


Debian Squeeze / Glpi 9.1.1 / Fusioninventory 9.1+1.1 / Agent fusion 2.3.18
PHP 5.4.45-0+deb7u6
Zend Engine v2.4.0

Offline

#8 2017-01-12 10:16:21

anthony_v
Member
Registered: 2017-01-10
Posts: 4

Re: Collecteur avec Gmail

J'ai le sentiment que c'est le corps du mail ( issu de Gmail ) qui pose soucis.

De mon côté je rencontre des problème lié à la boîte Gmail, j'ai bien l'impression que le problème vient de là et pas de Glpi. Je ne peux t'aider plus pour ton problème.

En te souhaitant bonne chance pour la résolution de cet incident.

Cordialement.

Offline

#9 2017-01-19 13:00:23

kali24
Member
Registered: 2009-09-21
Posts: 84

Re: Collecteur avec Gmail

Mon problème semble resolu depuis les modifications suivantes :

Modification de la chaine de connexion du collecteur de

{imap.gmail.com:993/imap/ssl/no-tls/no-validate-cert/debug}INBOX

à

{imap.gmail.com:993/imap/ssl/debug}INBOX

Plus de messages d'erreurs type "imap_header(): Bad message number" (mails qui n'avaient plus de labels sous gmail apres collect GLPI )

Modification de paramètres Gmail :
- Ignorer les filtres
- Lorsque je marque un message comme supprimé dans IMAP : Désactiver l'effacement automatique : mise à jour du serveur par le client
-  Lorsqu'un message est marqué comme supprimé ou effacé du dernier dossier IMAP visible : Archiver le message (option par défaut)


Voilà, j'espere que cela pourra servir !

Bonne continuation à tous, vous pouvez clore le sujet


Debian Squeeze / Glpi 9.1.1 / Fusioninventory 9.1+1.1 / Agent fusion 2.3.18
PHP 5.4.45-0+deb7u6
Zend Engine v2.4.0

Offline

Board footer

Powered by FluxBB