SMTP New transporter
SMTP New transporter( server : Object ) : 4D.SMTPTransporter
| 引数 | 型 | 説明 | |
|---|---|---|---|
| server | Object | → | メールサーバー情報 |
| 戻り値 | 4D.SMTPTransporter | ← | SMTP transporter オブジェクト |
履歴
| リリース | 内容 |
|---|---|
| 18 | logFile プロパティを追加 |
| 17 R5 | bodyCharset と headerCharset プロパティを追加 |
| 17 R4 | 追加 |
説明
SMTP New transporter コマンドは、新規のSMTP 接続を設定します。このSMTP 接続はserver 引数の指定に応じて設定され、コマンドは新しい SMTP transporter オブジェクト オブジェクトを返します。 返された transporter オブジェクトは、通常メールの送信に使用されます。
このコマンドは SMTPサーバーとの接続を開始しません。 SMTP 接続は、実際には
.send()関数が実行されたときに開かれます。SMTP接続は、以下の場合に自動的に閉じられます:
.keepAliveプロパティが true (デフォルト) の場合に、transporter オブジェクトが消去された時。keepAliveプロパティがfalse に設定されている場合に、.send()関数が実行された後。
server 引数として、以下のプロパティを持つオブジェクトを渡します:
| server | デフォルト値 (省略時) |
|---|---|
| .acceptUnsecureConnection : Boolean 暗号化されていない接続の確立が許可されてれば true | false |
| .accessTokenOAuth2: Text .accessTokenOAuth2: Object OAuth2 認証の資格情報を表すテキスト文字列またはトークンオブジェクト。 authenticationMode が OAUTH2 の場合のみ使用されます。 accessTokenOAuth2 が使用されているが authenticationMode が省略されていた場合、OAuth2 プロトコルが使用されます (サーバーで許可されていれば)。 これは SMTP transporter オブジェクトでは返されません。 | なし |
| .authenticationMode : Text メールサーバーのセッションを開くのに使用される認証モード | サーバーがサポートするもっともセキュアな認証モードが使用されます |
| .bodyCharset : Text メール本文で使用される文字セットとエンコーディング | mail mode UTF8 (US-ASCII_UTF8_QP) |
| .connectionTimeOut : Integer サーバー接続の確立までに待機する最長時間 (秒単位) | 30 |
| .headerCharset : Text メールヘッダーで使用される文字セットとエンコーディング | mail mode UTF8 (US-ASCII_UTF8_QP) |
| .host : Text ホストサーバーの名前または IPアドレス | mandatory |
.keepAlive : Booleantransporter オブジェクトが抹消されるまで、SMTP接続が維持されなければならない場合に true | true |
| .logFile : Text メール接続に対して定義された拡張ログファイル (あれば) へのフルパス | なし |
| password : Text サーバーとの認証のためのユーザーパスワード。 これは SMTP transporter オブジェクトでは返されません。 | なし |
| .port : Integer メール通信に使用されるポート番号 | 587 |
.sendTimeOut : Integer.send() 呼び出し時のタイムアウト時間 (秒単位) | 100 |
| .user : Text メールサーバーでの認証に使用されたユーザー名 | なし |
戻り値
この関数は SMTP transporter オブジェクト を返します。 返されるプロパティはすべて 読み取り専用 です。
例題
$server:=New object
$server.host:="smtp.gmail.com" // 必須
$server.port:=465
$server.user:="4D@gmail.com"
$server.password:="XXXX"
$server.logFile:="LogTest.txt" // Logsフォルダーに保存する拡張されたログ
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("メール送信中にエラーが発生しました: "+$status.message)
End if
プロパティ
| コマンド番号 | 1608 |
| スレッドセーフ | ✓ |