Ejemplo n.º 1
0
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
Ejemplo n.º 2
0
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
Ejemplo n.º 3
0
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_)
Ejemplo n.º 4
0
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
Ejemplo n.º 5
0
def Function(msg, cmd, ln):
    return lang('about', ln)[0]['about_msg']
Ejemplo n.º 6
0
def init_():
	print(lang('int', 'main', sudo='True').format(BOT['token'][:9]))