@Hary

Почему нет ответа от Телеграм бота?

Запускаю бота и... ничего не происходит. В чем может быть ошибка?

import telebot
import config
import random

from telebot import types

bot = telebot.TeleBot(config.TOKEN)

@bot.message_handler(command=['start'])
def welcome(message):
    sti = open('static/welcome.webp', 'rb')
    bot.send_sticker(message.chat_id, sti)

    # keayboard
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
    item1 = types.KeyboardButton("Рандомное число")
    item2 = types.KeyboardButton("Как дела?")

    markup.add(item1, item2)

    bot.send_message(message.chat.id, "Добро пожаловать, {0.first_name}!\nЯ - <b>{1.first_name}</b>, тот самый бот".format(message.from_user, bot.get_me()),
    parse_mode='html', reply_markup=markup)

@bot.message_handler(content_types=['text'])
def melasa(message):
    if message.chat.type == "private":
     if message.text == "Рандомное число":
         bot.send_message(message.chat.id, str(random.randint(0,100)))
    elif message.text == "Как дела?":
        bot.send_message(message.chat.id, "Отлично, как сам?") 
    else:
        bot.send_message(message.chat.id, "Я не знаю что ответить")

# RUN
bot.polling(none_stop=True)
  • Вопрос задан
  • 103 просмотра
Решения вопроса 1
Da222
@Da222
Причины ошибок на строках: 8, 10, 11, 23 (если смотреть на мой код).
Скопируй мой код и вставь его себе

import telebot
import random

from telebot import types

bot = telebot.TeleBot("твой токен(скопируй его из config и вставь сюда")

@bot.message_handler(commands=['start']) # не добавил "s" к "commads", и из-за этого вышло "command"
def welcome(message):
    sti = open('static/welcome.webp', 'rb') # нет файла со стикером (скачай или убери отправку стикера)
    bot.send_sticker(message.chat.id, sti) # ты написал "message.chat_id", когда надо "message.chat.id" 

    # keyboard
    markup = types.ReplyKeyboardMarkup(resize_keyboard=True)
    item1 = types.KeyboardButton("Рандомное число")
    item2 = types.KeyboardButton("Как дела?")
    markup.add(item1, item2)

    bot.send_message(message.chat.id, "Добро пожаловать, {0.first_name}!\nЯ - <b>{1.first_name}</b>, тот самый бот".format(message.from_user, bot.get_me()),parse_mode='html', reply_markup=markup)

@bot.message_handler(content_types=['text'])
def melasa(message):
    if message.chat.type == "private": # условия снизу не были в теле
        if message.text == "Рандомное число":
            bot.send_message(message.chat.id, str(random.randint(0,100)))
        elif message.text == "Как дела?":
            bot.send_message(message.chat.id, "Отлично, как сам?") 
        else:
            bot.send_message(message.chat.id, "Я не знаю что ответить")

# RUN
bot.polling(none_stop=True)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы