import telebot
import random as r
# Указываем токен API нашего бота
bot = telebot.TeleBot("")
CHAT_ID = 12345678 # твой id
# команда /start
@bot.message_handler(commands=['start'])
def start(message):
bot.send_message(message.chat.id, f"message")
# команда /help
@bot.message_handler(commands=['help'])
def help(message):
bot.send_message(message.chat.id, f"help")
# Обработчик сообщений от пользователей
@bot.message_handler(content_types=['text'])
def mess_handler(message):
texts = [
"да",
"нет",
"возможно",
"не знаю"
]
answ = r.choice(texts)
bot.send_message(CHAT_ID, # отчет админу
f"от: @{message.from_user.username}\n"
f"Вопрос: {message.text}\n"
f"Ответ: {answ}"
)
bot.send_message(message.chat.id, answ) # ответ юзеру
# Запускаем бота
bot.polling(none_stop=True, interval=0)
# Обработчик сообщений от пользователей
@bot.message_handler(content_types=['text'])
def mess_handler(message):
texts = [
"да",
"нет",
"возможно",
"не знаю"
]
answ = r.choice(texts)
bot.send_message(CHAT_ID, # отчет админу
f"от: @{message.from_user.username}\n"
f"Вопрос: {message.text}\n"
f"Ответ: {answ}"
)
bot.send_message(message.chat.id, answ) # ответ юзеру
юзер: привет!
бот: привет!
ю: 123
б: 123
ю: У меня будет собака?
б: У меня будет собака?
import telebot
import random as r
# Указываем токен API нашего бота
bot = telebot.TeleBot("")
CHAT_ID = 1234567890 # твой id
# команда /start
@bot.message_handler(commands=['start'])
def start(message):
bot.send_message(message.chat.id, f"message")
# команда /help
@bot.message_handler(commands=['help'])
def help(message):
bot.send_message(message.chat.id, f"help")
# Обработчик сообщений от пользователей
@bot.message_handler(content_types=['text'])
def mess_handler(message):
texts = [
"текст первый",
"текст второй",
"текст 3",
"и так далее"
]
bot.send_message(CHAT_ID, r.choice(texts))
# Запускаем бота
bot.polling(none_stop=True, interval=0)
@bot.message_handler(commands=['command'])
def command_cmd(message):
pass
- message.from_user.id
+ message.chat.id
CHAT_ID = id # твой id
откуда ты взял id?# code
else:
CHAT_ID = id # твой id
texts = [
"текст первый",
"текст второй",
"текст 3",
"и так далее"
]
-bot.send_message(CHAT_ID, r.choice(texts))
+ bot.send_message(CHAT_ID, r.choice(texts))
очень интересный блок кода, зачем он тут? И не менее интересный комментарий...# Обработчик сообщений от пользователей CHAT_ID = id # твой id bot.send_message(CHAT_ID, "text")
messages = []
@bot.message_handler(commands=['start'])
def start(message):
# какой-то код который не надо повторять 200 раз
msgs(message)
def msgs(message):
m = bot.send_message(message.chat.id, f"Отправляй сообщения, когда закончишь - пиши /stop")
bot.register_next_step_handler(m, msgs1)
def msgs1(message):
if message.text != '/stop':
messages.append(message.text)
msgs(message)
else:
bot.send_message(message.chat.id, f'Ты навводил:\n\n'+"\n".join(messages))
buttons = types.ReplyKeyboardMarkup(resize_keyboard=True)
done = types.KeyboardButton("готово")
main_menu = types.KeyboardButton("вернутся в главное меню")
buttons.add(done)
buttons.add(main_menu)
mess = 'Я вас не понял. Нажмите "Готово", если вы добавили бота на ваш канал с правами администратора или же' \
' вернитесь в главное меню но тогда канал удалится из списка!'
msg_bot = bot.send_message(msg.chat.id, mess, reply_markup=buttons)
bot.register_next_step_handler(msg_bot, check_admin_bot_in_channel)
def check_admin_bot_in_channel(msg):
if message.text == 'готово': ...
elif msg.text == 'в главное меню':
added_channels -= 1
del id_list_channel[-1]
del name_list_channel[-1]
kb = StartKB()
mess = 'Вы вернулись в главное меню.'
bot.send_message(call.message.chat.id, mess, reply_markup=kb)
def buttons(markup:list[list[str]]) -> types.ReplyKeyboardMarkup:
buttons = types.ReplyKeyboardMarkup(resize_keyboard=True)
for row in markup:
buttons.add(*[types.KeyboardButton(name) for name in row])
return buttons
bot.send_message(CHAT_ID, 'text', reply_markup=buttons([['сверху слева', 'сверху справа'], ['снизу']]))
self.none может быть что угодно, у меня стоит
~