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 2025-01-08 10:41:32

had-lorient
Member
Registered: 2025-01-07
Posts: 3

fusion de ticket automatique

Bonjour ,
Y a-t-il une méthode pour combiner automatiquement les tickets reçus par email ?
Je tiens à préciser que nous avons des réponses à des emails que nous aimerions fusionner avec le mail principal. Nous pouvons le faire manuellement, mais je n'ai pas trouvé de fonction pour les lier automatiquement.

Offline

#2 2025-01-08 14:22:25

cconard96
Moderator
Registered: 2018-07-31
Posts: 3,226
Website

Re: fusion de ticket automatique

Les réponses aux notifications de ticket GLPI sont automatiquement ajoutées en tant que suivi du ticket.

Vous pouvez fusionner des tickets en utilisant l'action « Fusionner en tant que suivi » sur le ticket en utilisant le bouton 3 points en bas à droite du ticket ou via des actions massives.


GLPI Collaborator and Plugin Developer.
My non-English comments are automated translations. Sorry for any confusion that causes.
Mes commentaires non anglais sont des traductions automatiques. Désolé pour toute confusion qui cause.
Mis comentarios que no están en inglés son traducciones automáticas. Perdón por cualquier confusión que cause.

Offline

#3 2025-01-10 11:52:52

had-lorient
Member
Registered: 2025-01-07
Posts: 3

Re: fusion de ticket automatique

mais est il possible de les fusionner automatiquement dès l'admission des mail

Offline

#4 2025-01-10 13:00:59

cconard96
Moderator
Registered: 2018-07-31
Posts: 3,226
Website

Re: fusion de ticket automatique

Non, parce qu'ils sont déjà censés être fusionnés, comme je l'ai dit précédemment. Toute réponse à une notification de ticket devrait être ajoutée en tant que suivi.

Pouvez-vous fournir plus de détails sur la manière dont vous envoyez des e-mails de ticket et dont vous répondez à ces e-mails ?


GLPI Collaborator and Plugin Developer.
My non-English comments are automated translations. Sorry for any confusion that causes.
Mes commentaires non anglais sont des traductions automatiques. Désolé pour toute confusion qui cause.
Mis comentarios que no están en inglés son traducciones automáticas. Perdón por cualquier confusión que cause.

Offline

#5 2025-01-10 13:30:38

had-lorient
Member
Registered: 2025-01-07
Posts: 3

Re: fusion de ticket automatique

Nous avons mis en place un collecteur qui renvoie vers un dossier de notre boîte mail, et les réponses sont envoyées par email. GLPI est utilisé uniquement en interne pour gérer nos interventions, les utilisateurs n'y ont pas accès.

Donc, si une réponse est donnée sur un mail et qu'elle est intégrée dans le dossier GLPI, cela entraîne la création d'un nouveau ticket plutôt que d'être ajoutée au ticket correspondant de l'e-mail principal .

Last edited by had-lorient (2025-01-22 15:55:06)

Offline

#6 2025-03-03 18:26:21

sribou
Member
Registered: 2025-03-03
Posts: 2

Re: fusion de ticket automatique

Bonjour,

J'ai exactement le même problème. Le fait que GLPI envoie des notifications individuelles, mes users préfèrent répondre sur la mail originale en mettant en copie l'adresse mail du collecteur mais chaque réponse génère un nouveau ticket car dans le mail originale il n'y a pas [GLPI #xxxx]

Avez vous trouvé une solution ?
1. soit une fusion automatique / soit rattaché automatiquement si l'objet du mail est le mail (en supprimant des RE et TR)
2. envoie global avec les personnes en copie afin de ne plus avoir une individualisation des notifications

Merci.

Offline

#7 2025-03-10 12:59:29

sribou
Member
Registered: 2025-03-03
Posts: 2

Re: fusion de ticket automatique

Bonjour,

Réponse à moi-même. J'ai modifié le code de MailCollector.php // juste après le "See in title", j'ai rajouté ceci :

       // See in title
        if (
            !isset($tkt['tickets_id'])
            && preg_match('/\[.+#(\d+)\]/', $subject, $match)
        ) {
            $tkt['tickets_id'] = intval($match[1]);
        }

// INS SR0001 Begin - GetClean Object

// Exécuter seulement si $tkt['tickets_id'] n'existe pas déjà
if (!isset($tkt['tickets_id']) || empty($tkt['tickets_id'])) {

Toolbox::logInFile(
    'mon_extension',
    sprintf("[%s] Début du traitement de l'email : %s\n", date('Y-m-d H:i:s'), $subject)
);

// Vérifier si le format "[GLPI #123]" est présent
if (preg_match('/\[GLPI  #\d+\]\s*(.*)/', $subject, $match)) {
    $cleaned_subject = $match[1]; // Tout ce qui suit "[GLPI  #NUM]"
} else {
    $cleaned_subject = $subject; // Utiliser le sujet complet si pas de "[GLPI  #NUM]"
}

// Supprimer tous les préfixes inutiles (RE:, TR:, FW:, etc.)
$cleaned_subject = preg_replace('/^((RE|AW|TR|FWD|FW|WG)\s*[:\/]\s*)+/i', '', $cleaned_subject);

Toolbox::logInFile(
    'mon_extension',
    sprintf("[%s] Sujet nettoyé : %s\n", date('Y-m-d H:i:s'), $cleaned_subject)
);

/** @var \DBmysql $DB */
global $DB;

$criteria = [
    'SELECT'  => 'id',
    'FROM'    => 'glpi_tickets',
    'WHERE'   => [
        'status' => ['!=', 6], // Statuts non clos
        'name'   => ['LIKE', "%$cleaned_subject%"] // Recherche floue sur le titre
        ],
    'ORDER' => 'id DESC',
    'LIMIT'   => 1
];

$found_ticket = $DB->request($criteria)->current();

if (!empty($found_ticket)) {
    $tkt['tickets_id'] = $found_ticket['id']; // Ticket trouvé
    Toolbox::logInFile(
        'mon_extension',
        sprintf("[%s] Ticket trouvé avec l'ID : %d\n", date('Y-m-d H:i:s'), $tkt['tickets_id'])
    );
} else {
    $tkt['tickets_id'] = null; // Aucun ticket trouvé
    Toolbox::logInFile(
        'mon_extension',
        sprintf("[%s] Aucun ticket trouvé correspondant à : %s\n", date('Y-m-d H:i:s'), $cleaned_subject)
    );
}
}
// INS SR0001 End - GetClean Object

Ceci permet à mes users de répondre sur le mail original sans que cela crée un nouveau ticket. Cela va rechercher un ticket existant non clos avec le même objet (nettoyé des TR, RE,...) pour lui ajouter la réponse directement.

Bonne journée.

Last edited by sribou (2025-03-10 13:02:04)

Offline

Board footer

Powered by FluxBB