![]() |
![]() |
![]() |
||||||
SCR/AL1 - TOME III. Les librairies utilitaires
Ce groupe de fonction permet d'envoyer des messages via un serveur SMTP.
Connexion
Destinataires
Envoi de données
Mails avec attach
Déconnexion
Fonctions de base
Variables
Syntaxe
SendMailConnect(server, port, host, user)
char *server, *host, *user;
int port;
Description
Connecte au serveur SMTP server via le port port. Les paramètres host et user sont seulement indicatifs et ne sont en général pas traités par le serveur.
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Exemple
U_ch **data;
if(SendMailConnect("smtp.whitehouse.org", 25, "heaven.ru", "kgb")) return(-1);
if(SendMailTo("bill@whitehouse.be")) goto err;
data = SCR_vtom("To: <bill@whitehouse.org>,Subject:La vie est belle,Coucou,c'est moi,..", ',');
if(SendMailData(data)) goto err;
SCR_free_tbl(data);
SendMailClose();
return(0);
err:
printf("Error : %s\n", SENDMAIL_ERROR);
SendMailClose();
return(-1);
Voir également
SendMailClose()
SendMailAddAttachTxtLine(char *txt, int convertansi)
SendMailAttach(char *filename, char *contenttype, int base64, int convertansi)
SendMailClose()
SendMailConnect(server, port, host, user)
SendMailData(data)
SendMailEnd()
SendMailEndData()
SendMailFile(filename)
SendMailInit(char *smtpsrv, char *fromaddr, char *fromname, char *toaddr, char *subject)
SendMailRead()
SendMailStartAttachTxt()
SendMailStartData()
SendMailTo(dest)
SendMailWrite(rec)
SendMailWriteData(data)
Syntaxe
SendMailTo(dest)
char *dest;
Description
Ajoute des destinataires pour le message.
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect(), SendMailData()
Syntaxe
SendMailStartData()
Description
Prépare l'envoi d'un message.
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect(), SendMailData(), SendMailEndData(), SendMailWriteData()
Syntaxe
SendMailWriteData(data)
U_ch *data;
Description
Envoie une ligne d'un message.
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect(), SendMailData(), SendMailEndData(), SendMailWriteData()
Syntaxe
SendMailEndData()
Description
Termine l'envoi d'un message.
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect(), SendMailData(), SendMailStartData(), SendMailWriteData()
Syntaxe
SendMailData(data)
U_ch **data;
Description
Envoie le message. Ce message contiendra les éventuels Subject, To ... qui seront traités par l'Agent Pop. Cette fonction appelle SendMailStartData(), SendMailWriteData() et SendMailEndData().
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect(), SendMailStartData(), SendMailEndData(), SendMailWriteData()
Syntaxe
SendMailFile(filename)
char *filename;
Description
Envoie un fichier dans la zone DATA du message. La zone DATA est ouverte et fermée par cette fonction (un seul fichier peut donc être envoyé).
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect(), SendMailStartData(), SendMailEndData(), SendMailWriteData() SendMailAttach64()
Syntaxe
SendMailInit(char *smtpsrv, char *fromaddr,
char *fromname, char *toaddr, char *subject)
Description
Démarre une session SMTP. Crée le socket et envoie les premières informations jusqu'au début de la section DATA.
La porte du serveur SMTP est définie par la variable globale int SENDMAIL_PORT. Par défaut, celle-ci est fixée à 25.
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Exemple
if(SendMailInit("mail.xon.be",
"jmp.be", "jmp@xon.be", "Jean-Marc",
"jmp@xon.be", "Essai d'attachment")) goto err;
if(SendMailAttach("subject.txt", "text/plain", 0)) goto err;
if(SendMailAttach("lastnode12.gif", "image/gif", 1)) goto err;
if(SendMailAttach("budget.xls", "application/octet-stream", 1)) goto err;
if(SendMailEnd()) goto err;
printf("Ok\n");
return(0);
err:
printf("Error : %s\n", SENDMAIL_ERROR);
SendMailClose();
return(-1);
}
Voir également
SendMailClose(), SendMailAttach()
Syntaxe
SendMailEnd()
Description
Termine une session SMTP démarrée par SendMailInit().
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Exemple
voir SendMailInit()
Voir également
SendMailEnd(), SendMailAttach()
Syntaxe
SendMailAttach(char *filename, char *contenttype, int base64, int convertansi)
Description
Attache un fichier au mail démarré par SendMailInit(). Un nombre quelconque de fichiers peuvent être attachés.
Attention, cette fonction ne peut être utilisée qu'après SendMailInit().
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Exemple
voir SendMailInit()
Voir également
SendMailInit(), SendMailEnd(), SendMailAttach()
Syntaxe
SendMailStartAttachTxt()
Description
Démarre un nouvel attachment de type texte. Le contenu de cet attachment doit être alimenté par la fonction SendMailAddAttachTxtLine(). Il s'agit en général du premier attachment d'un mail qui constituera le corps du message.
Attention, cette fonction ne peut être utilisée qu'après SendMailInit().
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Exemple
voir SendMailInit()
Voir également
SendMailInit(), SendMailEnd(), SendMailAttach(), SendMailAttachTxtLine()
Syntaxe
SendMailAddAttachTxtLine(char *txt, int convertansi)
Description
Ajoute un ligne à l'attachment courant commencé par l'appel à SendMailStartAttachTxt().
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Exemple
voir SendMailInit()
Voir également
SendMailInit(), SendMailEnd(), SendMailAttach(), SendMailStartAttachTxt()
Syntaxe
SendMailClose()
Description
Déconnecte du serveur SMTP ouvert par SendMailConnect().
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect()
Syntaxe
SendMailWrite(rec)
char *rec;
Description
Envoie des données (ou une commande) sur le socket ouvert par SendMailConnect().
Valeur retournée
Le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
Voir également
SendMailConnect(), SendMailData(), SendMailStartData(), SendMailWriteData()
Syntaxe
SendMailRead()
Description
Lit la réponse du serveur SMTP sur le socket ouvert par SendMailConnect().
Valeur retournée
En cas d'erreur de transmission, le message d'erreur se trouve dans la variable globale SENDMAIL_ERROR.
La variable globale char *SENDMAIL_BUF contient le texte retourné par le serveur.
Voir également
SendMailConnect(), SendMailData(), SendMailStartData(), SendMailWriteData()
char SENDMAIL_BUF[128];
Buffer de réception des réponses du serveur SMTP.
char SENDMAIL_ERROR[81];
Dernier message d'erreur.
int SENDMAIL_SOCKET;
Indique le numéro du socket ouvert.
Copyright © 1998-2001 Jean-Marc and Bernard PAUL - Envoyez vos remarques ou commentaires à bp@xon.be