Aller au contenu principal
Version: Next

SMTP New transporter

SMTP New transporter( server : Object ) : 4D.SMTPTransporter

ParamètresTypeDescription
serverObjectInformations sur le serveur IMAP
Résultat4D.SMTPTransporterSMTP transporter object
Historique
ReleaseModifications
18Nouvelle propriété logFile
17 R5Nouvelles propriétés bodyCharset et headerCharset
17 R4Ajout

Description

The SMTP New transporter command configures a new SMTP connection according to the server parameter and returns a new SMTP transporter object object. L'objet transporteur retourné sera alors utilisé pour l'envoi d'emails.

Cette commande n'ouvre pas de connexion au serveur SMTP. The SMTP connection is actually opened when the .send() function is executed.

La connexion SMTP est automatiquement fermée :

  • when the transporter object is destroyed if the keepAlive property is true (default),
  • after each .send() function execution if the keepAlive property is set to false.

Dans le paramètre server, passez un objet contenant les propriétés suivantes :

serverValeur par défaut (si omise)
.acceptUnsecureConnection : Boolean
True si 4D est autorisé à établir une connexion non chiffrée
False
.accessTokenOAuth2 : Text
.accessTokenOAuth2 : Object
Chaîne ou objet token représentant les informations d'autorisation OAuth2. Utilisé uniquement avec OAUTH2 authenticationMode. Si accessTokenOAuth2 est utilisé mais que authenticationMode est omis, le protocole OAuth 2 est utilisé (si le serveur l'autorise). Not returned in SMTP transporter object.
aucun
.authenticationMode : Text
le mode d'authentification utilisé pour ouvrir la session sur le serveur de messagerie
le mode d'authentification le plus sûr pris en charge par le serveur est utilisé
.bodyCharset : Text
le charset et l'encodage utilisés pour la partie body de l'email
mail mode UTF8 (US-ASCII_UTF8_QP)
.connectionTimeOut : Integer
le temps d'attente maximum (en secondes) autorisé pour établir une connexion avec le serveur
30
.headerCharset : Text
le jeu de caractères et l'encodage utilisés pour l'en-tête de l'e-mail
mail mode UTF8 (US-ASCII_UTF8_QP)
.host : Text
le nom ou l'adresse IP du serveur hôte
obligatoire
.keepAlive : Boolean
True si la connexion SMTP doit rester active jusqu'à la destruction de l'objet transporter
True
.logFile : Text
le chemin du fichier journal étendu défini (le cas échéant) pour la connexion de messagerie
aucun
password : Text
Mot de passe utilisateur pour l'authentification sur le serveur. Not returned in SMTP transporter object.
aucun
.port : Integer
le numéro de port utilisé pour les transactions de courrier
587
.sendTimeOut : Integer
le temps d'attente maximum (en secondes) d'un appel à .send() avant le timeout
100
.user : Text
le nom d'utilisateur utilisé pour l'authentification sur le serveur de messagerie
aucun

Résultat

The function returns a SMTP transporter object. Toutes les propriétés retournées sont en lecture seule.

Exemple

 $server:=New object
$server.host:="smtp.gmail.com" //Mandatory
$server.port:=465
$server.user:="4D@gmail.com"
$server.password:="XXXX"
$server.logFile:="LogTest.txt" //Extended log to save in the Logs folder

var $transporter : 4D.SMTPTransporter
$transporter:=SMTP New transporter($server)

$email:=New object
$email.subject:="my first mail "
$email.from:="4d@gmail.com"
$email.to:="4d@4d.com;test@4d.com"
$email.textBody:="Hello World"
$email.htmlBody:="<h1>Hello World</h1><h4>'Neque porro quisquam est qui dolorem ipsum quia dolor sit amet, consectetur, adipisci velit...'</h4>\
<p>There are many variations of passages of Lorem Ipsum available."\
+"The generated Lorem Ipsum is therefore always free from repetition, injected humour, or non-characteristic words etc.</p>"

$status:=$transporter.send($email)
If(Not($status.success))
ALERT("An error occurred sending the mail: "+$status.message)
End if