@demoo969

Как добавить ssl сертификат для телеграмм-бота на aiogram?

Вопрос такой, у меня есть код для подключения ssl сертификата к телеграм боту для вебхуков, только вот сертификат не подключается, сам сертификат делал через openssl.

Aрагмент кода, вдруг тут где то накосячил или забыл добавить:
from aiogram.dispatcher.webhook import get_new_configured_app
from botapp.db_manager import check_purchase_status
from botapp.config import SERVER_IP
from botapp.misc import dp,bot
from aiogram import executor
import asyncio
....

from botapp.utils.scheduler import scheduler
async def on_startup(dispatch):
    print('Запустился')
    print('Проверка таблиц')
    await check_purchase_status()
    asyncio.create_task(scheduler())
    web_hook = await bot.get_webhook_info()
    if web_hook.url != WEBHOOK_URL:
        if not web_hook.url:
            await bot.delete_webhook()
        await bot.set_webhook(WEBHOOK_URL, certificate=open('/root/certs/domain.crt', 'r'))
    # await bot.delete_webhook()
    print(await bot.get_me())
    print(await bot.get_webhook_info())

if __name__ == '__main__':
    import logging
    from botapp.handlers import *
    
    logging.basicConfig(format=u'%(filename)s [LINE:%(lineno)d] #%(levelname)-8s [%(asctime)s]  %(message)s',
                        level=logging.INFO,
                        # level=logging.DEBUG,  # Можно заменить на другой уровень логгирования.
                        )
  
    executor.start_polling(dp, skip_updates=True, on_startup=on_startup)
  • Вопрос задан
  • 576 просмотров
Пригласить эксперта
Ответы на вопрос 1
@demoo969 Автор вопроса
в общем ответ такой
import ssl
ssl_context = ssl.create_default_context(ssl.Purpose.CLIENT_AUTH)
ssl_context.load_cert_chain('сертификат', keyfile='приватный ключ')

и в запуск добавить
if __name__ == '__main__':
web.run_app(app, host='адрес', port=4772, ssl_context=ssl_context)
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы