Archived Forum Post

Index of archived forum posts

Question:

SendQ specifying port and username

Jan 24 '13 at 01:12

Hi,

I have been using your product for a few years. I just upgraded to the latest version.

I am trying to send using the mail queue and specifying a port using the method SendQ.

        mm.SmtpHost = ConfigurationManager.AppSettings("MailSMTPServer")
        mm.SmtpPort = ConfigurationManager.AppSettings("MailSMTPPort")
        mm.SmtpUsername = ConfigurationManager.AppSettings("MailSMTPUsername")

I executed the method mm.VerifySmtpConnection() and it gives a Trueback

I set the port, but looking at the logs of the service it is still trying to send on port 25 and is not passing in the username.

(Sun, 13 Jan 2013 11:27:23 -0800) ChilkatLog: openForReadWin32: --openForReadWin32 openForReadWin32: --openForReadWin32 setHeaderContents: --setHeaderContents No connection, need new SMTP connection. No SMTP login provided. No SMTP password provided. Skipping SMTP authentication because no login/password provided. checkForExistingConnection: Elapsed time: 0 millisec SMTP_Connect: Connecting to SMTP server :25 smtp_host: smtp_port: 25 smtp_user: NULL auth-method: NONE ConnectTimeoutMs_1: 10000 calling ConnectSocket2 IPV6 enabled connect with NO heartbeat. Cannot connect, hostname is zero length Failed to connect to SMTP server. --SMTP_Connect --ChilkatLog

Looking at the queued eml file, not sure how the queue service would know how to handle port and username since it is not in the file.

How do I do a SendQ and specify port and username?

TIA

ROUND 2

I would prefer not to hear a story of 10 years and tens of thousands of customers, that is not going to help me fix my problem. Like I said, I have been using this product for another project for at least 4-5 years with no problems, that one logs errors just fine.

1.The problem happens when I run it on the server, not debugging locally.

2.On my Dev server I will get a nice little XML file with errors and here is an example snippet: <bad_address>123@hotmail.com</bad_address> <error><![CDATA[550 5.7.1 <ABC@rocketmail.com>... we do not relay <DEF@mgnonline.com>]]></error> <error><![CDATA[Failed when sending RCPT TO:<DEF@rocketmail.com>]]></error> <bad_address>DEF@rocketmail.com</bad_address> But on the server, the XML file is just empty which makes it impossible to trouble shoot what is going on.

This is the entire XML from the server: <ChilkatLog> <openForReadWin32> </openForReadWin32> <openForReadWin32> </openForReadWin32> <setHeaderContents> </setHeaderContents> </ChilkatLog>

There is no data in the XML to help me TS, and the log file only says (Wed, 23 Jan 2013 21:45:01 -0800) Send Failed, error is final and a retry won't succeed.: e:\ChilkatSmtpQ\queue\e_20130124_053850_492276008.eml

Some emails do go through. How can get the logging in the XML to give me more information?


Answer

1) Enter code and lastErrorText inside html <pre> / </pre> tags to make them readable.

2) Make sure to always post the full LastErrorText.

3) Verify that ConfigurationManager.AppSettings is returning the values you expect. I suspect they are not. It is far more likely that your calls to ConfigurationManager.AppSettings are not returning the expected values. If the basic properties of the mailman object are not working, which has existed for 10 years and is used by tens of thousands of customers, then I would expect MANY emails from other Chilkat customers, and this is not the case.

4) The port, username and other SMTP settings are embedded in the .eml (written to the queue directory) as headers (with encrypted values). This is already explained in the online reference documentation for the SendQ method.