[Affelio-cvs 234] CVS update: affelio/lib/Affelio/SNS

Back to archive index

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;


Affelio-cvs メーリングリストの案内
Back to archive index