Re: Devel/Perl/MSN.pm (Bot-Depot realesed) - cubic9.com

MSN.pm (Bot-Depot realesed)



MSN Messenger用Perlモジュール。

妖怪うらがえしのサンプル

Devel/Perl/MSN.pm (Bot-Depot realesed) - cubic9.com[googleキャッシュ]





このサンプルはMSN.pm (Bot-Depot realesed)のライブラリを使っています。



メッセンジャー用モジュールがいろいろ紹介されてます。

Roblog::読兎の中の人から教えてもらった方法は、MSN.pm (Bot-Depot realesed)を使う方法で私もうしぶろぐの無脳をMSN対応したときはこれを使いました。
以下サンプル

ポート18180への通信は自作の人工無脳うしサーバとのやりとりです。





use MSN;

use Jcode;

#---------------------------------------

use Socket;

use FileHandle;



# デフォルトホストの設定

$host = 'localhost';

$port = 18180;



# ソケットの生成

$ip = inet_aton($host) || die "host($host) not found.\n";

$sockaddr = pack_sockaddr_in($port, $ip);

socket(SOCKET, PF_INET, SOCK_STREAM, 0) || die "socket error.\n";



# ソケットの接続

connect(SOCKET, $sockaddr) || die "connect $con_host $con_port error.\n";

autoflush SOCKET (1);

#---------------------------------------



my $msn = MSN->new( Handle   => "yomiusi\@hotmail.com",

               Password => "ひみつ",

               Host      => 'messenger.hotmail.com',

               Port      => 1863

                );



$msn->set_handler(Message     => \&on_message);

$msn->connect();

while(1) {

   $msn->do_one_loop

}

# 終了処理

close(SOCKET);



sub on_message {

    my ($self, $email, $name, $msg) = @_;

    $msg =~ s/<(|B%n)+?>//g;



    my $utf8_name = Jcode->new($name, 'utf8')->euc;

    my $str = Jcode->new($msg, 'utf8')->euc;



    if ($str ne "") {

        chomp($str);

        print SOCKET "msn talk " . $str . "\n";

        chomp($usimsg=<SOCKET>);

        @usimsg = split(" ", $usimsg, 2);

        $output = @usimsg[1];

        

        $utf8_str = Jcode->new($output, 'euc')->utf8;



        $self->sendmsg($utf8_str);

    }

    open(OUT, ">> ./msnlog.txt");

    print OUT "$utf8_name:$msg";

    print OUT "B%n\n";

    print OUT "$utf8_str";

    print OUT "B%n\n";

    close(OUT);

}

プログラミング関係 > LL : comments (0) : trackbacks (0) ブックマークに追加する

Comments

Comment Form

  

Trackbacks

Trackback url :
なかのひと
SiteSearch Google
Google
Web
underdone.net
blog.underdone.net
Blog Pet
Amazon
Categories
Profile
Other
  • Blog Ranking
  • RSS feed meter for http://blog.underdone.net/