@DavidPythonist

Как сделать так чтобы бот отправлял сообщение пользователя его автору?

import telebot
import random as r
   
# Указываем токен API нашего бота
bot = telebot.TeleBot("")
   
@bot.message_handler(content_types=['text'])
def get_text_messages(message):
   if message.text == "/start":
      bot.send_message(message.from_user.id, "")
   elif message.text == "/help":
      bot.send_message(message.from_user.id, "")
   else:
      
      q = r.random()
      a = 0
      if q > 0.9:
         a = 9
      elif q < 0.9 and q > 0.8:
         a = 8
      elif q < 0.8 and q > 0.7:
         a = 7
      elif q < 0.7 and q > 0.6:
         a = 6
      elif q < 0.6 and q > 0.5:
         a = 5
      elif q < 0.5 and q > 0.4:
         a = 4
      elif q < 0.4 and q > 0.3:
         a = 3
      elif q < 0.3 and q > 0.2:
         a = 2
      elif q < 0.2 and q > 0.1:
         a = 1
      elif q < 0.1 and q > 0:
         a = 0

      if a == 1:
         bot.send_message(message.from_user.id, "")
      elif a == 2:
         bot.send_message(message.from_user.id, "")
      elif a == 3:
         bot.send_message(message.from_user.id, "")
      elif a == 4:
         bot.send_message(message.from_user.id, "")
      elif a == 0:
         bot.send_message(message.from_user.id, "")
      elif a == 5:
         bot.send_message(message.from_user.id, "")
      elif a == 6:
         bot.send_message(message.from_user.id, "")
      elif a == 7:
         bot.send_message(message.from_user.id, "")
      elif a == 8:
         bot.send_message(message.from_user.id, "")
      elif a == 9:
         bot.send_message(message.from_user.id, "")

   
# Обработчик сообщений от пользователей
@bot.message_handler(func=lambda message: True)
def handle_all_messages(message):
   bot.send_message(chat_id=, text=message.text)
   
# Запускаем бота
bot.polling(none_stop=True, interval=0)

Хочу сделать бота который отвечает на любой вопрос, ответ на который "да" или "нет" (весь текст, токен и chat_id я удалил), но при этом чтобы бот отправлял мне вопросы пользователей. Каждый раз у меня работает только одна часть кода, либо часть "гадалка", либо часть где бот отправляет мне сообщение, помогите пожалуйста решить мою проблему :)
  • Вопрос задан
  • 150 просмотров
Решения вопроса 1
RimMirK
@RimMirK
Вроде человек. Вроде учусь. Вроде пайтону
  1. Узнай свой id. Это можно сделать примерно так:
    # команда /id
    @bot.message_handler(commands=['id'])
    def id_cmd(message):
        bot.send_message(message.chat.id, 
                f"Твой id: `{message.from_user.id}`\n"
                f"id чата: `{message.chat.id}`", 
                parse_mode="MarkDown"
        )

  2. подставь этот айди при отправке:
    CHAT_ID = 1234567890 # твой id
    bot.send_message(CHAT_ID, "text")



генерировать можно (и нужно) сразу целые числа.
import random as r
print(r.randint(1, 11))
а в твоем случае лучше воспользоваться другим споcoбом.
random.choice(iterable) возвращает рандомный элемент из Итерируемого объекта
import random as r
CHAT_ID = 1234567890 # твой id
texts = [
    "текст первый",
    "текст второй",
    "текст 3",
    "и так далее"
]
bot.send_message(CHAT_ID, r.choice(texts))
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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