Sample code for 30+ languages & platforms
Objective-C

Example: Email.GetDsnInfo method

See more Email Object Examples

Demonstrates how to call the GetDsnInfo method.

Chilkat Objective-C Downloads

Objective-C
#import <CkoEmail.h>
#import <CkoJsonObject.h>
#import <NSString.h>

BOOL success = NO;

CkoEmail *email = [[CkoEmail alloc] init];

success = [email LoadEml: @"qa_data/eml/sample_multipart_report.eml"];
if (success == NO) {
    NSLog(@"%@",email.LastErrorText);
    return;
}

CkoJsonObject *json = [[CkoJsonObject alloc] init];
success = [email GetDsnInfo: json];
if (success == NO) {
    NSLog(@"%@",email.LastErrorText);
    return;
}

json.EmitCompact = NO;
NSLog(@"%@",[json Emit]);

//  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:

NSString *strVal = 0;

NSString *reporting_mta = [json StringOf: @"reporting-mta"];
NSString *action = [json StringOf: @"action"];
NSString *status = [json StringOf: @"status"];
NSString *remote_mta = [json StringOf: @"remote-mta"];
NSString *x_supplementary_info = [json StringOf: @"x-supplementary-info"];
NSString *x_display_name = [json StringOf: @"x-display-name"];
int i = 0;
int count = [[json SizeOfArray: @"final-recipient"] intValue];
while (i < count) {
    json.I = [NSNumber numberWithInt: i];
    strVal = [json StringOf: @"final-recipient[i]"];
    i = i + 1;
}