[kansaipm] Re:2周年記念(前打ち合わせ?)

Hiroyuki OYAMA oyama at crayfish.co.jp
Thu Apr 11 08:25:16 CDT 2002


クレイフィッシュの小山です。
# 関係ないところに反応する奴

Net::Telnetでメール送信ったらこんな感じでしょか。CSVも添付
してみたりして♪


#!perl

use Net::Telnet;
use Sys::Hostname;
use strict;

my $Server  = 'smtp.example.jp';
my $From    = 'sender at exmaple.jp';
my $To      = 'receiver at example.jp';
my $Subject = 'Hello World!';


my @smtp_command = (
	'HELO '. hostname(),
	"MAIL FROM: <$From>",
	"RCPT TO: <$To>",
	'DATA',
);
my $mail_body = <<__MAIL_BODY__;
From: <$From>
To: <$To>
Subject: $Subject
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="------HOGEHOGE"
Content-Transfer-Encoding: 7bit

--------HOGEHOGE
Content-Type: text/plain; charset="ISO-2022-JP"
Content-Transfer-Encoding: 7bit

From Net::Telnet module!

--------HOGEHOGE
Content-Type: application/octet-stream; name="hello_world.csv" 
Content-Disposition: attachment; 
filename="hello_world.csv" 
Content-Transfer-Encoding: 7bit 

PostgreSQL,RDBMS
MySQL,RDBMS
Apache,HTTPD

--------HOGEHOGE--

__MAIL_BODY__



my $telnet = Net::Telnet->new(
	Host       => $Server,
	Port       => 25,
	Telnetmode => 0,
);
eval {
	print $telnet->getline;
	for my $command (@smtp_command, $mail_body."\r\n.") {
		$telnet->print($command);
		my $response = $telnet->getline;
		print $response;
		die "$response" unless $response =~ /^(?:2\d\d|3\d\d)/;
	}
};
if ($@) {
	$telnet->print('RSET');
	$telnet->print('QUIT');
	$telnet->close;
	exit 1;
}

$telnet->print('QUIT');
print $telnet->getline;
$telnet->close;
__END__




さ、帰ろっと(汗)

On Thu, 11 Apr 2002 20:20:13 +0900
FUNAKI Takayasu <funaki at onkyo.co.jp> wrote:

> > use Perl http://use.perl.org/
> > #それにしてもNet::Telnetって、どうするんだろう...。
> 
> やっぱport25でHELOとかHELPとかDATAとか喋るんでしょうね。
> めんどくさそう (^^;;;
______________
Hiroyuki OYAMA <oyama at crayfish.co.jp>
System Operations Dept.
Crayfish Co.,Ltd. <http://Crayfish.CO.JP/>
  "PerlとRubyでYahoo!Messenger"
   -> http://ymca.infoware.ne.jp/




More information about the Kansai-pm mailing list