summaryrefslogtreecommitdiffstats
path: root/curunir.py
diff options
context:
space:
mode:
authorMatthias Schiffer <matthias@gamezock.de>2010-05-02 20:28:17 +0200
committerMatthias Schiffer <matthias@gamezock.de>2010-05-02 20:31:34 +0200
commit0277a779c9dff841e04a08a5c39fe07faa92cfe8 (patch)
tree6a935f30a31a925c2c404dbbc119040b3b9e0acd /curunir.py
parent41fec54c305d4a81245e9e294c7fc29fed9b7b00 (diff)
downloadcurunir-0277a779c9dff841e04a08a5c39fe07faa92cfe8.tar
curunir-0277a779c9dff841e04a08a5c39fe07faa92cfe8.zip
Added modules
Diffstat (limited to 'curunir.py')
-rw-r--r--curunir.py20
1 files changed, 18 insertions, 2 deletions
diff --git a/curunir.py b/curunir.py
index 7d14410..7f6a699 100644
--- a/curunir.py
+++ b/curunir.py
@@ -3,6 +3,18 @@ from connection.xmpp import XMPPConnection
import signal, sys
from config import config
+class ModuleManager:
+ def __init__(self, config):
+ self.config = config
+ self.modules = []
+
+ for mod in config['modules']:
+ self.load(mod)
+
+ def load(self, name):
+ mod = __import__('modules.' + name, globals(), locals(), ['Module'])
+ self.modules.append(mod.Module(self))
+
run = True
def exithandler(signum, frame):
@@ -13,10 +25,14 @@ signal.signal(signal.SIGINT, exithandler)
signal.signal(signal.SIGTERM, exithandler)
signal.signal(signal.SIGQUIT, exithandler)
-connection = XMPPConnection(config)
+modman = ModuleManager(config)
+
+connection = XMPPConnection(config, modman)
connection.connect()
while run:
- connection.stream.loop_iter(1)
+ act = connection.stream.loop_iter(1)
+ if not act:
+ connection.idle()
connection.disconnect()