Задать вопрос
  • В IOS в телеграмм боте удаляется ReplyKeyboardMarkup, что делать?

    InternetMaster
    @InternetMaster
    Интернет
    Недостаточно исходных данных. Прикрепи код, а также скрин iOS бота.
    Если бот стоит на сервере, можешь дать @username бота Telegram.
    Ответ написан
    Комментировать
  • Регистрация пользователя телеграм через код?

    InternetMaster
    @InternetMaster
    Интернет
    Если речь идет о регистрации совершенно нового пользователя с новым номером телефона, то официальных решений, к сожалению, Telegram не предоставляет.
    Ответ написан
    Комментировать
  • Не работает Telebot на Python?

    InternetMaster
    @InternetMaster
    Интернет
    Возможно, используется версия Python ниже 3.6.
    Ответ написан
    Комментировать
  • Как подключить уведомления о пополнении ЮМани в телеграмм бота?

    InternetMaster
    @InternetMaster
    Интернет
    Можно и webhook.
    Для этого надо обрабатывать запросы HTTP. Самое удобное Python - библиотека flask.
    Ответ написан
    Комментировать
  • Как реализовать такое через telebot и datetime?

    InternetMaster
    @InternetMaster
    Интернет
    Надо работать с базой данных. sqlite3 подойдет.
    После отправки сообщения ботом "готово" необходимо добавить об этом запись(если пользователь впервые в боте, или обновить запись если он уже отправлял запрос). Где table - название таблицы.

    sql = ('INSERT INTO table (user_id, date) VALUES (?, ?)')
    val = (str(message.chat.id), date) #date - Это ЧЧ:ММ в формате 24часовой системы. Не надо полную дату.
    cursor.execute(sql, val)
    db.commit()
    
    #Или обновить
    
    cursor.execute('UPDATE date  = "' + date + '" FROM table WHERE user_id = "' + str(message.chat.id) + '"')
    db.commit


    Потом, после каждой команды пользователя "отправить" скрипт будет сверять значение с предыдущим, и если разница более 1 часа, то бот будет отвечать "готово". Для этого надо вытащить предыдущее значение с поиском по user_id. Чтобы не парится с id строчки, после проверки значение заменить на новое. Надеюсь, тут сам разберешься.
    Ответ написан
  • Как получать сообщения в переменную от бота?

    InternetMaster
    @InternetMaster
    Интернет
    Не могу разобрать формулировку. У вас есть бот в группе, с которого вы рассылаете сообщения?
    Тогда это надо перед отправкой сообщение взять.

    Если бот не ваш, а просто отправляет сообщения в вашу группу, и вам надо брать от него сообщения?
    Это нереализуемо. Так решил Telegram (Ссылка)
    Прежде, чем задавать вопрос, почитай документацию.

    EDIT. Можно, конечно делать это вручную. Но я так понял, что речь идет об автоматическом получении сообщения.
    Ответ написан
  • Во время произношения ассистент говорит "текст"None, как можно исправить?

    InternetMaster
    @InternetMaster
    Интернет
    Более неграмотный код я видел только в начале своего обучения Python.
    Зачем and в начале кода? Напиши просто
    if "привет" in message :
            say_message("Здравствуйте, хозяин! Рад снова вас видеть!")


    Спрашиваешь почему возвращает None, и при этом где целый код? Что означает operaclose(). Что это за переменная и зачем она нужна в ответе?

    Просто сделай проверку if-elif или if-else: Если действие выполнено, пиши что "Как пожелаете, мистер.". Если есть ошибка, то пиши "Действие не может быть исполнено, мистер".

    Такую блевотину я давно не видел.
    Ответ написан
    Комментировать
  • Как написать функцию чистки пользователей, которые заблокировали бота в Телеграм?

    InternetMaster
    @InternetMaster
    Интернет
    Нужно сделать массовую рассылку всем пользователям с моментальным удалением высланного сообщения. Реализовать try-except. В except прописать удаление из базы данных.
    Тебе готовый код нужен чтоли?
    Ответ написан
    Комментировать
  • Рассылка на telebot?

    InternetMaster
    @InternetMaster
    Интернет
    В Telegram нет функции отправки сообщения сразу всем пользователям. Поэтому необходимо хранить user_id всех пользователей. Если это уже есть, то реализуйте простейший механизм рассылки через sendMessage (согласно официальной документации Telegram)

    def rassilka(message):
        cursor.execute('SELECT id FROM login_id')
        result = cursor.fetchall()
        msg = '[Тут рассылаемое сообщение]'
        for x in result:
            bot.send_message(x[YOU_BD_NUMBER], str(msg))


    P.S. [YOU_BD_NUMBER] это номер стобца id в login_id начиная с 0. Если столбец всего 1 в login_id то написать result[0], если столбец идет вторым то result[1] и т.д.

    Также, пользователи могут заблокировать бота (выйти из него), в этом случае телеграм не доставит сообщение и оповестит об этом. Можно, например реализовать код который удаляет id из базы пользователей если им не удалось доставить сообщение. Так даже база обновится, и в ней будут актуальные пользователи.
    Ответ написан
  • Где учится созданию ботов на python?

    InternetMaster
    @InternetMaster
    Интернет
    Определись с библиотекой, в основном их 2:
    PyTelegramBotAPi
    AioGram

    Попробуй с начала с PyTelegramBotAPI.
    импортируй telebot в python.

    Ознакомься с оф. документацией Telegram
    Ответ написан
    Комментировать