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