menma_uzumakie
@menma_uzumakie

Право писать команду только админу?

Как сделать так,чтобы право писать команды боту имел только админ
import telebot

bot = telebot.TeleBot('my_token')

joinedFile = open('D:\\ras_bot\\joined.txt', 'r')
joinedUsers = set()
for line in joinedFile:
	joinedUsers.add(line.strip())
joinedFile.close()


@bot.message_handler(commands=['sub'])
def startJoin(message):
	if not str(message.chat.id) in joinedUsers:
		joinedFile = open('D:\\ras_bot\\joined.txt', 'a')
		joinedFile.write(str(message.chat.id) + '\n')
		joinedUsers.add(message.chat.id)

@bot.message_handler(commands=['send'])
def mess(message):
	for user in joinedUsers:
		bot.send_message(user, message.text[message.text.find(' '):])

@bot.message_handler(commands=["start"])
def start(m, res=False):
    bot.send_message(m.chat.id, 'Я на связи')

bot.polling(none_stop=True, interval=0)
  • Вопрос задан
  • 646 просмотров
Решения вопроса 1
pin8
@pin8
Так же можно использовать как пример

admin_keyboard = telebot.types.ReplyKeyboardMarkup(True)
admin_keyboard.row(" Купить")
admin_keyboard.row("ℹ️ Изменить FAQ ")

user_keyboard = telebot.types.ReplyKeyboardMarkup(True)
user_keyboard.row(" Купить", "ℹ️ FAQ")

и потом с помощью reply_markup ты присваиваешь кто может использовать команду. Это либо admin_keyboard или же user_keyboard.row

так же с помощью команды ignor_command = ["ℹ️ Изменить FAQ ",] Ты запрещаешь использовать команду ["ℹ️ Изменить FAQ ",] user_keyboard.row

Примерно так выглядит код
admin_keyboard = telebot.types.ReplyKeyboardMarkup(True)
admin_keyboard.row(" Купить", "ℹ️ FAQ")
admin_keyboard.row("ℹ️ Изменить FAQ ")

user_keyboard = telebot.types.ReplyKeyboardMarkup(True)
user_keyboard.row(" Купить", "ℹ️ FAQ")
ignor_command = ["ℹ️ Изменить FAQ "]
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
makag
@makag
отвечать на команды только при условии, что отправитель - админ.
т.е. узнать свой телеграм id
и реагировать на команты если параметр сообщения ['message']['from']['id'] - равен вашему id
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы