#Created by hlmtre#
"""
Works only in hlmtre's specifically configured environment
and when his house has not burned down
"""
import sys
if sys.version_info > (3, 0, 0):
try:
from .basemodule import BaseModule
except (ImportError, SystemError):
from modules.basemodule import BaseModule
else:
try:
from basemodule import BaseModule
except (ImportError, SystemError):
from modules.basemodule import BaseModule
from event import Event
[docs]class Vyos(BaseModule):
[docs] def post_init(self):
vevent = Event("__.vyos__")
vevent.define(msg_definition="^\\.vyos")
vevent.subscribe(self)
self.help = ".vyos <name of box>"
self.box_to_ip = dict(
[('mech', '10.0.0.76'), ('bonekin', '192.168.17.40'), ('thraust', '192.168.0.126')])
self.bot.register_event(vevent, self)
[docs] def handle(self, event):
self.event = event
if event.msg.startswith(".vyos") and len(event.msg.split()) > 1:
nick = event.msg.split()[-1]
if not self.ping(nick):
self.say(
event.channel,
"HEY " +
nick.upper() +
" UR VYOS BAWKCXZXCZX IS DOWN")
else:
self.say(
event.channel,
"HEY " +
nick.upper() +
" U KEPT SOMETHING ALIVE 4 ONCE")
[docs] def ping(self, nick):
import subprocess
try:
resp = subprocess.call(
["ping", "-c 1", self.box_to_ip[nick.lower()]])
except KeyError:
self.say(self.event.channel, "BAD NAME IDIOT")
return False
if resp == 0:
return True
else:
return False