4D v18SMTP New transporter |
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
4D v18
SMTP New transporter
|
SMTP New transporter ( server ) -> 戻り値 | ||||||||
引数 | 型 | 説明 | ||||||
server | Object |
![]() |
メールサーバー情報 | |||||
戻り値 | Object |
![]() |
SMTP transporter オブジェクト | |||||
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 サーバー上でのセッションを開くのに使用する認証モード(*)。取りうる値:
| |||||||||||||||
user | テキスト | サーバー上で認証をするユーザー名 | |||||||||||||||
password | テキスト | サーバー上で認証をするユーザーパスワード | |||||||||||||||
acceptUnsecureConnection | ブール | True であれば、暗号化された接続が不可能だった場合に暗号化されてない接続を4D に許可させます(**)。False であれば、暗号化された接続が不可能だった時点でエラーが返されます。デフォルト値=False | |||||||||||||||
logFile | テキスト | (任意) 拡張されたログファイル用のファイルパス(***)。(カレントのLogs フォルダに対する)相対パス、絶対パスのどちらも指定可能です。 | |||||||||||||||
headerCharset | テキスト | (任意) eメールに使用される文字セットとエンコーディングです。使用箇所は次の通りです: 主題、添付ファイル名、eメール名属性。取りうる値:
| |||||||||||||||
bodyCharset | テキスト | (任意) eメールのhtmlとテキスト本文のコンテンツに使用される文字セットとエンコーディングです。取りうる値: headerCharset と同じ(上記参照) |
(*) もしauthenticationMode がnull あるいはundefinedだった場合、サーバーによってサポートされる最も安全な認証モードが使用されます。
(**) 利用可能な安全な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 | テキスト | メールの本文に使用される文字セットとエンコーディング |
メソッド | 詳細 |
SMTP_transporter.send( ) | メッセージを送信する。 |
SMTP_transporter.checkConnection( ) | 認証をチェックする。 |
このコマンドは、SMTP サーバーとの接続を開くわけではないことに注意してください。SMTP 接続は、実際にはSMTP_transporter.send( ) メソッドが実行された時に開かれます。
SMTP 接続は、以下の場合に自動的に閉じられます:
$server:=New object
$server.host:="smtp.gmail.com" //必須
$server.port:=465
$server.user:="4D@gmail.com"
$server.password:="XXXX"
$server.logFile:="LogTest.txt" //Logs フォルダに保存する拡張されたログ
$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.statusText)
End if
MAIL Convert to MIME
SMTP_transporter.checkConnection( )
SMTP_transporter.send( )
transporter.acceptUnsecureConnection
transporter.authenticationMode
transporter.connectionTimeOut
transporter.host
transporter.keepAlive
transporter.logFile
transporter.port
transporter.sendTimeOut
transporter.user
プロダクト: 4D
テーマ: メール
番号:
1608
初出: 4D v17 R4
変更: 4D v17 R5
変更: 4D v18
ランゲージリファレンス ( 4D v18)