aboutsummaryrefslogtreecommitdiff
path: root/src/IRCBot.py
diff options
context:
space:
mode:
authorGravatar jesopo2018-10-06 15:45:56 +0100
committerGravatar jesopo2018-10-06 15:45:56 +0100
commit79aff93b5de3cd9ed61920abe5e7c1f0acd1b27d (patch)
treeeb4352ae097d4389bfca1cfb558e2d2433e653ac /src/IRCBot.py
parentStrip/replace \n from git commit messages in modules/github.py (diff)
signature
Add a ControlSocket client to IRCBot.py, use it to trigger the epoll loop when a
github webhook has been caught!
Diffstat (limited to 'src/IRCBot.py')
-rw-r--r--src/IRCBot.py9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/IRCBot.py b/src/IRCBot.py
index 29c45b9b..fb8533fc 100644
--- a/src/IRCBot.py
+++ b/src/IRCBot.py
@@ -1,4 +1,4 @@
-import os, select, sys, threading, time, traceback, uuid
+import os, select, socket, sys, threading, time, traceback, uuid
from src import ControlSocket, EventManager, Exports, IRCServer, Logging
from src import ModuleManager, utils
@@ -26,6 +26,13 @@ class Bot(object):
self.control_socket = ControlSocket.ControlSocket(self)
self.add_socket(self.control_socket)
+ self.control_socket_client = socket.socket(
+ socket.AF_UNIX, socket.SOCK_STREAM)
+ self.control_socket_client.connect(self.config["control-socket"])
+
+ def trigger(self):
+ self.control_socket_client.send(b"TRIGGER")
+
def add_server(self, server_id, connect=True):
(_, alias, hostname, port, password, ipv4, tls, bindhost, nickname,
username, realname) = self.database.servers.get(server_id)