/
Sample Application
Sample Application
Initialization
µC/SMTPc requires no initialization.
Note that µC/TCP-IP must be initialized without error. Also, µC/DNSc must be initialize to resolve SMTP Server host name.
Sending an e-mail
#include <Source/smtp-c.h> #define SERVER_DOMAIN_NAME "smtp.foo.bar" /* See note #1 */ #define MAILBOX_FROM_NAME "John Doe" /* See note #2 */ #define MAILBOX_FROM_ADDR "john.doe@foo.bar" #define MAILBOX_TO_NAME "Jane Doe" #define MAILBOX_TO_ADDR "jane.doe@foo.bar" #define USERNAME "john.doe" /* See note #3 */ #define PASSWORD "123" #define MSG_SUBJECT "Test" #define MSG "This is a test message" CPU_BOOLEAN AppMailSend (void) { CPU_CHAR *p_server_addr; SMTPc_MBOX from_mbox; SMTPc_MBOX to_mbox; SMTPc_MSG mail; SMTPc_ERR err; CPU_INT16U port; NET_APP_SOCK_SECURE_CFG *p_secure_cfg; p_server_addr = SERVER_DOMAIN_NAME; /* ------------- INITIALIZE THE MAIL OBJ -------------- */ SMTPc_SetMsg (&mail, &err); /* See note #4 */ if (err != SMTPc_ERR_NONE) { return (DEF_FAIL); } /* ---------------- SET MAIL ENVELOP ------------------ */ /* See note #5*/ mail.From = &from_mbox; /* Set the FROM mailbox of the e-mail. */ SMTPc_SetMbox(mail.From, MAILBOX_FROM_NAME, MAILBOX_FROM_ADDR, &err); if (err != SMTPc_ERR_NONE) { return (DEF_FAIL); } mail.ToArray[0] = &to_mbox; /* Set the TO mailbox of the e-mail. */ SMTPc_SetMbox(mail.ToArray[0], MAILBOX_TO_NAME, MAILBOX_TO_ADDR, &err); if (err != SMTPc_ERR_NONE) { return (DEF_FAIL); } /* ----------------- SET MAIL CONTENT ----------------- */ mail.Subject = MSG_SUBJECT; /* Set the message subject and body. */ mail.ContentBodyMsg = MSG; mail.ContentBodyMsgLen = sizeof(MSG); /* ---------------- SET CONN SECURITY ----------------- */ port = SMTPc_CFG_IPPORT; /* See note #6 */ p_secure_cfg = DEF_NULL; /* -------------------- SEND MAIL --------------------- */ SMTPc_SendMail( p_server_addr, /* See note #7 */ port, USERNAME, PASSWORD, p_secure_cfg, &mail, &err); if (err != SMTPc_ERR_NONE) { return (DEF_FAIL); } return (DEF_OK); }
- The SMTP server can represented as an IPv4/IPv6 address or a domain name. If a domain name is used, enable and initialize µC/DNSc properly.
- Mailbox represent the address and name of a sender (FROM) or recipient (TO,CC and BCC). Multiple recipients can be set for an email.
- µC/SMTPc allow the user to authenticate to a SMTPc server with credential if needed.
SMTPc_SetMsg() function must be called to initialized the SMTPc_MSG object.
In order to set a mailbox in the email, SMTPc_MBOX instance must be passed to the SMTPc_MSG object.
- The connection to the SMTP server can be either secure or not. In this example, the connection is non-secure and uses the legacy port 25. If a secure connection is required, p_secure_cfg must be configured. For more information, refer to the µC/TCP-IP SSL Module.
- SMTP_SendMail() function will process each step to send the email. It will connect to SMTP the server, prepare and send the email and disconnect from the SMTP server.
, multiple selections available,
Related content
Sample Application
Sample Application
More like this
Building and Running Sample Application
Building and Running Sample Application
More like this
Module Configuration
Module Configuration
More like this
Version V2.00.xx
Version V2.00.xx
More like this
Message Mailbox Management
Message Mailbox Management
More like this
µC/SMTPc
µC/SMTPc
More like this