Moved files to subdirectory
This commit is contained in:
80
legacy/modules/monitor.py
Normal file
80
legacy/modules/monitor.py
Normal file
@@ -0,0 +1,80 @@
|
||||
import main
|
||||
from core.logstash import sendLogstashNotification
|
||||
from core.relay import sendRelayNotification
|
||||
from modules import userinfo
|
||||
from utils.dedup import dedup
|
||||
|
||||
order = [
|
||||
"type",
|
||||
"net",
|
||||
"num",
|
||||
"channel",
|
||||
"msg",
|
||||
"nick",
|
||||
"ident",
|
||||
"host",
|
||||
"mtype",
|
||||
"user",
|
||||
"mode",
|
||||
"modearg",
|
||||
"realname",
|
||||
"server",
|
||||
"status",
|
||||
"ts",
|
||||
]
|
||||
|
||||
|
||||
def parsemeta(numName, c):
|
||||
if "channel" not in c.keys():
|
||||
c["channel"] = None
|
||||
# metadata scraping
|
||||
# need to check if this was received from a relay
|
||||
# in which case, do not do this
|
||||
if c["type"] in ["msg", "notice", "action", "topic", "mode"]:
|
||||
if "muser" in c.keys():
|
||||
userinfo.editUser(c["net"], c["muser"])
|
||||
# if c["type"] == "mode":
|
||||
# userinfo.updateMode(c)
|
||||
elif c["type"] == "nick":
|
||||
userinfo.renameUser(
|
||||
c["net"],
|
||||
c["nick"],
|
||||
c["muser"],
|
||||
c["user"],
|
||||
c["user"] + "!" + c["ident"] + "@" + c["host"],
|
||||
)
|
||||
elif c["type"] == "kick":
|
||||
userinfo.editUser(c["net"], c["muser"])
|
||||
userinfo.delUserByNick(c["net"], c["channel"], c["user"])
|
||||
elif c["type"] == "quit":
|
||||
userinfo.delUserByNetwork(c["net"], c["nick"], c["muser"])
|
||||
elif c["type"] == "join":
|
||||
userinfo.addUser(c["net"], c["channel"], c["nick"], c["muser"])
|
||||
elif c["type"] == "part":
|
||||
userinfo.delUser(c["net"], c["channel"], c["nick"], c["muser"])
|
||||
|
||||
if "mtype" in c.keys():
|
||||
if c["mtype"] == "nick":
|
||||
userinfo.renameUser(
|
||||
c["net"],
|
||||
c["nick"],
|
||||
c["muser"],
|
||||
c["user"],
|
||||
c["user"] + "!" + c["ident"] + "@" + c["host"],
|
||||
)
|
||||
|
||||
|
||||
def event(numName, c): # yes I'm using a short variable because otherwise it goes off the screen
|
||||
if dedup(numName, c):
|
||||
return
|
||||
|
||||
# make a copy of the object with dict() to prevent sending notifications with channel of None
|
||||
parsemeta(numName, dict(c))
|
||||
|
||||
if "muser" in c.keys():
|
||||
del c["muser"]
|
||||
sortedKeys = {k: c[k] for k in order if k in c} # Sort dict keys according to order
|
||||
sortedKeys["src"] = "irc"
|
||||
if main.config["Logstash"]["Enabled"]:
|
||||
sendLogstashNotification(sortedKeys)
|
||||
sendRelayNotification(sortedKeys)
|
||||
Reference in New Issue
Block a user