Ответы пользователя по тегу Telegram
  • Как объединить aiogram и pyrogram?

    InternetMaster
    @InternetMaster
    Интернет
    Насчет использования pyrogram для бота и как клиент уже подсказали, но если все же нужно - то советую смотреть в сторону синхронных версий pyrogram. В текущих версиях - такое не поддерживается. Нужно либо использователь telethon (sync версию) либо pyrogram прошлых версий, когда он ещё не был асинхронным
    Ответ написан
    Комментировать
  • Из-за чего вызывается ошибка?

    InternetMaster
    @InternetMaster
    Интернет
    Почему chat_id='' ?

    @dp.message_handler(commands=['start', 'help'])
    async def send_welcome(message: types.Message):
        user_channel_status = await bot.get_chat_member(chat_id=message.chat.id, user_id=message.from_user.id)
        await message.reply("Hi!\nI'm EchoBot!\nPowered by aiogram.")
    
        if user_channel_status["status"] != 'left':
            await message.reply("Hi!\nI'm EchoBot!\nPowered by aiogram.")
        else:
            await message.reply("Hi!\nI'm EchoBot!\nPowered by aiogram.")
    Ответ написан
    Комментировать
  • Как изменить инлайн клавиатуру telebot?

    InternetMaster
    @InternetMaster
    Интернет
    Возможно, тебя интересует edit_message_text, а не edit_message_reply_markup.
    Ответ написан
  • Как разослать сообщение к нескольким тысячям пользователям телеграм? И как собрать пользователей группы?

    InternetMaster
    @InternetMaster
    Интернет
    Для начала надо иметь username всех тех, кому ты хочешь отправить. Их надо спарсить с группы, но тут возможно есть нюанс, через бота это сделать возможно не получиться, ведь бот вроде бы может видеть только первых 200 человек. Но если группа посторонняя, то рассчитывать но то, что админы впихнут в группу твоего бота - не приходится.
    Надо через mtproto api взять все необходимые данные (username, а если его нет - ID и access_hash, если получится).

    Когда это будет, ты также через mtproto api будешь рассылать всем сообщение, но осторожно, за такое телеграм дает спам-блок.
    Есть также левые варианты, например создать группу, добавить туда всех этих людей и дать там одно сообщение, оно придет всем. Но один аккаунт не может пригласить больше 50 или 200 человек. Да и у некоторых функция приглашения в группы может быть отключена.
    Ответ написан
    3 комментария
  • Как настроить telebot на использование локального сервера?

    InternetMaster
    @InternetMaster
    Интернет
    Кстати telegram-bot-api довольно ресурсоёмкая штука, я бы избегал этого.

    Отправлял бы файл через telethon/pyrogram по максимальным лимитам телеграма (2 GB), а потом по file_id отправлял бы его нужным пользователям
    Ответ написан
  • Как 2 одинаковые функции использовать в разных местах [aiogram]?

    InternetMaster
    @InternetMaster
    Интернет
    Ну во первых вложенные декораторы это не клёво, советую так не делать.

    keyboard = types.ReplyKeyboardMarkup(resize_keyboard=True, row_width=2)

    Здесь можно row_width не писать, ведь по умолчанию это 3, вам подходит.

    первая стоит раньше второй, и когда нужно проверить регион в сообщении, то вызывается функция которая проверяет опыт (первая)
    как их вызывать по отдельности?


    Ну конечно вызывается та, которая стоит первая. Она вызывается даже если пользователь введёт число, независимо от того, нужно ли его сейчас вводить.

    А решение простое - конечный автомат (он же машина состояний). State в aiogram
    Ответ написан
    Комментировать
  • Не могу проверить отправленное сообщение на тип введенных данных [aiogram]?

    InternetMaster
    @InternetMaster
    Интернет
    Ну во-первых это часть кода, нету даже самого Qnnaire.
    Нету, ошибки которая выдается (раз ты говоришь что не работает, только перезапустить)

    Но даже так все-равно не работает фильтр

    Какой фильтр?

    Кстати убери лямбду в декораторе над функцией taxi_exp, это ненужное отнимание ресурсов вычислительной техники, ведь если введено не число, его отловит функция выше
    Ответ написан
  • Где бесплатно развернуть телеграм бота в 2022?

    InternetMaster
    @InternetMaster
    Интернет
    Какой вериф картой? Никакие сервисы так не делают (если только возможно речь идет не о российских поставщиках).

    В каком-нибудь телеграм-боте оплати сервер криптовалютой и будет тебе полная анонимность.

    Из бесплатных вроде есть ещё Deta
    Ответ написан
    Комментировать
  • Есть ли бот, удаляющий все reply (ответы на сообщения)?

    InternetMaster
    @InternetMaster
    Интернет
    Думаю, что готового бота такого нет, либо это какая-то из функции уже имеющихся ботов по слежению за порядком в чатах. Надо чекать.

    Предлагаю вам написать такого бота самостоятельно, это займет буквально 10 строчек кода Python.
    Ответ написан
    Комментировать
  • Как написать api для aiogram бота для общения с сервером flask?

    InternetMaster
    @InternetMaster
    Интернет
    Я думаю, что вам нужно чтобы ваш flask-сервер принимал запросы, (работал как API) и высылал сообщение от имени бота пользователю.
    Для этого нужно во flask импортировать нужную библиотеку (предлагаю pyTelegramBotAPI -> telebot) и принять из запроса во flask нужные данные (по типу кому отправлять, текст и т.д.).

    В этом случае flask сервер будет как некий посредник между тем кто отсылает запросы вашему серверу и непосредственно телеграм-ботом.
    Ответ написан
    Комментировать
  • Как сделать меню команд в телеграм боте?

    InternetMaster
    @InternetMaster
    Интернет
    Да просто в BotFather заведи все нужные команды для бота.

    Если я помню, то это команда /setcommand, дальше следуй инструкциям
    Ответ написан
    Комментировать
  • Как можно достать сессию из приложения telegram на эмуляторе или сделать вход по приложению?

    InternetMaster
    @InternetMaster
    Интернет
    Где конкретно в исходниках телеграма это написано - я не знаю, но знаю что в telethon лишь единожды войдя в телеграм, его можно вытащить в виде строки, и потом заходить по нему (если не прекратить эту сессию).

    Некоторые моменты можно узнать тут.
    Ответ написан
    Комментировать
  • Как сделать перезапуск бота по нажатию кнопки?

    InternetMaster
    @InternetMaster
    Интернет
    По сути это кнопка самоуничтожения всего от пользователя. То есть, нужно удалить абсолютно все данные, которые бот знает о пользователи (в основном в базе данных), и создать все заново.
    Ответ написан
    Комментировать
  • Как сделать топ баллов?

    InternetMaster
    @InternetMaster
    Интернет
    Нужно взять топ-10 пользователей с самыми высокими баллами, для этого SQLite запрос:
    SELECT username FROM users ORDER BY balli DESC LIMIT 10
    . Этим запросом получишь первые 10 пользователей по баллам.

    Как взять на каком месте юзер по баллам? Чтобы каждый раз не растрачивать ресурсы вычислительной техники, лучше всего вести отдельную таблицу с такими данными, обновляя её всякий раз, когда порядок лидерства будет изменяться.
    Если этого не хочется (или проект уже запущен, и нельзя изменить) нужно каждый раз брать всю таблицу пользователей с сортировкой по максимальному ID (тот же запрос из первой части ответа, только лимит порежь) , и прогонять по циклу for, пока не найдешь нужного пользователя.
    Представить только, что если там не 10, не 100 а 100000 пользователей, вычислительная техника сойдет с ума, еще если представить 20-30 таких запросов одновременно.
    Ответ написан
    2 комментария
  • Aogram Почему бот не отвечает на сообщение?

    InternetMaster
    @InternetMaster
    Интернет
    Все хорошо, но почему используется асинхронный aiogram, и неасинхронный sqlite3?
    Ответ написан
    Комментировать
  • Как деплоить Телеграм-бота с базой данный?

    InternetMaster
    @InternetMaster
    Интернет
    Ты как раз выбрал самую простую для деплоя базу (SQLite). Там нужно просто перенести файл baza.db (baza.sqlite) на сервер и все! sqlite3 идет по умолчанию в python, ничего устанавливать не надо!

    Например, MYSQL нужно установить, настроить root вход, потом создать пользователя, раздать права, создать базу данных, сделать дамп, загрузить его.
    Ответ написан
    Комментировать
  • Ошибка записи данных из бота в файл?

    InternetMaster
    @InternetMaster
    Интернет
    with open('C:\\Vash\\Put\\K\\Papke\\nuzhnoe_nazvanie.txt', 'a+') as file:
        file.write('Необходимый для записи текст')
        file.close()
    print('All done!')
    Ответ написан
    Комментировать
  • Как отправить все фотографии из папки в проекте, Telebot?

    InternetMaster
    @InternetMaster
    Интернет
    Если надо каждую отдельном то просто циклом for отправляешь все фото методом sendPhoto. Вот и все

    Или можно папку заархивировать и отправить ее и все
    Ответ написан
  • Как поменять содержимое Inline кнопки aiogram?

    InternetMaster
    @InternetMaster
    Интернет
    Александр отстает от информации. Гораздо лучше использовать метод editMessageReplyMarkup
    Ответ написан
    3 комментария
  • Как отправить первым сообщение пользователю в ТГ по его нику?

    InternetMaster
    @InternetMaster
    Интернет
    Если боту - то никак. Даже если пользователь первый напишет, то по нику - никак, только по ID. Правда, с 7 декабря 2021 (с версии 5.5) бот может первым написать:

    Теперь ботам разрешено связываться с пользователями, отправившими запрос на присоединение к чату, где бот является администратором с правами администратора can_invite_users , даже если пользователь никогда раньше не взаимодействовал с ботом.


    Если вообще нужно первому написать (не боту) то это уже MTProto API.
    Ответ написан
    Комментировать