| 4D v20SMTP_Send | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D v20
 SMTP_Send 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| SMTP_Send ( smtp_ID {; sessionParam} ) -> 戻り値 | ||||||||
| 引数 | 型 | 説明 | ||||||
| smtp_ID | 倍長整数 |   | メッセージ参照 | |||||
| sessionParam | 倍長整数 |   | 1 = SSLを使用, 0または省略 = SSLを使用しない | |||||
| 戻り値 | 整数 |   | エラーコード | |||||
SMTP_Send コマンドは smtp_ID で参照されるメッセージを送信します。しかしメモリからデータをクリアすることはありません。
smtp_ID は SMTP_New コマンドで作成された倍長整数のメッセージ参照です。
オプションのsessionParam引数を使用すると、接続にSSLプロトコルを使用することができます:
バージョン13.2以降、4D Internet CommandsはexplicitモードのSTARTTLS接続をサポートします。これはまず標準モードで接続を確立し、認証フェーズののちSSL/TLS接続にアップグレードできることを意味します。このメカニズムについては例題2も参照してください。
この例題では、メッセージが作成され、スタティックな要素がループの外側で定義されています。そののち、[People] テーブルのレコード毎にメッセージがカスタマイズされ、送信されます。
 $error:=SMTP_New($smtp_id)
 $error:=SMTP_Host($smtp_id;"wkrp.com")
 $error:=SMTP_From($smtp_id;"herb_tarlick@wkrp.com")
 $error:=SMTP_ReplyTo($smtp_id;"bigguy@wkrp.com")
 $error:=SMTP_Subject($smtp_id;"Discounts on Ad Space!")
 FIRST RECORD([People])
 For($i;1;Records in selection([People]))
    If([People]Sales2Date>100000)
       $Body:=<>BigDiscText
    Else
       $Body:=<>SmlDiscText
    End if
    $Body:=Replace string($BoilerPlate;"<Salutation>";[People]Firstname)
    $error:=SMTP_To($smtp_id;[People]Email;1) `"To" ヘッダを新しい値で置き換える
    $error:=SMTP_Body($smtp_id;$Body)
    $error:=SMTP_Send($smtp_id)
    NEXT RECORD([People])
 End for
 $error:=SMTP_Clear($smtp_id)この例題ではMS Exchange server に STARTTLSを使用してテストメッセージを送信します:
 $error:=SMTP_New($smtp_id)
 $error:=SMTP_Host($smtp_id;"exchange.4d.com")
 $error:=SMTP_From($smtp_id;"username@4d.com")
 $error:=SMTP_ReplyTo($smtp_id;"username@4d.com")
 $error:=SMTP_Subject($smtp_id;"Message test")
 $error:=SMTP_Auth($smtp_id;"username";"!%@password")
 $Body:="This is a test for messages sent through the Exchange, please do not reply"
 $error:=IT_SetPort(2;587) //標準のSTMPモード, Exchange Serverではポート587
 $error:=SMTP_To($smtp_id;"recipient@gmail.com")
 $error:=SMTP_Body($smtp_id;$Body)
 $error:=SMTP_Send($smtp_id;0) // アップグレードモード
 ALERT(String($error));
	プロダクト: 4D
	テーマ: IC メール送信(廃止予定)
	番号: 
        88989
        
        
        
	
	初出: 4D Internet Commands 6.5
	変更: 4D Internet Commands v12.1
	変更: 4D v13.2
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	4D Internet Commands ( 4D v20)
	
	
 コメントを追加
コメントを追加