[Nym3-commit] r199 - trunk/nym3/Client

laurent at conuropsis.org laurent at conuropsis.org
Wed Apr 27 18:26:06 CEST 2005


Author: laurent
Date: 2005-04-27 18:26:05 +0200 (Wed, 27 Apr 2005)
New Revision: 199

Modified:
   trunk/nym3/Client/Main.py
Log:
Start control message parsing in the client.


Modified: trunk/nym3/Client/Main.py
===================================================================
--- trunk/nym3/Client/Main.py	2005-04-18 16:44:40 UTC (rev 198)
+++ trunk/nym3/Client/Main.py	2005-04-27 16:26:05 UTC (rev 199)
@@ -77,7 +77,7 @@
     def display(self, s):
 	print s
 
-def processMessage(msg, config, ui, nickname):
+def processMessage(msg, config, ui, idtag):
     """process incoming control message"""
       
     sr = Message.StrReader(msg)
@@ -201,8 +201,34 @@
 	setupAccount(config, ui, serverName = options.server, 
 		     usernamelist = myusernamelist,
 		     emailAddress = options.email, nickname = options.nickname)
-    
 
+    if args[1] == "process":
+	parser = OptionParser()
+	parser.add_option("-i", "--idtag", action = "store",
+			  dest = "idtag", help = "The idTag contained in the"
+			  "enclosing SURB")
+	parser.add_option("-f", "--file", action = "store",
+			  dest = "file", help = "The file to read the message"
+			  " from, or stdin if omitted")
+	(options, args) = parser.parse_args(args[2:])
+	ui = CLI()
+	if not options.idtag:
+	    ui.display("Must provide an idTag")
+	    sys.exit(1)
+	config = Config.Config() # TODO load from file
+	tm = Account.TagMap(config.path + os.sep + 'tagmap')
+	nick = tm.nickFromId(options.idtag)
+	if options.file:
+	    try:
+		f = open(options.file, "r")
+		msg = f.read()
+		f.close()
+	    except IOError:
+		ui.display("Can't read requested file")
+		sys.exit(1)
+	else: msg = sys.stdin.read()
+	processMessage(msg, config, ui, nick)
+
 if __name__ == '__main__':
     main(sys.argv)
     sys.exit(0)



More information about the Nym3-commit mailing list