def copy_message(client: Client, cid: int, fid: int, mid: int) -> Union[bool, Message, None]: # Copy message of any kind result = None try: result = client.copy_message(chat_id=cid, from_chat_id=fid, message_id=mid, disable_notification=True) except FloodWait as e: logger.warning( f"Forward message from {fid} to {cid} - Sleep for {e.x} second(s)") raise e except (ChannelInvalid, ChannelPrivate, ChatAdminRequired, MessageIdInvalid, PeerIdInvalid): return False except Exception as e: logger.warning(f"Forward messages error: {e}", exc_info=True) return result
def atck(client, message): global Banner global attacker, delay_each_atk, delay_time msg = "**افراد گاییده شده:**\n" if Banner == {}: client.send_message( message.chat.id, 'با کدوم تبر بریم جنگ؟ با دستور **Set** تبرتو ثبت کن!') else: attacker = True delayer = 0 success = 0 rounds = 0 client.send_message(message.chat.id, texts[1]) if message.reply_to_message: users = [ i for i in message.reply_to_message.text.split() if '@' in i ] for member in users: msg = f"start for {member}:\n" mesg = app.send_message(message.chat.id, msg) for acc in accs: accunt = Client(accs[acc][2], accs[acc][0], accs[acc][1]) accunt.start() if attacker == True: try: accunt.copy_message(member, Banner['chat'], Banner['message']) success += 1 delayer += 1 msg += f"{acc} \n" mesg.edit_text(msg) except Exception as e: try: if "[420 FLOOD_WAIT_X]" in str(e): app.send_message( message.chat.id, f" {str(e)[30:33]} ثانیه تاخیر در جنگ " ) sleep(int(str(e).split()[5])) elif "[403 CHAT_WRITE_FORBIDDEN]" in str(e): app.send_message( message.chat.id, f"{member} کونشو گزاشت کف جنگو فرار کرد" ) elif "[400 USERNAME_NOT_OCCUPIED]" in str(e): app.send_message( message.chat.id, f"آیدی {member} منتظر قفل شدن است❌!") elif "[400 USERNAME_INVALID]" in str(e): app.send_message( message.chat.id, f"{member} این آیدی کصشره خوشم نیومد") elif "[400 PEER_FLOOD]" in str(e): app.send_message( message.chat.id, f"اکانت {acc} در اتک به {member} به دلیل ریپورت شدن به مشکل برخورد" ) break else: app.send_message( message.chat.id, f"not ok for {member} because {e}") except: pass if delayer == delay_each_atk: sleep(delay_time) delayer = 0 else: return try: pass except: pass rounds += 1 client.send_message( message.chat.id, '''اتک به پایان رسید : به {} نفر {} بار اتک زده شد ({} دور)'''.format(len(users), success, rounds)) attacker = False
def attack(client, message): global Banner global attacker, delay_each_atk, delay_time msg = "**افراد گاییده شده:**\n" if Banner == {}: client.send_message(message.chat.id, 'Bᴀ Dᴀsᴛᴏʀᴇ **Set** Yᴇ Bᴀɴɴᴇʀ Sᴀʙᴛ Kᴏɴ😐') else: attacker = True delayer = 0 success = 0 rounds = 0 client.send_message(message.chat.id, texts[1]) if message.reply_to_message: users = [ i for i in message.reply_to_message.text.split() if '@' in i ] for acc in accs: accunt = Client(accs[acc][2], accs[acc][0], accs[acc][1]) accunt.start() mesg = accunt.send_message(message.chat.id, msg) for member in users: if attacker == True: try: accunt.copy_message(member, Banner['chat'], Banner['message']) success += 1 delayer += 1 msg += f"{member} \n" mesg.edit_text(msg) except Exception as e: try: if "[420 FLOOD_WAIT_X]" in str(e): app.send_message( message.chat.id, f" {str(e)[30:33]} Sᴀɴɪʏᴇ Tᴀᴋʜɪʀ Dᴀʀ Hᴀᴍʟᴇ! " ) sleep(int(str(e).split()[5])) elif "[403 CHAT_WRITE_FORBIDDEN]" in str(e): app.send_message( message.chat.id, f"{member} کیرمو خورد و رفت") elif "[400 USERNAME_NOT_OCCUPIED]" in str(e): app.send_message( message.chat.id, f"ID {member} Mᴏɴᴛᴢᴇʀᴇ Qᴏғʟ Sʜᴏᴅɴ Asᴛ!🚷" ) elif "[400 USERNAME_INVALID]" in str(e): app.send_message( message.chat.id, f"{member} این آیدی کصشره خوشم نیومد") elif "[400 PEER_FLOOD]" in str(e): app.send_message( message.chat.id, f"اکانت {acc} در اتک به {member} به دلیل ریپورت شدن به مشکل برخورد" ) break else: app.send_message( message.chat.id, f"not ok for {member} because {e}") except: pass if delayer == delay_each_atk: sleep(delay_time) delayer = 0 else: return try: app.send_message( message.chat.id, f"Gᴏʀɢ {acc} Lɪsᴛ Rᴏ Bᴀ Mᴏᴠᴀғǫɪʏᴀᴛ Tᴀᴍᴏᴍ Kᴀʀᴅ😈") except: pass rounds += 1 client.send_message( message.chat.id, '''اتک به پایان رسید : به {} نفر {} بار اتک زده شد ({} دور)'''.format(len(users), success, rounds)) attacker = False