Tadashi Okoshi
slash****@users*****
2005年 6月 28日 (火) 16:44:53 JST
Index: affelio/lib/Affelio/SNS/Handshaker_c.pm diff -u affelio/lib/Affelio/SNS/Handshaker_c.pm:1.4 affelio/lib/Affelio/SNS/Handshaker_c.pm:1.5 --- affelio/lib/Affelio/SNS/Handshaker_c.pm:1.4 Tue Jun 28 00:29:19 2005 +++ affelio/lib/Affelio/SNS/Handshaker_c.pm Tue Jun 28 16:44:53 2005 @@ -4,7 +4,7 @@ # http://affelio.jp/ (Japan) # http://affelio.jp/ (USA and other area) # -# $Id: Handshaker_c.pm,v 1.4 2005/06/27 15:29:19 slash5234 Exp $ +# $Id: Handshaker_c.pm,v 1.5 2005/06/28 07:44:53 slash5234 Exp $ package Affelio::SNS::Handshaker_c; { @@ -32,13 +32,13 @@ ################################################################# sub post_Message{ my %arg = @_; - # + #arg (part 1) my $proto_ver = $arg{proto_ver}; my $dest_uri = $arg{dest_uri}; my $src = $arg{src}; my $password = $arg{password}; - # + #arg (part 2) my $msg_from = $arg{msg_from}; my $msg_from_nickname = $arg{msg_from_nickname}; my $msg_to = $arg{msg_to}; @@ -46,21 +46,45 @@ my $MIMed_msg_title = encode_base64($arg{msg_title}); my $MIMed_msg_body = encode_base64($arg{msg_body}); - debug_print("C::post_Message: $msg_from, $msg_from_nickname, $msg_to, $msg_timestamp, [$msg_MIMed_title], [$msg_MIMed_body]"); + debug_print("C::post_Message: dest=[$dest_uri]"); + debug_print("C::post_Message: $msg_from, $msg_from_nickname, $msg_to, $msg_timestamp, [$MIMed_msg_title], [$MIMed_msg_body]"); - my $encrypted = msg_encrypt("jf99sdhq;" - . "*" . $src - . "*" . $msg_from - . "*" . $msg_from_nickname - . "*" . $msg_to - . "*" . $msg_timestamp - . "*" . $MIMed_msg_title - . "*" . $MIMed_msg_body, - $password); + ############################ + #Generate XML + ############################ + my $XMLbody = <<EOT; +<message> +<header> +<from>$msg_from</from> +<from_nickname>$msg_from_nickname</from_nickname> +<to>$src</to> +<timestamp>$msg_timestamp</timestamp> +<title>$MIMed_msg_title</title> +</header> +<body> +<text>$MIMed_msg_body</text> +</body> +</message> +<src>$src</src> +EOT + debug_print("C::post_Message: =============================\n"); + debug_print($XMLbody); + debug_print("C::post_Message: =============================\n"); + + ############################ + #Encryption + ############################ + my $encrypted = msg_encrypt($XMLbody, $password); + + ############################ + #MIME encode + ############################ my $MIMed = encode_base64($encrypted); - debug_print("C::post_Message: [$MIMed]"); + ############################ + #Send to the destination through XMLRPC + ############################ my $result = eval { XMLRPC::Lite ->proxy($dest_uri) #XML @@ -73,8 +97,9 @@ ) ->result; }; - debug_print("post_Message: RPC returned.\n"); + debug_print("C::post_Message: RPC returned.\n"); if ($@) { + debug_print("C::post_Message: IOException($@)"); throw Affelio::exception::IOException($@); } @@ -82,6 +107,7 @@ debug_print("post_Message: OK : [$result->{flerror}]\n"); if($result->{flerror} ne "0"){ + debug_print("C::post_Message: IOException($result->{message})"); throw Affelio::exception::IOException($result->{message}); } return $result;