def msg_receive_(msg): msg_from_id = msg['from']['id'] chat_id = msg['chat']['id'] if config['VIEW_THE_TERMINAL'] == True: resp, code = utils.viewer_(msg) if code == 404: api.sendAdmin(text=resp) utils.log_(resp) if utils.time_atual_(msg['date']) > int(10): return Response(status=200) else: if (not "text" in msg): msg['text'] = msg['action'] for aPlugin in plugins.plugins: for patterns in aPlugin['patterns']: cmd = re.search(patterns, msg['text'], re.IGNORECASE) if cmd: if cmd.groups(): cmd = cmd.groups() else: cmd = cmd.group() if "language_code" in msg['from']: config["LANG"] = msg['from']['language_code'][:2] if aPlugin['sudo'] == True: if msg_from_id in config['SUDO']: aPlugin['function'](msg, cmd, config["LANG"]) else: api.sendMessage(chat_id=chat_id, text=lang('sudo_not', 'main', sudo=True)) elif (msg_from_id in config['SUDO']) or (config['MAINTENACE'] == False): try: resp = aPlugin['function'](msg, cmd, config["LANG"]) except Exception as err: utils.log_( api.sendAdmin(text=lang( 'plugin_err', 'main', sudo='True').format( msg['text'], err))['result']['text']) else: if (resp != None) and (resp != False): api.sendMessage(chat_id=chat_id, text=resp, parse_mode="HTML") break
def msg_receive_(msg): msg_from_id = msg['from']['id'] chat_id = msg['chat']['id'] if config.Sys['viewer_shell'] == True: viewer_(msg) if time_atual_(msg['date']) > 10: return flask.Response(status=200) if not "text" in msg: msg['text'] = msg['action'] for aPlugin in plugins: for patterns in aPlugin['patterns']: if re.search(patterns, msg['text'], re.IGNORECASE): matches = re.search(patterns, msg['text'], re.IGNORECASE) if (msg_from_id in config.Sys['sudo'][0]) or (config.Sys['maintenance'] == False): try: if aPlugin['sudo'] == True: if msg_from_id in config.Sys['sudo'][0]: resp = aPlugin['function']( msg, msg['text'].split(), msg['from']['language_code'][:2]) else: sendMessage(chat_id=chat_id, text=lang('sudo_not', 'main', sudo=True)) else: resp = aPlugin['function']( msg, msg['text'].split(), msg['from']['language_code'][:2]) except Exception as err: err_ = lang('plugin_err', 'main', sudo='True').format(msg['text'], err) sendAdmin(text=err_) print(err_) else: if resp != None and resp != False: sendMessage(chat_id=chat_id, text=resp, parse_mode="HTML") break
def handler_(): if request.method == 'GET': if request.path == "/webhook_int": requests.get(BOT['API'].format(token=BOT['token'],method='setWebhook'), params={"url": "{}/webhook".format(Sys['host']), 'max_connections': 1, "allowed_updates": json.dumps(["message", "edited_message", "callback_query"])}) return (lang('started_webhook', 'main', sudo='True'),200) elif request.method == 'POST': msg = request.get_json(silent=True, force=True) if request.path == "/webhook": from TelegramBOT import callback_query_, status_service_, forward_msg_, reply_caption_, pinned_message_, msg_media_, msg_receive_, log_ if Sys['debug_request'] == True: print(json.dumps(msg, indent=1)) if ('message' in msg) or ('callback_query' in msg) or ('edited_message' in msg): if ('callback_query' in msg): callback_query_(msg['callback_query']) elif ('edited_message' in msg): msg['message'] = msg['edited_message'] msg['edited_message'] = None elif ('message' in msg): msg_ = msg['message'] msg_['action'] = True msg_['text_action'] = True if 'text' in msg_: msg_['action'] = "###text" if ("migrate_from_chat_id" in msg_) or ("migrate_to_chat_id" in msg_): old = msg['chat']['id'] new = msg['migrate_to_chat_id'] log_(lang("migrate", "main", sudo=True)) return flask.Response(status=200) elif ('new_chat_member' in msg_) or ('left_chat_member' in msg_) or ('group_chat_created' in msg_): status_service_(msg_) elif ('forward_from' in msg_): forward_msg_(msg_) elif ('reply_to_message' in msg_): reply_caption_(msg_) elif ('pinned_message' in msg_): pinned_message_(msg_) elif ('photo' in msg_) or ('video' in msg_) or ('document' in msg_) or ('voice' in msg_) or ('audio' in msg_) or ('sticker' in msg_) or ('entities' in msg_): msg_media_(msg_) else: msg_receive_(msg_)
def plugins_(): global plugins from langs import lang plugins = [] global advanced, utility, entertainment advanced, update_advanced = values_plugin('advanced') plugins += advanced utility, update_utility = values_plugin('utility') plugins += utility entertainment, update_entertainment = values_plugin('entertainment') plugins += entertainment info = lang('info', 'plugin', sudo=True).format( infoplugins=len(plugins), infoutility=len(utility), infoupdate_utility=update_utility, infoentertainment=len(entertainment), infoupdate_entertainment=update_entertainment, infoadvanced=len(advanced), infoupdate_advanced=update_advanced) return info
def Function(msg, cmd, ln): return lang('about', ln)[0]['about_msg']
def init_(): print(lang('int', 'main', sudo='True').format(BOT['token'][:9]))