Ответы пользователя по тегу Telegram
  • Как сделать опрос в котором могут участвовать только подписчики канала?

    @wintreist
    Сделать канал закрытым
    Ответ написан
    Комментировать
  • Как реализовать доступ к информации по паролю python bot?

    @wintreist
    Вот решение, для проверки на правильность логина\пароля. Предполагается, что вы либо разделите логин\пароль из одного сообщения, присланного боту пользователем. Либо будете получать пару логин\пароль из 2 сообщений.
    Код
    def NewValideLogin(DataBase):
        DataBase[input("Введите новый валидный логин: ")] = input("Введите пароль, для нового логина: ")
        return DataBase
    
    def RemoveLogin(DataBase):
        del DataBase[input("Введите логин, который нужно удалить: ")]
        return DataBase
    
    
    DataBase = {'Admin':'AdminKrasavhicIMolodec228', 'User':'12340987'}
    UserMessage1 = "Admin"
    UserMessage2 = "AdminKrasavhicIMolodec228"
    if UserMessage1 in DataBase:
        print('Логин засчитало')
        if UserMessage2 == DataBase[UserMessage1]:
            print('Пароль засчитало')
        else:
            print('Пароль не засчитало')
    else:
        print("Логин не засчитало")

    В приложенном коде есть 2 функции. Одна для добавления новых пар логина\пароля в список, другая для удаления из списка уже не нужных логинов и паролей.
    P.S: Обратите внимание, что при использовании этих функций, нужно переменную DataBase переписывать
    DataBase = NewValideLogin(DataBase)
    Ответ написан
  • Как отключить обработку инлайн-кнопок в телеграм-боте?

    @wintreist
    Не работал с данной библиотекой, но могу предложить решение, если его возможно реализовать.
    После того, как бот отправил последнее сообщение с его инлайн-кнопками, получите ID сообщения\ID инлайн кнопок из последнего сообщения или т.п.
    И сохраните в переменную (если это ID инлайн-кнопок, то в массив)
    При нажатии на инлайн-кнопку вашему боту должен идти запрос от кнопки, а значит и её Id, проверьте есть ли такой ID в списке последнего
    сообщения
    buttons_ID = [11,52,65]
    button_pressed_ID = 11
    if button_pressed_ID in buttons_ID:
        print("Кнопка нажата в последнем сообщении")
    else:
        print('Кнопка нажата не из последнего сообщения. Игнорим')

    Если при нажатии кнопки присылается ID сообщения, то проделываете ~тоже самое.
    ~тоже самое
    last_message_ID = 114415
    button_pressed_message_ID = 11
    if button_pressed_message_ID == last_message_ID:
        print("Кнопка нажата в последнем сообщении")
    else:
        print('Кнопка нажата не из последнего сообщения. Игнорим')
    Ответ написан
    Комментировать
  • Как выполнить такую конструкцию?

    @wintreist
    Ну, я думаю, лучше делать команды сразу закрытыми. Если вы хотите код получения сообщения из чата, то это не ко мне. Если умеете получать сообщение, присланное боту, то
    вот
    message = "Он не знает, или не тот chat id"
    if "или" in message: #"или" - секретный код идентификации
        print("Дать доступ, он знает код")

    chat ID по тому же принципу работает
    код
    chatIDs = [11,52,65]
    chatID = 3
    if chatID in chatIDs:
        print("Дать доступ, он из списка")
    else:
        print('Его нет в списках разрешенных')
    Ответ написан
    Комментировать