C++
C++
SMTP Send Raw Command
Demonstrates how to send a raw command to the SMTP server after the connecting and authenticating.Chilkat C++ Downloads
#include <CkMailMan.h>
void ChilkatSample(void)
{
bool success = false;
// This example requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
CkMailMan mailman;
mailman.put_SmtpHost("smtp.mail.us-west-2.awsapps.com");
mailman.put_SmtpSsl(true);
mailman.put_SmtpPort(465);
success = mailman.SmtpConnect();
if (success == false) {
std::cout << mailman.lastErrorText() << "\r\n";
return;
}
mailman.put_SmtpUsername("john@example.com");
mailman.put_SmtpPassword("the_password");
success = mailman.SmtpAuthenticate();
if (success == false) {
std::cout << mailman.lastErrorText() << "\r\n";
return;
}
std::cout << "Authenticated!" << "\r\n";
// Send the "EHLO" command again to get the multi-line response that includes the SMTP capabilities.
// The capabilities are the lines in the response that begin with "250-".
const char *responseStr = mailman.smtpSendRawCommand("EHLO client.example.com","utf-8",false);
if (mailman.get_LastMethodSuccess() == false) {
std::cout << mailman.lastErrorText() << "\r\n";
return;
}
std::cout << responseStr << "\r\n";
// A sample response:
// 250-smtp.us-west-2.mail.awsapps.com
// 250-8BITMIME
// 250-AUTH PLAIN LOGIN
// 250 Ok
}