Perl Requires Chilkat v11.0.0+
Chilkat2 Perl
Example: Email.GetDsnInfo method
See more Email Object Examples
Demonstrates how to call the GetDsnInfo method.Chilkat Perl Downloads
use strict;
use warnings;
use Chilkat2;
my $email = Chilkat2::Email->new;
my $success = $email->LoadEml('qa_data/eml/sample_multipart_report.eml');
if (!$success) {
print $email->LastErrorText, "\n";
exit;
}
my $json = Chilkat2::JsonObject->new;
$success = $email->GetDsnInfo($json);
if (!$success) {
print $email->LastErrorText, "\n";
exit;
}
$json->EmitCompact(0);
print $json->Emit(), "\n";
# Sample output:
# {
# "reporting-mta": "dns; Exchange2016.example.com",
# "final-recipient": [
# "herb.butterworth1247692846@gmail.com"
# ],
# "action": "failed",
# "status": "5.1.1",
# "remote-mta": "dns; mx.google.com",
# "x-supplementary-info": "<mx.google.com #5.1.1 smtp;550-5.1.1 The email account that you tried to reach does not exist. Please try 550-5.1.1 double-checking the recipient's email address for typos or 550-5.1.1 unnecessary spaces. Learn more at 550 5.1.1 https://support.google.com/mail/?p=NoSuchUser o8-20020a056870968800b001b55816bea9si2188132oaq.70 - gsmtp>",
# "x-display-name": "herb.butterworth1247692846@gmail.com"
# }
# Code for parsing the JSON:
my $strVal = '';
my $reporting_mta = $json->StringOf('reporting-mta');
my $action = $json->StringOf('action');
my $status = $json->StringOf('status');
my $remote_mta = $json->StringOf('remote-mta');
my $x_supplementary_info = $json->StringOf('x-supplementary-info');
my $x_display_name = $json->StringOf('x-display-name');
my $i = 0;
my $count = $json->SizeOfArray('final-recipient');
while ($i < $count) {
$json->I($i);
$strVal = $json->StringOf('final-recipient[i]');
$i = $i + 1;
}