Bonjour tout le monde,

voila mon problème,
j'avais créé un trigger qui envoyait des emails à des clients en se basant sur une table où il récupère les informations comme le corps du mail ,objet, cc et le ccc. ça marchait très bien
mais ces derniers temps nous avons eu quelques réclamations des clients qui n'ont pas reçu de mail, je voudrais maintenant ajouter à mon trigger un accusé de réception ou une trace qui permet de faire le suivi des emails et vérifier qu'ils sont bien arrivés aux destinataires ,
donc j'ai ajouté les deux ligne:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
   'Return-Receipt-To: <a href="mailto:test1@gmail.com">test1@gmail.com</a> '|| crlf ||   
   'X-Confirm-Reading-To: <a href="mailto:test2@gmail.com">test2@gmail.com</a> '|| crlf ||
le résultat est que le mail a été transmis et lu mais je n'ai pas reçu ni d'accusé de réception ,ni confirmation de lecture de mail,
merci de votre aide , sinon si vous avez d'autre proposition je suis ouvert
merci d'avance,

version de la base de donnée:9.2.0.7.0
le corps du trigger:


Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
CREATE OR REPLACE TRIGGER OWNER.TRIG_SEND_EMAIL_OT
AFTER INSERT
ON OWNER.MAIL 
REFERENCING NEW AS NEW OLD AS OLD
FOR EACH ROW
Declare
/*
=======================================
--  Trigger pour l'envoie des emails 
=======================================
*/
  v_From        OWNER.MAIL.MLQ100%type := :new.MLQ100;
  v_Recipient1 OWNER.MAIL.MLQ120%type := :new.MLQ120;
  v_Recipient2 OWNER.MAIL.MLQ143%type := :new.MLQ143;
  v_Subject     OWNER.MAIL.MLDL011%type := :new.MLDL011;
  v_Mail_Host VARCHAR2(30) := '10.10.10.49';
  v_Mail_Conn utl_smtp.Connection;
  v_message1   OWNER.MAIL.MLAPTA%type := :new.MLAPTA;
  crlf        VARCHAR2(2)  := chr(13)||chr(10);
BEGIN
 
 v_Mail_Conn := utl_smtp.Open_Connection(v_Mail_Host, 25);
 utl_smtp.Helo(v_Mail_Conn, v_Mail_Host);
 utl_smtp.Mail(v_Mail_Conn, v_From);
 utl_smtp.Rcpt(v_Mail_Conn, v_Recipient1);
 utl_smtp.Rcpt(v_Mail_Conn, v_Recipient2);
  UTL_SMTP.OPEN_DATA(v_Mail_Conn);
 
 
  UTL_SMTP.WRITE_RAW_DATA(v_Mail_Conn, 
  UTL_RAW.CAST_TO_RAW(   'Date: '   || to_char(sysdate, 'Dy, DD Mon YYYY hh24:mi:ss') || crlf ||
   'From: '   || v_From || crlf ||
   'Subject: '|| v_Subject || crlf ||
   'To: '     || v_Recipient1 || crlf ||
   'Cc: '     || v_Recipient2 || crlf || 
   'Return-Receipt-To: <a href="mailto:test1@gmail.com">test1@gmail.com</a> '|| crlf ||   
   'X-Confirm-Reading-To: <a href="mailto:test2@gmail.com">test2@gmail.com</a> '|| crlf ||            
   v_message1|| crlf || -- Message body
   '   '|| crlf ||
   '========================================'|| crlf ||
   'Centre de Relation Clients '|| crlf ||
   '========================================'|| crlf));
  UTL_SMTP.WRITE_DATA(v_Mail_Conn, UTL_TCP.CRLF);
  UTL_SMTP.CLOSE_DATA(v_Mail_Conn);
 
 utl_smtp.Quit(v_mail_conn);
EXCEPTION
 WHEN utl_smtp.Transient_Error OR utl_smtp.Permanent_Error then
   raise_application_error(-20000, 'Unable to send mail: '||sqlerrm);
 
 
END;
/