version 2003 (Modifiée)
SMTP_Auth (smtp_ID; nomUtilisateur; motDePasse{; authMode}) Entier
Paramètre | Type | Description | |
smtp_ID | Entier long | Référence de message | |
nomUtilisateur | Chaîne | Nom d'utilisateur pour l'authentification SMTP | |
motDePasse | Chaîne | Mot de passe pour l'authentification SMTP | |
authMode | Entier | Mode d'authentification à utiliser : | |
0 ou omis=Mode défini par le serveur, | |||
1=PLAIN, 2=LOGIN, 3=CRAM-MD5 | |||
Résultat | Entier | Code d'erreur |
Description
La commande SMTP_Auth permet l'envoi du message référencé par smtp_ID lorsqu'un mécanisme d'authentification est requis par le serveur SMTP. L'authentification peut être requise par certains serveurs SMTP afin de réduire le risque que des messages soient falsifiés ou que l'identité des émetteurs soit usurpée, notamment à des fins de spamming.
Cette commande peut être utilisée dans votre code même si l'authentification n'est pas nécessaire car elle n'est exécutée que si les paramètres nomUtilisateur et motDePasse ne sont pas des chaînes vides.
smtp_ID contient l'identifiant d'un message électronique créé avec la commande SMTP_New.
nomUtilisateur contient le nom du compte utilisateur défini sur le serveur SMTP. Ce paramètre ne doit pas inclure le nom de domaine. Par exemple, pour l'adresse "jack@4d.com", le paramètre nomUtilisateur doit uniquement contenir "jack".
motDePasse contient le mot de passe associé au compte nomUtilisateur sur le serveur SMTP.
Note : Si nomUtilisateur et/ou motDePasse contiennent des chaînes vides, la commande SMTP_Auth n'est pas exécutée.
Le paramètre facultatif authMode permet de "forcer" le mode d'authentification utilisé. Vous pouvez passez 0, 1, 2 ou 3 dans ce paramètre :
si vous passez 0 (zéro) le mode d'authentification utilisé par la commande SMTP_Auth sera le mode le plus sécurisé pris en charge par le serveur (CRAM-MD5, LOGIN puis PLAIN),
si vous passez 1, la méthode d'authentification utilisée sera PLAIN,
si vous passez 2, la méthode d'authentification utilisée sera LOGIN,
si vous passez 3, la méthode d'authentification utilisée sera CRAM-MD5.
Si authMode est omis, par défaut la valeur 0 est utilisée. Si la méthode d'authentification demandée par ce paramètre n'est pas gérée par le serveur SMTP, une erreur est retournée.
Exemple
Cet exemple permet d'envoyer un message avec ou sans authentification, en fonction du contenu de champs spécifiques stockés dans la base 4D :
C_ENTIER($vErreur) C_ENTIER LONG($vSmtp_id) C_ALPHA(30;$vAuthUtilisateur;$vAuthMotPasse) $vErreur:=SMTP_New($vSmtp_id) $vErreur:=SMTP_Host($vSmtp_id;"wkrp.com") $vErreur:=SMTP_From($vSmtp_id;"herb_tarlick@wkrp.com") $vErreur:=SMTP_Subject($vSmtp_id;"Es-tu disponible ?") $vErreur:=SMTP_To($vSmtp_id;"Dupont@wkrp.com") $vErreur:=SMTP_Body($vSmtp_id;"Peut-on se voir ?") ` Les champs sont saisis si le serveur utilise un mécanisme ` d'authentification. Sinon, des chaînes vides sont retournées $vAuthUtilisateur:=[Compte]AuthUtil $vAuthMotPasse:=[Compte]AuthPass $vErreur:=SMTP_Auth($vSmtp_id;$vAuthUtilisateur;$vAuthMotPasse) $vErreur:=SMTP_Send($vSmtp_id) $vErreur:=SMTP_Clear($vSmtp_id)