メールを送信する (Illustrator CS3編)

Illustrator CS3は、なぜかソケット通信機能がありません。このため、Illustrator CS3単体ではメールを送信することはできません。かと、いってAppleScriptを経由するのもいまいちです。
そこで、Illustrator CS3にあるBridge CS3でスクリプトを実行させる機能を使ってメールを送信させます。大量のバッチ処理などを行って帰宅した後に無事に終わったかどうかメールで送信させることができるようになります。
まず、メール送信のプログラムは前回とほぼ同じです。送り主がIllustrator CS3になっているだけです。変更箇所などは前回を参照してください。
以下のメール送信のプログラムをホームフォルダにsendmail.jsxという名前で保存します。


// Illustrator CS3からメールを送信する
// ↓ ここは使用しているSMTPサーバー名
var mailServer = "mail.dgcr.co.jp";
// ↓ ここが送信先のメールアドレス
var mailAddress = "dgcr@dgcr.co.jp";
// ↓ メールの題名
var mailTitle = "IllustratorCS3 mail test";
// ↓ ここが送信したい本文(英語のみ)
var mailText = "Illustrator mail test";
// ↓ ここでメール送信。何カ所も送りたい場合は、↓の行を増やすだけ
sendmail(mailServer, mailAddress,mailTitle,mailText);

function sendmail(mailServer, mailAddress,mailTitle,mailText){
var sObj = new Socket();
if (sObj.open(mailServer+":25")) {
sObj.writeln("HELO "+mailServer);
var txt = sObj.read();
// ↓ここが送信者のメールアドレスになります
sObj.writeln("MAIL From: IllustratorCS3@"+mailServer);
txt = sObj.read();

sObj.writeln("RCPT To: "+mailAddress);
txt = sObj.read();

sObj.writeln("DATA");

// ↓ ここが題名になります
sObj.writeln("Subject: "+mailTitle);
txt = sObj.read();
sObj.writeln(mailText);
txt = sObj.read();

sObj.writeln(".");
txt = sObj.read();

sObj.writeln("QUIT");
txt = sObj.read();

sObj.close();
}
}


保存したら次に以下のスクリプトをIllustrator CS3から実行します。これでBridge CS3経由でメールが送信されます。以下のスクリプトの~/sendmail.jsxがメール送信プログラムの保存先のファイルパスになります。違うところに保存した場合には、このファイルパスも修正するようにしてください。


// Illustrator CS3からBridge CS3を経由してメール送信
var fs = new File("~/sendmail.jsx");
fs.open("r");
bridge2.executeScript(fs.read());

[サンプルをダウンロード]