- 20.06.2022
- 23 865
- 218
- 36
- Награды
- 10
- Пол
- Муж.
Репутация:
- Автор темы
- Администратор
- Модератор
- Команда форума
- #1
ЯП : Python
Модули : telegram
База : —
Бот может открывать тг, дискорд. Переходить в режим сна и выключать пк. Скрипт надо держать всегда включенным у себя на пк.
Модули : telegram
База : —
Бот может открывать тг, дискорд. Переходить в режим сна и выключать пк. Скрипт надо держать всегда включенным у себя на пк.
Python:
import os
import telegram
from telegram import InlineKeyboardButton, InlineKeyboardMarkup, KeyboardButton, ReplyKeyboardMarkup
from telegram.ext import Updater, CommandHandler, CallbackQueryHandler, CallbackContext, MessageHandler, Filters
TELEGRAM_API_TOKEN = ""
ADMIN_USER_ID =
telegram_path = None
discord_path = None
def start(update: telegram.Update, context: CallbackContext):
user_id = update.message.from_user.id
if user_id == ADMIN_USER_ID:
keyboard = [
[
InlineKeyboardButton("Открыть Telegram", callback_data="open_telegram"),
InlineKeyboardButton("Открыть Discord", callback_data="open_discord"),
],
[
InlineKeyboardButton("Включить режим сна", callback_data="sleep_mode"),
],
[
InlineKeyboardButton("Добавить путь до Telegram", callback_data="add_telegram_path"),
InlineKeyboardButton("Добавить путь до Discord", callback_data="add_discord_path"),
],
[
InlineKeyboardButton("Выключить ПК", callback_data="shutdown_pc"),
],
]
reply_markup = InlineKeyboardMarkup(keyboard)
update.message.reply_text("Выберите действие:", reply_markup=reply_markup)
else:
update.message.reply_text("Извините, у вас нет доступа к этому боту.")
def button_callback(update: telegram.Update, context: CallbackContext):
query = update.callback_query
user_id = query.from_user.id
if user_id != ADMIN_USER_ID:
query.answer(text="Извините, у вас нет доступа к этому боту.")
return
if query. == "open_telegram":
global telegram_path
if telegram_path:
os.startfile(telegram_path)
query.answer(text="Telegram запущен!")
else:
query.answer(text="Добавьте путь до Telegram.exe с помощью кнопки 'Добавить путь до Telegram'.")
elif query. == "open_discord":
global discord_path
if discord_path:
os.startfile(discord_path)
query.answer(text="Discord запущен!")
else:
query.answer(text="Добавьте путь до Discord.exe с помощью кнопки 'Добавить путь до Discord'.")
elif query. == "sleep_mode":
os.system("rundll32.exe powrprof.dll,SetSuspendState 0,1,0")
query.answer(text="Компьютер переведен в режим сна!")
elif query. == "add_telegram_path":
query.message.reply_text("Введите путь до Telegram.exe:")
context.user_data["add_telegram_path"] = True
elif query. == "add_discord_path":
query.message.reply_text("Введите путь до Discord.exe:")
context.user_data["add_discord_path"] = True
elif query. == "shutdown_pc":
os.system("shutdown /s /t 1")
query.answer(text="Компьютер будет выключен через 1 секунду.")
def message_callback(update: telegram.Update, context: CallbackContext):
if context.user_data.get("add_telegram_path"):
global telegram_path
telegram_path = update.message.text.strip()
if os.path.exists(telegram_path):
update.message.reply_text(f"Путь до Telegram.exe успешно сохранен: {telegram_path}")
else:
update.message.reply_text(f"Файл Telegram.exe не найден по указанному пути: {telegram_path}")
context.user_data["add_telegram_path"] = False
elif context.user_data.get("add_discord_path"):
global discord_path
discord_path = update.message.text.strip()
if os.path.exists(discord_path):
update.message.reply_text(f"Путь до Discord.exe успешно сохранен: {discord_path}")
else:
update.message.reply_text(f"Файл Discord.exe не найден по указанному пути: {discord_path}")
context.user_data["add_discord_path"] = False
def start(update: telegram.Update, context: CallbackContext):
user_id = update.message.from_user.id
if user_id == ADMIN_USER_ID:
keyboard = [
[
InlineKeyboardButton("Открыть Telegram", callback_data="open_telegram"),
InlineKeyboardButton("Открыть Discord", callback_data="open_discord"),
],
[
InlineKeyboardButton("Включить режим сна", callback_data="sleep_mode"),
],
[
InlineKeyboardButton("Добавить путь до Telegram", callback_data="add_telegram_path"),
InlineKeyboardButton("Добавить путь до Discord", callback_data="add_discord_path"),
],
]
reply_markup = InlineKeyboardMarkup(keyboard)
update.message.reply_text("Выберите действие:", reply_markup=reply_markup)
else:
update.message.reply_text("Извините, у вас нет доступа к этому боту.")
def button_callback(update: telegram.Update, context: CallbackContext):
query = update.callback_query
user_id = query.from_user.id
if user_id != ADMIN_USER_ID:
query.answer(text="Извините, у вас нет доступа к этому боту.")
return
if query. == "open_telegram":
global telegram_path
if telegram_path:
os.startfile(telegram_path)
query.answer(text="Telegram запущен!")
else:
query.answer(text="Добавьте путь до Telegram.exe с помощью кнопки 'Добавить путь до Telegram'.")
elif query. == "open_discord":
global discord_path
if discord_path:
os.startfile(discord_path)
query.answer(text="Discord запущен!")
else:
query.answer(text="Добавьте путь до Discord.exe с помощью кнопки 'Добавить путь до Discord'.")
elif query. == "sleep_mode":
os.system("rundll32.exe powrprof.dll,SetSuspendState 0,1,0")
query.answer(text="Компьютер переведен в режим сна!")
elif query. == "add_telegram_path":
query.message.reply_text("Введите путь до Telegram.exe:")
context.user_data["add_telegram_path"] = True
elif query. == "add_discord_path":
query.message.reply_text("Введите путь до Discord.exe:")
context.user_data["add_discord_path"] = True
def main():
updater = Updater(TELEGRAM_API_TOKEN)
dispatcher = updater.dispatcher
dispatcher.add_handler(CommandHandler("start", start))
dispatcher.add_handler(CallbackQueryHandler(button_callback))
dispatcher.add_handler(MessageHandler(Filters.text & (~Filters.command), message_callback))
updater.start_polling()
updater.idle()
if __name__ == '__main__':
main()
Последние темы в этом разделе:
- Скрипт сортировщик файлов
- Скрипт шаблон web приложения Django
- Скрипт рейтинг фильмов/сериалов
- Скрипт Telegram бот парсер товаров с Wildberries
- Скрипт Телеграм бот для анонимного общения
- Скрипт Telegram бот для распаковки архивов
- Слив сборник Телеграм Казино ботов (8 штук)
- Скрипт Телеграм бот автоказино mcduck casino
- Скрипт для слежки за инстаграм аккаунтом
- Скрипт Телеграм бот парсер новостей из habr в свой канал