Sample code for 30+ languages & platforms
PHP Extension

Send an SMTP NOOP Command

See more SMTP Examples

Demonstrates the Chilkat MailMan.SmtpNoop method, which sends an SMTP NOOP command to the server. NOOP does nothing except elicit a positive response, which is useful for keeping a connection alive or verifying it is still responsive. This example opens an SMTP connection, sends a NOOP, and closes.

Background: When holding an SMTP connection open across many sends (see OpenSmtpConnection), an idle stretch can cause the server to time out and drop the socket. A periodic NOOP keeps the session active and confirms the server is still responding, so the next SendEmail doesn't fail on a silently-closed connection.

Chilkat PHP Extension Downloads

PHP Extension
<?php

include("chilkat.php");

$success = false;

//  Demonstrates the MailMan.SmtpNoop method, which sends an SMTP NOOP command to the server.
//  NOOP does nothing except elicit a positive response, useful for keeping a connection
//  alive or verifying it is still responsive.

$mailman = new CkMailMan();

//  Configure the SMTP server connection.
$mailman->put_SmtpHost('smtp.example.com');
$mailman->put_SmtpPort(465);
$mailman->put_SmtpSsl(true);
$mailman->put_SmtpUsername('user@example.com');
$mailman->put_SmtpPassword('myPassword');

//  Open the SMTP connection.

$success = $mailman->OpenSmtpConnection();
if ($success == false) {
    print $mailman->lastErrorText() . "\n";
    exit;
}

//  Send a NOOP to keep the connection alive.
$success = $mailman->SmtpNoop();
if ($success == false) {
    print $mailman->lastErrorText() . "\n";
    exit;
}

$success = $mailman->CloseSmtpConnection();
if ($success == false) {
    print $mailman->lastErrorText() . "\n";
    exit;
}

print 'SMTP NOOP succeeded.' . "\n";

?>