mirror of
https://github.com/iio612/DEFENDER.git
synced 2026-02-13 19:24:23 +00:00
24
core/irc.py
24
core/irc.py
@@ -655,6 +655,30 @@ class Irc:
|
|||||||
# self.Base.create_thread(self.abuseipdb_scan, (cmd[7], ))
|
# self.Base.create_thread(self.abuseipdb_scan, (cmd[7], ))
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
case 'SQUIT':
|
||||||
|
# ['@msgid=QOEolbRxdhpVW5c8qLkbAU;time=2024-09-21T17:33:16.547Z', 'SQUIT', 'defender.deb.biz.st', ':Connection', 'closed']
|
||||||
|
server_hostname = interm_response[1]
|
||||||
|
uid_to_delete = ''
|
||||||
|
for s_user in self.User.UID_DB:
|
||||||
|
if s_user.hostname == server_hostname and 'S' in s_user.umodes:
|
||||||
|
uid_to_delete = s_user.uid
|
||||||
|
|
||||||
|
self.User.delete(uid_to_delete)
|
||||||
|
self.Channel.delete_user_from_all_channel(uid_to_delete)
|
||||||
|
|
||||||
|
case 'SJOIN':
|
||||||
|
# If Server Join channels
|
||||||
|
# [':11Z', 'SJOIN', '1726940687', '#welcome', '+', ':11ZAAAAAB']
|
||||||
|
channel_joined = original_response[3]
|
||||||
|
server_uid = self.Base.clean_uid(original_response[5])
|
||||||
|
|
||||||
|
self.Channel.insert(
|
||||||
|
self.Channel.ChannelModel(
|
||||||
|
name=channel_joined,
|
||||||
|
uids=[server_uid]
|
||||||
|
)
|
||||||
|
)
|
||||||
|
|
||||||
case 'REPUTATION':
|
case 'REPUTATION':
|
||||||
# :001 REPUTATION 91.168.141.239 118
|
# :001 REPUTATION 91.168.141.239 118
|
||||||
try:
|
try:
|
||||||
|
|||||||
@@ -1624,6 +1624,11 @@ class Defender():
|
|||||||
try:
|
try:
|
||||||
nickoruid = cmd[1]
|
nickoruid = cmd[1]
|
||||||
UserObject = self.User.get_User(nickoruid)
|
UserObject = self.User.get_User(nickoruid)
|
||||||
|
channels: list = []
|
||||||
|
for chan in self.Channel.UID_CHANNEL_DB:
|
||||||
|
for uid_in_chan in chan.uids:
|
||||||
|
if self.Base.clean_uid(uid_in_chan) == UserObject.uid:
|
||||||
|
channels.append(chan.name)
|
||||||
|
|
||||||
if not UserObject is None:
|
if not UserObject is None:
|
||||||
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : UID : {UserObject.uid}')
|
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : UID : {UserObject.uid}')
|
||||||
@@ -1638,6 +1643,7 @@ class Defender():
|
|||||||
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : WebWebsocket : {UserObject.isWebsocket}')
|
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : WebWebsocket : {UserObject.isWebsocket}')
|
||||||
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : REPUTATION : {UserObject.score_connexion}')
|
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : REPUTATION : {UserObject.score_connexion}')
|
||||||
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : MODES : {UserObject.umodes}')
|
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : MODES : {UserObject.umodes}')
|
||||||
|
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : CHANNELS : {channels}')
|
||||||
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : CONNECTION TIME : {UserObject.connexion_datetime}')
|
self.Irc.send2socket(f':{dnickname} NOTICE {fromuser} : CONNECTION TIME : {UserObject.connexion_datetime}')
|
||||||
else:
|
else:
|
||||||
self.Irc.send2socket(f":{dnickname} NOTICE {fromuser} : This user {nickoruid} doesn't exist")
|
self.Irc.send2socket(f":{dnickname} NOTICE {fromuser} : This user {nickoruid} doesn't exist")
|
||||||
|
|||||||
Reference in New Issue
Block a user