Tiny SMTP Client

Dependencies:   EthernetNetIf mbed

Committer:
okini3939
Date:
Thu Jul 28 17:39:31 2011 +0000
Revision:
1:05064fe7ea1e
Parent:
0:7440c9b170aa

        

Who changed what in which revision?

UserRevisionLine numberNew contents of line
okini3939 0:7440c9b170aa 1 #include "mbed.h"
okini3939 0:7440c9b170aa 2 #include "EthernetNetIf.h"
okini3939 0:7440c9b170aa 3 #include "TCPSocket.h"
okini3939 0:7440c9b170aa 4 #include "TinySMTP.h"
okini3939 0:7440c9b170aa 5
okini3939 0:7440c9b170aa 6 #define SMTP "mail.domain.name"
okini3939 0:7440c9b170aa 7 #define PORT 587 // or 25
okini3939 0:7440c9b170aa 8 #define FROM "from@domain.name"
okini3939 0:7440c9b170aa 9 #define TO "to@domain.name"
okini3939 0:7440c9b170aa 10 #define USER "authuser"
okini3939 0:7440c9b170aa 11 #define PWD "password"
okini3939 0:7440c9b170aa 12 #define SUBJECT "mail test"
okini3939 0:7440c9b170aa 13 #define BODY "TEST TEST"
okini3939 0:7440c9b170aa 14
okini3939 0:7440c9b170aa 15 DigitalOut myled(LED1);
okini3939 0:7440c9b170aa 16 Serial pc(USBTX, USBRX);
okini3939 0:7440c9b170aa 17 EthernetNetIf eth;
okini3939 0:7440c9b170aa 18
okini3939 0:7440c9b170aa 19 int main () {
okini3939 0:7440c9b170aa 20 EthernetErr ethErr;
okini3939 0:7440c9b170aa 21 Host host;
okini3939 0:7440c9b170aa 22 int r;
okini3939 0:7440c9b170aa 23 char data[500];
okini3939 0:7440c9b170aa 24
okini3939 0:7440c9b170aa 25 myled = 1;
okini3939 0:7440c9b170aa 26
okini3939 0:7440c9b170aa 27 strcpy(data, "From: " FROM "\r\nTo: " TO "\r\n");
okini3939 0:7440c9b170aa 28 strcat(data, "Subject: " SUBJECT "\r\n\r\n" BODY "\r\n");
okini3939 0:7440c9b170aa 29
okini3939 0:7440c9b170aa 30 ethErr = eth.setup();
okini3939 0:7440c9b170aa 31 if(ethErr) {
okini3939 0:7440c9b170aa 32 return -1;
okini3939 0:7440c9b170aa 33 }
okini3939 0:7440c9b170aa 34
okini3939 0:7440c9b170aa 35 host.setName(SMTP);
okini3939 0:7440c9b170aa 36 host.setPort(PORT);
okini3939 0:7440c9b170aa 37 r = sendmail(FROM, TO, data, &host, USER, PWD);
okini3939 0:7440c9b170aa 38
okini3939 0:7440c9b170aa 39 if (r) {
okini3939 0:7440c9b170aa 40 printf("error\r\n");
okini3939 0:7440c9b170aa 41 } else {
okini3939 0:7440c9b170aa 42 printf("sent\r\n");
okini3939 0:7440c9b170aa 43 }
okini3939 0:7440c9b170aa 44
okini3939 0:7440c9b170aa 45 myled = 0;
okini3939 0:7440c9b170aa 46 return 0;
okini3939 0:7440c9b170aa 47 }