Archived Forum Post

Index of archived forum posts

Question:

Delivery Reports (DSN)

Aug 23 '13 at 04:11

Hi,

I'm trying to request a DSN status when sending emails. I can sucessfully request Read Receipts using:

email.ReturnReceipt = True

But for DSN, It doesn't work. I've read some examples like http://www.chilkatsoft.com/p/p_313.asp , but no sucess.

How could I request the DSN from the server? My server supports DSN of course, no doubt about that.

Can someone help me on how to request DSN, with an working example? I don't see/understand the examples from chilkat webpage :(


Trying 192.168.1.222... Connected to 192.168.1.222. Escape character is '^]'. 220 Email Server ehlo example.com 250-smtp.example.pt 250-PIPELINING 250-SIZE 52428800 250-VRFY 250-ETRN 250-STARTTLS 250-AUTH CRAM-MD5 DIGEST-MD5 LOGIN PLAIN 250-AUTH=CRAM-MD5 DIGEST-MD5 LOGIN PLAIN 250-ENHANCEDSTATUSCODES 250-8BITMIME 250 DSN


Answer

Maybe what you are asking about are these MailMan properties: DsnEnvid, DsnNotify, and DsnRet?

These are properties relating to the SMTP DSN service extension found in RFC 3461.

The DsnEnvid property is an arbitrary string that will be used as the ENVID property when sending email. (It may be left unset.)

The DsnNotify property is a string that will be used as the NOTIFY parameter when sending email. (See RFC 3461 for more details. ) This string can be left blank, or can be set to "NEVER", or any combination of a comma-separated list of "SUCCESS", "FAILURE", or "NOTIFY".

The DsnRet property is a string that will be used as the RET parameter when sending email. (See RFC 3461 for more details. ) This string can be left blank, or can be set to "FULL" to receive entire-message DSN notifications, or "HDRS" to receive header-only DSN notifications.

To request DSN is to simply set these property values prior to sending.


Answer

Hi,

Thanks for your reply, well, I just was looking in the wrong place, sorry. But now, I may be doing something else wrong, I've set:

mailman.DsnNotify = "SUCESS;FAILURE;NOTIFY" mailman.DsnRet = "FULL"

but got:

rcpt_to:
  SmtpCmdSent: RCPT TO:<mysql.jorge@domain.pt> NOTIFY=SUCESS;FAILURE;NOTIFY<CRLF>
  SmtpCmdResp: 501 5.5.4 Error: Bad NOTIFY parameter syntax
  501 5.5.4 Error: Bad NOTIFY parameter syntax
  Failed when sending RCPT TO:<mysql.jorge@domain.pt>

What am I doing wrong?


Answer

Ops you're right, but with comma separated, I have the same problem, maybe the SMTP doesn't support it no?

with only:

mailman.DsnNotify = "SUCCESS" mailman.DsnRet = "FULL"

I have DSN request working correctly.

  SmtpCmdSent: RCPT TO:<mysql.jorge@domain.pt> NOTIFY=SUCCESS,FAILURE,NOTIFY<CRLF>
  SmtpCmdResp: 501 5.5.4 Error: Bad NOTIFY parameter syntax
  501 5.5.4 Error: Bad NOTIFY parameter syntax
  Failed when sending RCPT TO:<mysql.jorge@domain.pt>
  lastResponseLine: 501 5.5.4 Error: Bad NOTIFY parameter syntax
  bad_address: mysql.jorge@domain.pt

Answer

I did some investigation on my postfix configuration and SUCCESS it's not configured to be accept, only NOTIFY.

So I have DSN working, thanks for your help!