script: autosync.sh

This commit is contained in:
.[d]. 2022-09-05 19:25:13 -05:00
parent 02fdfc7d80
commit 1655b28bee

@ -14,15 +14,32 @@ class dr1p:
dr1p.enforcing=False
dr1p.purpose=""
dr1p.color=""
dr1p.token=""
dr1p.keyid=""
dr1p.home=""
###########################################################################################
@irc3.plugin
class Plugin:
#######################################################################################
def generate_keyid_token(self,mode=1):
if mode:
token=""
for i in range(3): token+=hex(rint(0,255))[2:].zfill(2).upper()
token+=hex(int(datetime.now().timestamp()))[-4:].upper()
token=list(token)
shuffle(token)
token=''.join(token)
return token
elif not mode:
keyid=""
for i in range(7): keyid+=hex(rint(0,255))[2:].zfill(2).upper()
keyid+=hex(int(datetime.now().timestamp()))[-4:].upper()
keyid=list(keyid)
shuffle(keyid)
keyid=''.join(keyid)
return keyid
#######################################################################################
def __init__(self,bot):
self.bot=bot
token=""
dr1p.color=""
try:
dr1p.purpose=os.environ['HYDRA_PURPOSE']
@ -34,17 +51,15 @@ class Plugin:
dr1p.enforcing=False
return
if dr1p.designation=="core": dr1p.color="\x0304"
for i in range(7): token+=hex(rint(0,255))[2:].zfill(2).upper()
token+=hex(int(datetime.now().timestamp()))[-4:].upper()
token=list(token)
shuffle(token)
dr1p.token=''.join(token)
dr1p.keyid=self.generate_keyid_token(0)
dr1p.token=self.generate_keyid_token(1)
#######################################################################################
def server_ready(self):
if not dr1p.designation=='core':
self.bot.privmsg("maple",f"[hydra:{dr1p.token}] - dupe - connected")
dr1p.token=self.generate_keyid_token()
self.bot.privmsg("maple",f"[hydra:{dr1p.keyid}] - [token:{dr1p.token}] - dupe - connected")
else:
self.bot.privmsg("maple",f"core - connected")
self.bot.privmsg("maple",f"[maple:{dr1p.keyid}] - [token:{dr1p.token}] - core - connected")
#######################################################################################
@irc3.event(irc3.rfc.ERR_NICK)
def on_errnick(self,srv=None,retcode=None,me=None,nick=None,data=None):
@ -89,28 +104,28 @@ class Plugin:
if target!=self.bot.config['nick'] and mask.nick==self.bot.nick: return
if mask.nick==self.bot.nick and target==self.bot.config['nick'] and dr1p.designation=='core':
if data.endswith('dupe - connected'):
_token=data.split("[hydra:")[1].split("]")[0]
_nekot=_token[::-1]
msg=f'[TOKEN:{_token}] - [NEKOT:{_nekot}] - COLOR:{rint(16,87)}'
_keyid=data.split("[hydra:")[1].split("]")[0]
_diyek=_keyid[::-1]
msg=f'[KEYID:{_keyid}] - [DIYEK:{_diyek}] - COLOR:{rint(16,87)}'
self.bot.privmsg(self.bot.config['nick'],msg)
if mask.nick==self.bot.nick and target==self.bot.config['nick'] and dr1p.designation=='dupe':
if not data.find('NEKOT')==-1:
_token=data.split(":")[1].split("]")[0]
if _token.lower()==dr1p.token.lower():
if not data.find("] - [NEKOT:")==-1:
_nekot=data.split("] - [NEKOT:")[1].split("]")[0]
if _token.lower()==_nekot[::-1].lower():
if not data.find('DIYEK')==-1:
_keyid=data.split(":")[1].split("]")[0]
if _keyid.lower()==dr1p.keyid.lower():
if not data.find("] - [DIYEK:")==-1:
_diyek=data.split("] - [DIYEK:")[1].split("]")[0]
if _keyid.lower()==_diyek[::-1].lower():
_color=int(data.split(" - COLOR:")[1].strip())
if not dr1p.color:
dr1p.color=f"\x03{str(_color)}"
if dr1p.designation=='core':
msg=f"{dr1p.color}[maple:{dr1p.token}] - "
msg=f"{dr1p.color}[maple:{dr1p.keyid}] - "
else:
try:
msg=f"{dr1p.color}[hydra:{dr1p.token}] - "
msg=f"{dr1p.color}[hydra:{dr1p.keyid}] - "
except:
dr1p.color="\x0303"
msg=f"{dr1p.color}[hydra:{dr1p.token}] - "
msg=f"{dr1p.color}[hydra:{dr1p.keyid}] - "
if mask.nick!=self.bot.config['nick']:
if target!=dr1p.home: return
if target==dr1p.home: return
@ -138,21 +153,21 @@ class Plugin:
self.bot.part(target,reason)
self.bot.privmsg("maple",f"parted {target} - {reason}".lower())
if dr1p.designation=="core":
msg=f"[maple:{dr1p.token}] - core - maple online - test6 purpose: {dr1p.purpose}"
msg=f"[maple:{dr1p.keyid}] - core - maple online - test6 purpose: {dr1p.purpose}"
self.bot.privmsg(dr1p.home,msg)
else:
msg=f"[hydra:{dr1p.token}] - dupe - hydra online - test6 purpose: {dr1p.purpose}"
msg=f"[hydra:{dr1p.keyid}] - dupe - hydra online - test6 purpose: {dr1p.purpose}"
self.bot.privmsg(dr1p.home,msg)
if kw['event']=='PART':
if dr1p.designation=="core":
msg=f"[maple:{dr1p.token}] -"
msg=f"[maple:{dr1p.keyid}] -"
else:
msg=f"[hydra:{dr1p.token}] -"
msg=f"[hydra:{dr1p.keyid}] -"
self.bot.privmsg("maple",msg+f"parted {target} - {data}")
if kw['event']=='QUIT':
if dr1p.designation=="core":
msg=f"[maple:{dr1p.token}] -"
msg=f"[maple:{dr1p.keyid}] -"
else:
msg=f"[hydra:{dr1p.token}] -"
msg=f"[hydra:{dr1p.keyid}] -"
self.bot.privmsg("maple",msg+f"quit {target} - {data}")
####################################################################################### EOF