From: Eric S. Raymond Date: Sun, 7 Oct 2012 07:23:33 +0000 (-0400) Subject: Some feature enhancements for irk. X-Git-Tag: 1.9~22 X-Git-Url: http://git.tremily.us/?p=irker.git;a=commitdiff_plain;h=2288b088179acf5811e3bb057e85e3604e99e41a Some feature enhancements for irk. --- diff --git a/irk b/irk index 50ddc8f..320787e 100755 --- a/irk +++ b/irk @@ -4,16 +4,22 @@ # First argument must be a channel URL. If it does not begin with "irc", # the base URL for freenode is prepended. # -# Second argument must be a payload string. +# Second argument must be a payload string. Standard C-style escapes +# such as \n and \t are decoded. # import json import socket import sys -s = socket.create_connection(("localhost", 6659)) target = sys.argv[1] if not "irc:" in target: target = "irc://chat.freenode.net/{0}".format(target) -data = {"to": target, "privmsg" : " ".join(sys.argv[2:])} +message = " ".join(sys.argv[2:]) +message = message.decode('string_escape') +data = {"to": target, "privmsg" : message} print(json.dumps(data)) -s.sendall(json.dumps(data)) +try: + s = socket.create_connection(("localhost", 6659)) + s.sendall(json.dumps(data)) +except socket.error, e: + sys.stderr.write("irkerd: server launch failed: %r\n" % e)