diff options
author | terminaldweller <thabogre@gmail.com> | 2021-05-14 18:14:50 +0000 |
---|---|---|
committer | terminaldweller <thabogre@gmail.com> | 2021-05-14 18:14:50 +0000 |
commit | 6e528248414e330c9e25e81596ab47b8b8a5b701 (patch) | |
tree | e1aa41a7f3198eeac187e6177ec7d4a33db229d3 /telebot.py | |
download | scripts-6e528248414e330c9e25e81596ab47b8b8a5b701.tar.gz scripts-6e528248414e330c9e25e81596ab47b8b8a5b701.zip |
first commitmaster
Diffstat (limited to 'telebot.py')
-rwxr-xr-x | telebot.py | 126 |
1 files changed, 126 insertions, 0 deletions
diff --git a/telebot.py b/telebot.py new file mode 100755 index 0000000..47dfdf1 --- /dev/null +++ b/telebot.py @@ -0,0 +1,126 @@ +#!/usr/bin/python3 + +import argparse +import code +import readline +import signal +import sys +from telegram.ext import Updater, CommandHandler +import logging +import imp +import json +sys.path.insert(0, "./python") +from deviutil import Demon_Father +hived = imp.load_source("hived", "./hived") +from hived import networth, highpercentdump_bot +sys.path.insert(0, "/home/rooot/devi/kaminokumo") +kaminokumo = imp.load_source("kaminokumo", "/home/rooot/devi/kaminokumo") +from kaminokumo import mrg import json +import threading +from io import TextIOWrapper, BytesIO + +telekey_json = "./telekey.json" +json_key = json.load(open(telekey_json)) +API_TOKEN = json_key['telekey'] + +class Mg_thread(threading.Thread): + def __init__(self, bot, update): + self.bot = bot + self.update = update + + def run(self): + url = json.load(open("/home/bloodstalker/extra/kaminokumo/data.json")) + res = mrg(url["1"]) + text_str = str() + if res: text_str = "marge is up" + else: text_str = "no marge" + res = mrg(url["2"]) + text_str = str() + if res: text_str = "obk is up" + else: text_str = "no obk" + self.bot.send_message(chat_id=self.update.message.chat_id, text=text_str) + +def start(bot, update): + bot.send_message(chat_id=update.message.chat_id, text="Hey... nice to make your acquaintance.") + +def net(bot, update): + total = networth() + bot.send_message(chat_id=update.message.chat_id, text=total) + +def high(bot, update): + total = highpercentdump_bot() + total_str = "".join(total) + bot.send_message(chat_id=update.message.chat_id, text=total_str) + +def mg(bot, update): + url = json.load(open("/home/bloodstalker/extra/kaminokumo/data.json")) + res = mrg(url["1"]) + text_str = str() + if res: text_str += "marge is up" + else: text_str += "no marge\t" + res = mrg(url["2"]) + if res: text_str += "obk is up" + else: text_str += "no obk\t" + bot.send_message(chat_id=update.message.chat_id, text=text_str) + +def generic(bot, update, args): + import mushi + print(repr(args)) + old_stdout = sys.stdout + sys.stdout = TextIOWrapper(BytesIO(), sys.stdout.encoding) + mushi.main(args) + sys.stdout.seek(0) + out = sys.stdout.read() + print(repr(out)) + bot.send_message(chat_id=update.message.chat_id, text=out) + sys.stdout.close() + sys.stdout = old_stdout + +class Argparser(object): + def __init__(self): + parser = argparse.ArgumentParser() + parser.add_argument("--string", type=str, help="string") + parser.add_argument("--bool", action="store_true", help="bool", default=False) + parser.add_argument("--dbg", action="store_true", help="debug", default=False) + self.args = parser.parse_args() + +class Demon(Demon_Father): + def run(self): + updater = Updater(token=API_TOKEN) + bot = updater.bot + dispatcher = updater.dispatcher + logging.basicConfig(format='%(asctime)s - %(name)s - %(levelname)s - %(message)s', level=logging.INFO) + start_handler = CommandHandler("start", start) + net_handler = CommandHandler("net", net) + high_handler = CommandHandler("high", high) + mg_handler = CommandHandler("mg", mg) + generic_handler = CommandHandler("cc", generic, pass_args=True) + dispatcher.add_handler(start_handler) + dispatcher.add_handler(net_handler) + dispatcher.add_handler(high_handler) + dispatcher.add_handler(mg_handler) + dispatcher.add_handler(generic_handler) + updater.start_polling() + +# write code here +def premain(argparser): + #here + pidfile = open("/tmp/telebot_temp", "w") + demon = Demon(pidfile) + demon.run() + +def main(): + argparser = Argparser() + if argparser.args.dbg: + try: + premain(argparser) + except: + variables = globals().copy() + variables.update(locals()) + shell = code.InteractiveConsole(variables) + shell.interact(banner="DEBUG REPL") + else: + premain(argparser) + +if __name__ == "__main__": + main() |