Aller au contenu principal
Version : 20 R10

SMTPTransporter

La classe SMTPTransporter vous permet de configurer des connexions SMTP et d'envoyer des emails par le biais d'objets SMTP transporter.

Objet SMTP Transporter

Les objets SMTP Transporter sont instanciés avec la commande SMTP New transporter. Leurs propriétés et fonctions sont les suivantes :














4D.SMTPTransporter.new()

4D.SMTPTransporter.new*( server : Object ) : 4D.SMTPTransporter

ParamètresTypeDescription
serverObject->Informations sur le serveur de messagerie
Résultat4D.SMTPTransporter<-Objet SMTP Transporter

Description

La fonction 4D.SMTPTransporter.new() crée et retourne un nouvel objet de type 4D.SMTPTransporter. Elle est identique à la commande SMTP New transporter (raccourci).

Pour une description des codes de statut SMTP, veuillez vous reporter à cette page.

Exemple

 var $pw : Text
var $options : Object
var $transporter : 4D.SMTPTransporter
$options:=New object

$pw:=Request("Please enter your password:")
$options.host:="smtp.gmail.com"

$options.user:="test@gmail.com"
$options.password:=$pw

$transporter:=SMTP New transporter($options)

$status:=$transporter.checkConnection()
If($status.success=True)
ALERT("SMTP connection check successful!")
Else
ALERT("Error # "+String($status.status)+", "+$status.statusText)
End if

.keepAlive

Historique
ReleaseModifications
17 R4Ajout

.keepAlive* : Boolean

Description

La propriété .keepAlive contient True si la connexion SMTP doit rester active jusqu'à la destruction de l'objet transporter, et False sinon. Par défaut, si la propriété keepAlive n'a pas été définie dans l'objet server (qui permet de créer l'objet transporter via la commande SMTP New transporter), elle est mise à True.

La connexion SMTP est automatiquement fermée :

  • lorsque l'objet transporter est détruit si la propriété .keepAlive est mise à vrai,
  • après chaque fonction .send( ) exécutée si la propriété .keepAlive est mise à faux.

.send()

Historique
ReleaseModifications
17 R5Prise en charge des contenus Mime
17 R4Ajout

.send*( mail : Object ) : Object

ParamètresTypeDescription
mailObject->Email à envoyer
RésultatObject<-Statut SMTP

Description

La fonction .send() envoie l'objet mail vers le serveur SMTP défini dans l'objet transporter et retourne un objet statut.

L'objet transporter doit avoir déjà été créé à l'aide de la commande SMTP New transporter.

La fonction établit la connexion SMTP si cette dernière n'est pas déjà active. Si la propriété .keepAlive de l'objet transporter est à false, la connexion SMTP est automatiquement fermée après l'exécution de la commande .send(). Pour plus d'informations, veuillez vous référer à la description de la commande SMTP New transporter.

Dans mail, passez un objet Email valide à envoyer. Les propriétés origine (la provenance de l'Email) et destination (un ou plusieurs destinataires) de l'Email doivent être incluses, les autres propriétés sont optionnelles.

Objet retourné

La fonction retourne un objet décrivant le statut SMTP de l"opération. Cet objet peut avoir les propriétés suivantes :

PropriétéTypeDescription
successbooleanVrai si l'envoi a été effectué avec succès, sinon Faux
statusnumberCode du statut retourné par le serveur SMTP (0 si problème non lié au traitement de l'email)
statusTexttextMessage de statut retourné par le serveur SMTP

En cas de problème non lié au traitement SMTP (par exemple une propriété obligatoire qui est manquante dans l'objet mail), 4D génère une erreur que vous pouvez intercepter à l'aide d'une méthode installée via la commande ON ERR CALL. Utilisez la commande Last errors pour obtenir des informations sur l'erreur.

Dans ce cas, l'objet erreur qui en résulte contient les valeurs suivantes :

PropriétéValeur
successFalse
status0
statusText"Failed to send email"