Chilkat Examples

ChilkatHOMEAndroid™Classic ASPCC++C#Mono C#.NET Core C#C# UWP/WinRTDataFlexDelphi ActiveXDelphi DLLVisual FoxProJavaLianjaMFCObjective-CPerlPHP ActiveXPHP ExtensionPowerBuilderPowerShellPureBasicPythonRubySQL ServerSwiftTclUnicode CUnicode C++Visual Basic 6.0VB.NETVB.NET UWP/WinRTVBScriptXojo PluginNode.jsExcel

Swift Examples

Async
Certificates
ECC
Email Object
Encryption
FTP
HTML-to-XML/Text
Gzip
HTTP
IMAP
JSON
Jwt
MHT / HTML Email
PEM
PFX/P12
Java KeyStore (JKS)
OAuth2
POP3
RSA Encryption
MIME
REST
SCP
SMTP
Socket/SSL/TLS
SSH Key
SSH
SSH Tunnel
SFTP
Stream
Tar Archive
XML
XMP
Zip

More Examples...
OpenSSL
Google APIs
Google Cloud Storage
Azure Cloud Storage
Amazon S3 (new)
Google Drive
Dropbox
Firebase
ASN.1
PRNG
Amazon S3
Bounced Email
CSV
Diffie-Hellman
DKIM / DomainKey
DSA
NTLM
QuickBooks
Spider
Digital Signatures

 

 

 

 

 

 

 

(Swift) SMTP using SOCKS5, SOCKS4 Proxy

Demonstrates how to communicate with an SMTP server via a SOCKS4 or SOCKS5 proxy.

Chilkat Downloads for the Swift Programming Language

MAC OS X (Cocoa) Objective-C/Swift Libs

iOS Objective-C/Swift Libs

func chilkatTest() {

    //  The mailman object is used for sending and receiving email.
    let mailman = CkoMailMan()

    //  Any string argument automatically begins the 30-day trial.
    var success: Bool = mailman.UnlockComponent("30-day trial")
    if success != true {
        print("\(mailman.LastErrorText)")
        return
    }

    //  To use a SOCKS4 or SOCKS5 proxy, simply set the following
    //  properties prior to making any calls that communicate with
    //  an SMTP server:
    //  The SOCKS hostname may be a domain name or
    //  IP address:
    mailman.SocksHostname = "www.mysocksproxyserver.com"
    mailman.SocksPort = 1080
    mailman.SocksUsername = "myProxyLogin"
    mailman.SocksPassword = "myProxyPassword"
    //  Set the SOCKS version to 4 or 5 based on the version
    //  of the SOCKS proxy server:
    mailman.SocksVersion = 5
    //  Note: SOCKS4 servers only support usernames without passwords.
    //  SOCKS5 servers support full login/password authentication.

    //  Set the SMTP server.
    mailman.SmtpHost = "smtp.chilkatsoft.com"

    //  Set the SMTP login/password (if required)
    mailman.SmtpUsername = "myUsername"
    mailman.SmtpPassword = "myPassword"

    //  Create a new email object
    let email = CkoEmail()

    email.Subject = "This is a test"
    email.Body = "This is a test"
    email.From = "Chilkat Support <support@chilkatsoft.com>"
    success = email.AddTo("Chilkat Admin", emailAddress: "admin@chilkatsoft.com")

    //  Call SendEmail to connect to the SMTP server and send.
    //  The connection (i.e. session) to the SMTP server remains
    //  open so that subsequent SendEmail calls may use the
    //  same connection.
    success = mailman.SendEmail(email)
    if success != true {
        print("\(mailman.LastErrorText)")
        return
    }

    //  Some SMTP servers do not actually send the email until
    //  the connection is closed.  In these cases, it is necessary to
    //  call CloseSmtpConnection for the mail to be  sent.
    //  Most SMTP servers send the email immediately, and it is
    //  not required to close the connection.  We'll close it here
    //  for the example:
    success = mailman.CloseSmtpConnection()
    if success != true {
        print("Connection to SMTP server not closed cleanly.")
    }

    print("Mail Sent!")

}

 

© 2000-2016 Chilkat Software, Inc. All Rights Reserved.