• Как лучше сделать бота в телеграме?

    AlexNest
    @AlexNest
    Работаю с Python/Django
    От моего сервера запрос идет... эээ, либо боту на мой сервер, либо на api.telegram.org?

    Не работал с TG-ботами, но знаю, что их можно писать с использованием Flask, который в свою очередь является веб-фреймворком, написанном на python. Следовательно "сигналы" из игры можно реализовать путем отправки http-запросов на flask.
    Вот пример на хабре.
    По поводу вопросов:
    1.В целом - +/- вменяемая.
    2.Да, по идее - циклом.
    3.Маловероятно. Все-таки ТГ довольно популярный мессенджер и 100 пользователей это ни о чем.
    4.В общем случае - оптимальным вариантом будет аренда VDS. Телеграмм сервера не предоставляет, насколько я знаю. По поводу Local Bot API не знаю.
    5.Оптимальный вариант - сохранять их в базу данных. Id`шники пользователей получаются сразу-же при первом взаимодействии с ботом. Как получить id групп не знаю. Возможно есть событие вроде on_join, которое срабатывает при приглашении бота. Не уверен, что оно есть - смотрите в доках. Если его не будет, нужно заставить реагировать на пользовательскую команду.
    upd: Да, как написали в коментах - единый канал будет в разы проще с точки зрения реализации.
    Ответ написан
    Комментировать
  • Почти роли в Python с Flask-Login. Как ограничить доступ к одной странице для всех, кроме одного пользователя с id 5?

    @kurrbanov
    Пишу бэкенд на Питоне
    if User.query.get(5):
    Это условие просто проверит наличие админа в БД.

    А нужно провеять id текущего пользователя.
    from flask_login import login_required, current_user
    
    @app.route('/secret_page')
    @login_required
    def secret_page():
        if current_user.get_id() == 5:
            return render_template('test.html',  title='Страница',)
        return redirect(url_for('index'))
    Ответ написан
    1 комментарий
  • Как сохранить в переменную сообщение пользователя в телеграмме?

    @pr0l
    используй классы и сохраняй.
    class Info:
        def __init__(self, phname):
            self.phname = phname
            self.rndnumber = None
            self.tdn = None
    
    
    Info.tnumber1 = message.text


    Тут в примере с register_next_step_handler есть класс который сохраняет данные
    https://github.com/eternnoir/pyTelegramBotAPI/blob...
    Ответ написан
    2 комментария