def loli(bot, update, args, session): logger.info("Ricevuto comando loli da: %s con parametri %s", update.message.from_user.username, ' '.join(args)) data = models.registerUpdate(session, update) if len(args) > 0: try: count = int(args[0]) logger.info("Richiesto invio di %i immagini con parametro %s", count, ' '.join(args[1:])) if 0 < count <= 10 and checkPermission( data['user'], 4, chat=data['chat']): param = ' '.join(args[1:]) if not '' else None for i in range(0, count): sendImage(update, models.Session(), param) else: logger.info( "Numero di immagini oltre il limite o mancanza di permessi" ) except ValueError: param = ' '.join(args) logger.info("Richiesta loli con parametro di ricerca: %s", param) sendImage(update, session, param) else: sendImage(update, session)
def voice(bot, update, args, session): logger.info("Ricevuto comando save_audio da: %s", update.message.from_user.username) args = ' '.join(args) data = models.registerUpdate(session, update) if not checkPermission(data['user'], 3, data['chat']): update.message.reply_text( "Non hai i permessi per usare questo comando", quote=False) return if update.message.reply_to_message is None: update.message.reply_text( "Utilizzare il comando save_voice in risposta ad un messagio vocale per salvarlo", quote=False) return if update.message.reply_to_message.voice is None: update.message.reply_text("Non è presente un messaggio vocale", quote=False) return if args is None or args is '': update.message.reply_text( "Non è presente il comando con cui salvare il messaggio vocale", quote=False) return if save_voice(session, update.message.reply_to_message.voice, data['chat'], args): update.message.reply_text("Messaggio vocale salvato con comando '%s'" % args, quote=False) else: update.message.reply_text("Creazione del comando %s" % args, quote=False)
def restart(bot, update, session): logger.info("Ricevuto comando restart da: %s", update.message.from_user.username) data = models.registerUpdate(session, update) if checkPermission(data['user'], 2): logger.info("Riavvio del bot") bot.send_message(update.message.chat_id, "Riavvio del bot...") time.sleep(0.2) os.execl(sys.executable, sys.executable, *sys.argv)
def commands(bot, update, session): logger.info("Ricevuto comando commands da: %s", update.message.from_user.username) data = models.registerUpdate(session, update) if checkPermission(data['user'], 1): items = COMMANDS.items() text = "" for item in items: text += item[0] + " - " + item[1] + "\n" update.message.reply_text(text, quote=False)
def chatId(bot, update, session): logger.info("Ricevuto comando chatId da: %s", update.message.from_user.username) data = models.registerUpdate(session, update) #if update.message.from_user.id == OWNER: if checkPermission(data['user'], 2, chat=data.chat): update.message.reply_text("Chat ID: " + str(update.message.chat_id), quote=False) else: update.message.reply_text( "Scusa onii-san, ma non hai i permessi per usare questo comando :(", quote=False)
def echo(bot, update, session): data = models.registerUpdate(session, update) if update.channel_post != None: logger.info("Ricevuto post dal canale: [%s]", str(update.channel_post.chat_id)) if update.channel_post.chat_id == CHANNEL: logger.info( "Messaggio ricevuto dal canale, inoltro nel fangroup con citazione" ) update.channel_post.forward(FANGROUP) else: logger.info("Ricevuto testo da: %s [%s]", update.message.from_user.username, str(update.message.from_user.id)) if checkPermission(data['user'], 3): logger.info("Messaggio ricevuto dall'owner, inoltro nel fangroup") mess = update.message if mess.sticker != None: bot.sendSticker(chat_id=FANGROUP, sticker=mess.sticker.file_id) elif mess.video != None: bot.sendVideo(chat_id=FANGROUP, video=mess.video.file_id, duration=mess.video.duration, caption=mess.caption) elif mess.voice != None: bot.sendVoice(chat_id=FANGROUP, voice=mess.voice.file_id, duration=mess.voice.duration, caption=mess.caption) elif mess.audio != None: bot.sendVoice(chat_id=FANGROUP, audio=mess.audio.file_id, duration=mess.audio.duration, caption=mess.caption, performer=mess.audio.performer, title=mess.audio.title) elif mess.photo: bot.sendPhoto(chat_id=FANGROUP, photo=mess.photo[0].file_id, caption=mess.caption) elif mess.document != None: bot.sendDocument(chat_id=FANGROUP, document=mess.document.file_id, file_name=mess.document.file_name, caption=mess.caption) elif mess.text != '': bot.sendMessage(chat_id=FANGROUP, text=mess.text, parse_mode="markdown") else: logger.warning("Messaggio invalido ricevuto dall'owner")
def ilaria(bot, update, args, session): logger.info("Ricevuto comando ilaria da: %s", update.message.from_user.username) args = ' '.join(args) data = models.registerUpdate(session, update) if checkPermission(data['user'], 3, data['chat']): logger.info("Permessi validi, esecuzione del comando") if args: voice = session.query(models.Voice).filter_by( command=args).order_by(func.random()).first() else: voice = session.query(models.Voice).order_by(func.random()).first() if voice: update.message.reply_voice(voice=voice.file_id, duration=voice.duration, quote=False) else: update.message.reply_text("Nessun audio trovato con comando '%s'" % args) else: logger.info("Permesso negato")