From 7bae9545f19328fac1d1181b8952775a9e7691d7 Mon Sep 17 00:00:00 2001 From: James Booth Date: Mon, 8 Aug 2016 22:55:43 +0100 Subject: [PATCH] Added prof-irc.py --- prof-irc.py | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 prof-irc.py diff --git a/prof-irc.py b/prof-irc.py new file mode 100644 index 0000000..5978550 --- /dev/null +++ b/prof-irc.py @@ -0,0 +1,44 @@ +import prof +import irc.client + + + +def on_join(connection, event): + main_loop(connection) + + +def on_connect(connection, event): + if irc.client.is_channel(target): + connection.join(target) + return + main_loop(connection) + + +def get_lines(): + while True: + yield sys.stdin.readline().strip() + + +def main_loop(connection): + for line in itertools.takewhile(bool, get_lines()): + print(line) + connection.privmsg(target, line) + connection.quit("Using irc.client.py") + + +def on_disconnect(connection, event): + raise SystemExit() + + +def prof_init(version, status, account_name, fulljid): + reactor = irc.client.Reactor() + try: + c = reactor.server().connect("irc.freenode.net", 6665, "boothj5") + except irc.client.ServerConnectionError: + prof.cons_show(sys.exc_info()[1]) + + c.add_global_handler("welcome", on_connect) + c.add_global_handler("join", on_join) + c.add_global_handler("disconnect", on_disconnect) + + reactor.process_forever() \ No newline at end of file