Sample code for 30+ languages & platforms
Dart

Send an SMTP RSET Command

See more SMTP Examples

Demonstrates the Chilkat MailMan.SmtpReset method, which sends an SMTP RSET command to the server. RSET resets the server-side state of the current mail transaction. This example opens a connection, sends RSET, and closes.

Background: During an SMTP session a message is built up across MAIL FROM and RCPT TO commands. If you need to abandon that partially-specified transaction — say an error occurred midway — RSET clears it without dropping the connection, so the same authenticated session can start a fresh message. It's a lightweight way to recover in-session rather than reconnecting.

Chilkat Dart Downloads

Dart
import 'package:chilkat/chilkat.dart';

void main() {
  // Demonstrates the MailMan.SmtpReset method, which sends an SMTP RSET command to the server.
  // RSET resets the server-side state of the current mail transaction.

  final mailman = CkMailMan();

  // Configure the SMTP server connection.
  mailman.smtpHost = 'smtp.example.com';
  mailman.smtpPort = 465;
  mailman.smtpSsl = true;
  mailman.smtpUsername = 'user@example.com';
  mailman.smtpPassword = 'myPassword';

  // Open the connection.

  try {
    mailman.openSmtpConnection();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  // Reset the current SMTP mail transaction.
  try {
    mailman.smtpReset();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  try {
    mailman.closeSmtpConnection();
  } on ChilkatException catch (e) {
    print(e.lastErrorText);
    return;
  }

  print('Sent SMTP RSET.');
}