version 6.5
Simple Mail Transfer Protocol (SMTP) はインターネットで使用されるメール標準です。4D Internet Commandsを使用して、一つのコマンドで単純なメッセージを構築したり、一連のコマンドを使用して複雑なメッセージを構築したりできます。SMTPコマンドにより、Reply-To、Sender、Attachement、Comment、Referencesなどメッセージのすべての部分をコントロールできます。
4Dと4D Internet Commandsを使用して、インターネットにメッセージや添付ファイルを送信するとてもパワフルなデータベースを作成できます。SMTPコマンドを使用してデータベースを拡張できる例としては以下のようなものがあります:
・4Dで作成されたレポートやドキュメントを自動送信する。
・データベースの特殊状況 (エラーなど) を開発者に通知する。
・メーリングリストへのメール送信。
SMTPコマンドの利用シーンは無限です。これらのコマンドと、POP3 (メッセージや添付ファイルの取得)、FTP、TCPなどを使用すれば、4D開発者はデータベースの通信機能を劇的に拡張できます。
メールメッセージを作成する二つの方法
SMTPコマンドでは、メールを送信する単純な方法と複合的な方法、二つの方法が提供されます。単純な方法はSMTP_QuickSendコマンドを使用して行われ、必要なすべての引数を一つのコマンドに渡します。
送信するメッセージの構造はほとんどの場合極めて単純です。"ここの"誰かが、とある"題材"について、"どこかの"誰かに、なんらかの"メッセージ"を送信するということです。これが紙の場合、あなたはそれを書き留め、封筒に入れたら住所を書いて郵便局に持っていきます。SMTP_QuickSendでは、これら"From"、"To"、"Subject"そして"Message Body"要素を一つのコマンドに渡すだけでメールが送信されます。
しかしすべてのメールがこのように簡単に構築できるわけではありません。たとえば他のグループにメールのコピーを送信しなければならない場合や、年次レポートを添付して送らなければならない場合があります。4D Internet CommandsのSMTPコマンドでは、メールのすべての要素をあなたがコントロールできます。複数の添付や、CC、BCCなどすべてのメールヘッダをSMTPコマンドで処理することができます。
メールの配送を理解する
SMTPコマンドを理解する上で理解すべき最も重要なことは、メールが受信者に配信される方法に関連することです。SMTPコマンドは受信者に直接メールを配信しません。コマンドはメールを正しい形に構築し、そののちにSMTP_Hostコマンドで指定されたSMTPサーバにメールを送信します。SMTPサーバはしばしば組織自身の所有であるかまたはインターネットさビスプロバイダによって運営されています。SMTPサーバは最適化されたメールの配送経路を解決し、管理者により指定されたスケジュールでメールを転送します。
複合SMTPメッセージを送信するために最低限必要なこと
SMTPコマンドで正しくメールを送信するためには、いくつかのコマンドを必ず使用してメールを定義しなければなりません。以下メール送信時に必ず使用しなければならないコマンドを示します:
メモリ上に新しいメッセージのためのスペースを確保し、続くコマンドで使用するための参照を返します。
メッセージ転送を担当するSMTPを指定します。
最低一つのアドレスが必要です。
最低一つのアドレスが必要です。
メッセージを送信します。
メッセージ作成時に使用したメモリをクリアします。
上にあげたコマンドのみを使用した場合、メッセージは件名と本文なしで送信されます。もちろんこれで用をなすわけではありません。有用なメッセージにするためには追加の情報を指定する必要があります。