• Как изменить название кнопки с командой shell?

    @smokedevil666 Автор вопроса
    Вот сам код :

    #!/usr/bin/env python3
    import time
    from datetime import timedelta
    import datetime
    import os
    import sys
    from subprocess import check_output
    import telebot
    from telebot import types #Импорт кнопок
    import config #Конфиг с Токеном и id
    from datetime import datetime
    from datetime import date
    #BotInfo
    d = time.localtime()
    current_date = time.strftime("Время запуска : %H:%M:%S\nДата запуска : %d-%m-%Y", d)

    #commands = { "Нажми": "python3 /home/toor/zabb.py" }

    bot = telebot.TeleBot(config.token) #Токен
    user_id = config.id #id group

    ### Функция проверки авторизации
    def autor(chatid):
    strid = str(chatid)
    for item in config.users:
    if item == strid:
    return True
    return False
    #start
    @bot.message_handler(commands=['start'])
    def start(message):
    if autor(message.chat.id):
    cid = message.chat.id
    message_text = message.text
    user_id = message.from_user.id
    user_name = message.from_user.first_name
    t = time.localtime()
    current_time = time.strftime("Текущее время : %H:%M:%S\nДата : %d-%m-%Y", t)
    bot.send_message(message.chat.id, current_time)
    keyboard = types.InlineKeyboardMarkup() #Время запуска
    callback_button = types.InlineKeyboardButton(text="Посмотреть", callback_data="1") #Время запуска
    keyboard.add(callback_button) #Время запуска
    bot.send_message(message.chat.id, "Когда в последний раз был запущен бот ?!", reply_markup=keyboard) #Время запуска
    keyboard = telebot.types.ReplyKeyboardMarkup(resize_keyboard=True) #Сворачиваем клавиатуру с кнопками
    keyboard.row('/bot')
    bot.send_message(message.chat.id, '' + user_name + ', Рад тебя видеть!\nНажми /bot - что бы начать диалог с этим ушлёпком', reply_
    else:
    bot.send_message(message.chat.id, 'Тебе сюда нельзя. Твой ID: ' + str(message.chat.id))
    bot.send_sticker(message.chat.id, 'CAACAgIAAxkBAAEDh3RhwOgjULsyeCuvZqvUPDKL_bCknQACnxEAAgig0El5jitDd8qliSME')

    @bot.message_handler(commands=config.bot)
    def start_bot(message):
    keyboard = telebot.types.ReplyKeyboardMarkup(resize_keyboard=True) #Сворачиваем клавиатуру с кнопками '/Помоги'
    keyboard.row('/памагити-памагити')
    keyboard.row('/мамкин_хацкер')
    bot.send_message(message.chat.id, 'Что ты хочешь от меня, смертный?!', reply_markup=keyboard)
    bot.send_sticker(message.chat.id, 'CAACAgIAAxkBAAEDh2thwOU_BO4tcs8FWTCIOYCWE66PPQAC-hAAAqHHKEg5ZXbrk1gHoyME')
    keyboard = types.InlineKeyboardMarkup() #Шпора
    callback_button = types.InlineKeyboardButton(text="Открыть", callback_data="2") #Шпора
    keyboard.add(callback_button) #Шпора
    bot.send_message(message.chat.id, "Шпоргалка", reply_markup=keyboard) #Шпора
    keyboard = types.InlineKeyboardMarkup() #test
    callback_button = types.InlineKeyboardButton(text="Открыть", callback_data="3") #test
    keyboard.add(callback_button) #test
    bot.send_message(message.chat.id, "Хосты сети", reply_markup=keyboard) #test

    ###############Команды бота##################
    @bot.message_handler(commands=config.help)
    def send_what(message):
    keyboard = telebot.types.ReplyKeyboardMarkup(resize_keyboard=True) #Сворачиваем клавиатуру с кнопками '/Помоги'
    keyboard.row('/мамкин_хацкер')
    bot.send_message(message.chat.id, 'Подожди .... Я ... Ищу ...')
    bot.send_sticker(message.chat.id, 'CAACAgIAAxkBAAEDieJhwwUdWo-cYxSr_appBJAnGTixVwAC1BEAA8CgSXknAeKPK_QMIwQ')
    time.sleep(4)
    sent = bot.send_message(message.chat.id, 'Нашёл всё то,что ты успел набросать в своём блокноте')
    #callback_query

    @bot.callback_query_handler(func=lambda call: True)
    def callback_inline(call):
    # Если сообщение из чата с ботом
    if call.message:
    if call.data == "1":
    bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text='Время запуска бота')
    time.sleep(2)
    bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=current_date)
    if call.data == "2":
    bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text='Тут записаны команды\nНе благодар$
    time.sleep(4)
    bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=config.com)
    if call.data == "3":
    bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text='Тут записаны команды\nСкопируй и $
    time.sleep(4)
    bot.edit_message_text(chat_id=call.message.chat.id, message_id=call.message.message_id, text=config.hosts)

    #Shell
    @bot.message_handler(content_types=['text'])
    def main(message):
    # if (user_id == message.chat.id): #проверяем, что пишет именно владелец
    comand = message.text #текст сообщения
    markup = types.InlineKeyboardMarkup() #создаем клавиатуру
    button = types.InlineKeyboardButton(text="Повторить", callback_data=comand) #создаем кнопку
    markup.add(button) #добавляем кнопку в клавиатуру
    try: #если команда невыполняемая - check_output выдаст exception
    bot.send_message(message.chat.id, check_output(comand, shell = True))
    except:
    bot.send_sticker(message.chat.id, "CAACAgIAAxkBAAEDielhwwh03KD3WbZOrLlk_l4znJOmcwACWQADQbVWDFwGcdsFH9eeIwQ") #если команда некорре$

    @bot.callback_query_handler(func=lambda call: True)
    def callback(call):
    comand = call.data #считываем команду из поля кнопки data
    try: #если команда не выполняемая - check_output выдаст exception
    markup = types.InlineKeyboardMarkup() #создаем клавиатуру
    button = types.InlineKeyboardButton(text="Повторить", callback_data=comand) #создаем кнопку и в data передаём команду
    markup.add(button) #добавляем кнопку в клавиатуру
    bot.send_message(user_id, check_output(comand, shell = True), reply_markup = markup) #вызываем команду и отправляем сообщение с рез$
    except:
    bot.send_sticker(user_id, "CAACAgIAAxkBAAEDielhwwh03KD3WbZOrLlk_l4znJOmcwACWQADQbVWDFwGcdsFH9eeIwQ") #если команда некорректна

    if __name__ == '__main__':
    while True:
    try: #добавляем try для бесперебойной работы
    bot.polling(none_stop=True) #запуск бота
    except:
    time.sleep(10) #в случае падения
  • Как изменить название кнопки с командой shell?

    @smokedevil666 Автор вопроса
    Vindicar, Я так понял что это просто не реально...
    Есть ли другой способ отправить сообщение боту например - Покажи
    И он запускал бы мой другой скрипт, который отправлял бы на сервер запрос с командой, а бот перехватывал ответ и отправлял в чат сообщением?
  • Как изменить название кнопки с командой shell?

    @smokedevil666 Автор вопроса
    Vindicar, Я мог изменить, написав в коде для кнопки вместо Нажми саму команду тогда в кнопке надпись изменялась на Нажми, но смысла в этом нет, так как при нажатии на кнопку нажми, сообщение в чат уходило именно Нажми, а не команда
  • Как изменить название кнопки с командой shell?

    @smokedevil666 Автор вопроса
    Vindicar, С созданием кнопки проблем то и не было)
  • Как изменить название кнопки с командой shell?

    @smokedevil666 Автор вопроса
    Неа, не сработало... появляется так же надпись в кнопке с командой а не с названием кнопки, получается я по сути переменную принял только в скрипте
  • Как изменить название кнопки с командой shell?

    @smokedevil666 Автор вопроса
    О!!! Благодарю!))
    Сейчас попробую, но по логике уже видно что должно сработать)
  • Как изменить название кнопки с командой shell?

    @smokedevil666 Автор вопроса
    Vindicar, Это то понятно)
    Просто как сделать что то вроде alias в python?
    допустим написать что то вроде:

    python3 /home/toor/zabb.py='Нажми"

    keyboard.row('Нажми')
  • Как подключить базу данных Zabbix к Telegram боту?

    @smokedevil666 Автор вопроса
    Всё равно не пойму