Задать вопрос

Как указать порт для телеграм бота?

Пытаюсь осваивать создание ботов для телеграмм, и если в целом написание кода на питоне проблем не доставляет, да и с основами безопасности разобрался: спрятал персональные данные в переменные среды. Но вот при деплое столкнулся с нехваткой знаний.
Итак, код написан, с локальной машины запускается, аккаунт на гитхабе завел, репозитарий создал. Хостится решил на render.com, связал учетки гитахаба и рендера, казалось бы все супер, работает. Но не долго, wtf? Тут какие то порты... =D
В итоге бот отваливается по таймауту.
Я конечно изучаю документацию про порты на рендере, но пока слабо понимаю о чем речь. Да и в целом про модель osi обладаю лишь общими знаниями.

68904b0e2caca624619845.jpeg
68904b1cbcf38618489904.jpeg

Для деплоя выбран эхо-бот помогающий принять сложные решения))

from dotenv import load_dotenv
import os
import json
import random
import telebot
import time

load_dotenv()

API_Token=(os.getenv('API_TOKEN'))
print(os.getenv('start_message')) #контроль запуска бота на локальной машине.

bot = telebot.TeleBot(API_Token)

answers = [
    "Да", "Нет", "Возможно", "Вероятнее всего", "Сомневаюсь", "Определенно нет",
    "Конечно", "Маловероятно", "Сложно сказать", "Скорее всего да"
]

@bot.message_handler(content_types=['text'])
def send_prediction(message):
    bot.send_chat_action(message.chat.id, 'typing')
    time.sleep(1)
    prediction = random.choice(answers)
    bot.reply_to(message, prediction)

bot.infinity_polling()

Возможно вместо infinity_polling() стоит использовать webhook, решит ли это проблему? При праивльной настройки вебхук конечно)
  • Вопрос задан
  • 33 просмотра
Подписаться 1 Простой 1 комментарий
Пригласить эксперта
Ваш ответ на вопрос

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

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