А как ты прицепил HTTPS сертификат, если коннектишься на 127.0.0.1? Они ведь пришиты к домену, а не к IP, и если домен для соединения не совпадает с доменом в сертификате, то подключение разорвётся.
Rotyin, поищи либы, которые работают не через API ботов, а притворяются обычным клиентом. Обычные-то клиенты такие сообщения показывают, я так понимаю?
Ну вообще мультипроцессинг с передачей нетривиальных (списки, словари, числа, строки) объектов фз как работать будет. А как ты слушаешь события БД?
Да и executor.start_polling() намекает на aiogram (мог бы и сказать!), точно нет возможности сделать цикл отслеживания БД асинхронным и запустить его через asyncio.get_event_loop().create_task()?
Дмитрий,
1. В коде есть другие обработчики message_handler() без фильтра? Если есть, то будет работать только первый из них.
2. Вставь несколько отладочных print(), чтобы понять, вызывается ли echo() вообще, какое сообщение он обрабатывает, и заходит ли выполнение внутрь if.
cout_HelloWorld_andl, вот ещё раз, ты совершенно не ответил на мой вопрос.
Чем тебе так мешает присутствие отдельного файла-шаблона для генерации кода, что ты настаиваешь на том, чтобы пытаться редактировать уде существующий (и уже изменённый) файл?
Всё, что ты написал выше, можно реализовывать по разному, в том числе и моим способом. Я просто не вижу в чём у тебя возникает проблема, потому что решение задачи, озвученной в вопросе - тривиальнейшее. Впрочем, ты даже не озаботился привести пример "что хочется - что получилось на практике", так что сам виноват. Телепаты все на карантине, учись формулировать свои вопросы так, чтобы тебя понимали.
Единственная потенциальная сложность - если ты заранее не знаешь, на каком уровне отступа должен находиться вставляемый код. Вот тогда да, придётся повозиться. Но опять же, ты словом не обмолвился, что с этим возникает проблема. Если ты вставляешь код в методы одного класса, то они все должны быть на одному уровне отступа.
cout_HelloWorld_andl,
1. Просто сделай два разных маркера, делов то. # INSERT CODE 1 HERE и # INSERT CODE 2 HERE
2. "он каждый раз создает новый файл, и полностью перезаписывает его содержимое"
Да, я сразу предупредил что код так работает. И если ты хоть немножко подумаешь головой, то поймёшь почему.
Подсказка
Потому что корректно определить, где именно в файле находится неизвестный ранее вставленный код, будет в разы сложнее, чем просто сгенерировать новый код на базе старого шаблона. Не надо усложнять решение без нужды.
Так что лучше объясни, чем тебе так помешало присутствие отдельного файла-шаблона.
Yrets169, ну про что и речь: у пользователя, от имени которого запускается скрипт, есть права на изменение разрешений данного файла? Потому что без этого сделать chmod/chown чужому файлу обычно может разве что рут. (Впрочем, тут я не специалист, может, етсь исключения).
egor_u, ну начиная с zipfile можно не принимать во внимание. А вот то что выше я в твоём коде не вижу.
Дай минимальный, но полностью воспроизводимый пример.
CodingStub, ну из вопроса следовало, что затруднение в работе с файлами. Если затруднение в том, чтобы вытащить строки из TextArea, это уже второй вопрос. К слову, вы даже не сказали, что это за фреймворк.
Maruf, почитать документацию на модели django.
Параметр default позволяет указать либо сразу значение (default='чтототам' для строки, default=42 для целого, и т.п.), либо функцию без параметров, которая это значение вернёт (пример в документации).
Дмитрий, читай документацию на aiogram и экспериментируй. Помимо message_handler, aiogram позволяет реагировать на разные события - см. channel_post_handler и т.п. Попробуй написать пробного бота который подписывается на все типы событий в канале, которые найдешь, и выводит в консоль информацию о них. Потом подпишись/отпишись пару раз, пока бот активен.
Если ни одно из выведенных событий не будет соответствовать искомому сообщению, то тогда одно из трёх:
1. ты упустил какой-то тип события
2. aiogram не предоставляет возможности обработать этот тип события
3. telegram не посылает это событие боту