メインコンテンツまでスキップ
バージョン: 開発中

SMTP New transporter

SMTP New transporter ( server ) -> 戻り値

引数説明
serverオブジェクト🡒Mail server information
戻り値オブジェクト🡐SMTP transporter object

説明

SMTP New transporter コマンドは、server 引数で設定された値を元に新規SMTP 接続を設定し、新しいtransporter オブジェクトを返します。返されたtransporter オブジェクトは一般的にメールの送信などに使用されます。

server 引数には、以下のプロパティを持つオブジェクトを渡します:

プロパティ詳細
hostテキストSMTP 通信に使用するホストサーバーの名前あるいはIP アドレス。
port数値(任意) SMTP 通信に使用するポート番号。デフォルト値=587
keepAliveブール(任意) True であれば、transporter オブジェクトが消去されるまで接続をつないだままに保ちます。デフォルト値=True
connectionTimeOut数値(任意) サーバーとの接続が確立されるまで待つ時間の最大値(秒単位)。デフォルト値=30
sendTimeOut数値(任意) タイムアウトの前にsendMail の呼び出しを待つ時間の最大値(秒単位)。デフォルト値=100
authenticationModeテキストSMTP サーバー上でのセッションを開くのに使用する認証モード(*)。取りうる値:
定数コメント
SMTP authentication CRAM MD5CRAM-MD5CRAM-MD5 プロトコルを使用したSMTP 認証
SMTP authentication loginLOGINLOGIN プロトコルを使用したSMTP 認証
SMTP authentication OAUTH2OAUTH2OAuth 2 プロトコルを使用したSMTP 認証
SMTP authentication plainPLAINPLAIN プロトコルを使用したSMTP 認証
accessTokenOAuth2テキストOAuth 2 認証資格情報を表すテキスト文字列。authenticationModeがOAUTH2 の場合のみ使用されます。accessTokenOAuth2 が使用されているがauthenticationMode が省略されていた場合、OAuth2 プロトコルが使用されます(サーバーで許可されていれば)。: アクセストークンには残存時間が決められており、一般的には1時間で失効します。アクセストークンが失効すると、自動再接続は不可能です(例: サーバーから接続解除したなど)。
userテキストサーバー上で認証をするユーザー名
passwordテキストサーバー上で認証をするユーザーパスワード
acceptUnsecureConnectionブールTrue であれば、暗号化された接続が不可能だった場合に暗号化されてない接続を4D に許可させます(**)。False であれば、暗号化された接続が不可能だった時点でエラーが返されます。デフォルト値=False
logFileテキスト(任意) 拡張されたログファイル用のファイルパス(***)。(カレントのLogs フォルダに対する)相対パス、絶対パスのどちらも指定可能です。
headerCharsetテキスト(任意) eメールに使用される文字セットとエンコーディングです。使用箇所は次の通りです: 主題、添付ファイル名、eメール名属性。取りうる値:
定数コメント
mail mode ISO2022JPUS-ASCII_ISO-2022-JP_UTF8_QP headerCharset: 可能ならUS-ASCII 、次に可能ならJapanese (ISO-2022-JP) & Quoted-printable 、それも不可なら UTF-8 & Quoted-printable bodyCharset: 可能ならUS-ASCII、次に可能ならJapanese (ISO-2022-JP) & 7-bit、それも不可なら UTF-8 & Quoted-printable
mail mode ISO88591ISO-8859-1 headerCharset: ISO-8859-1 & Quoted-printable bodyCharset: ISO-8859-1 & 8-bit
mail mode UTF8US-ASCII_UTF8_QPheaderCharset & bodyCharset: 可能ならUS-ASCII、それが不可ならUTF-8 & Quoted-printable (デフォルト値)
mail mode UTF8 in base64US-ASCII_UTF8_B64headerCharset & bodyCharset: 可能な場合は US-ASCII、それ以外は UTF-8 & base64
bodyCharsetテキスト(任意) eメールのhtmlとテキスト本文のコンテンツに使用される文字セットとエンコーディングです。取りうる値: headerCharset と同じ(上記参照)

(*) もしauthenticationMode がnull あるいはundefinedだった場合、サーバーによってサポートされる最も安全な認証モードが使用されます。

(**) 利用可能な安全なSMTP ポートは以下の通りです:

  • 465: SMTPS
  • 587 または 25: サーバーによってサポートされていれば、STARTTLS アップグレードがされたSMTP

(***) (コマンドで有効化される)通常のログファイルとは異なり、拡張されたログファイルには送信された全てのメールのMIME コンテンツが保存され、ファイルサイズの上限はありません。詳細な情報については、4DSMTPLog.txt の章を参照してください。

返されたオブジェクト

返されたtransporter オブジェクトには、以下の読み込みのみのプロパティとメソッドが格納されます:

プロパティ詳細
transporter.hostテキストSMTP 通信に使用されているホストサーバーの名前あるいはIP アドレス。
transporter.port数値SMTP 通信に使用されているポート番号。
transporter.keepAliveブールTrue であれば、transporter オブジェクトが消去されるまで接続をつないだままに保ちます。
transporter.connectionTimeOut数値サーバーとの接続が確立されるまで待つ時間の最大値(秒単位)。
transporter.sendTimeOut数値タイムアウトの前にsendMail の呼び出しを待つ時間の最大値(秒単位)。
transporter.acceptUnsecureConnectionブール暗号化された接続を確立するのが不可能だった場合に4D に暗号化されてない接続を確立することが許可されていればTrue。許可されていない場合にはFalse となり、その場合、暗号化された接続が不可能だった場合にはエラーが返されます。
transporter.authenticationModeテキストSMTP サーバー上でセッションを開くために実際に使用されている認証モード。
transporter.userテキストサーバー上で認証をするユーザー名
transporter.logFileテキストログファイル(あれば)のフルパス
transporter.headerCharsetテキストメールのヘッダーと名前部分に使用される文字セットとエンコーディング
transporter.bodyCharsetテキストメールの本文に使用される文字セットとエンコーディング
メソッド詳細
transporter.send( )メッセージを送信する。
SMTP_transporter.checkConnection( )認証をチェックする。

このコマンドは、SMTP サーバーとの接続を開くわけではないことに注意してください。SMTP 接続は、実際にはtransporter.send( ) メソッドが実行された時に開かれます。

SMTP 接続は、以下の場合に自動的に閉じられます:

  • keepAlive プロパティがTrue (デフォルト)の場合には、transporter オブジェクトが消去された時。
  • keepAlive プロパティがFalse の場合には、各transporter.send( ) メソッドが実行された後。