Push-уведомления от бэкенда Django к фронтенду iOS/Swift

Я попал в неприятную ситуацию и не уверен, как поступить.

  • Нам нужно было реализовать django push-уведомления для этого проекта.
  • Я исследовал, какую библиотеку лучше всего использовать. django-push-notifications (https://github.com/jazzband/django-push-notifications) выглядела как наиболее современная библиотека, которую можно использовать. Часть APNS построена на apns2 (https://github.com/Pr0Ger/PyAPNs2)
  • .
  • Мне пришлось сделать несколько модификаций для тестирования BE. По сути, я настроил проект так, чтобы он делал все правильно на моей стороне, а затем "притворился", что отправляю push-уведомление в apple. На этом этапе рукопожатие между django и apple не происходило.
  • Во время тестирования используется самоподписанный сертификат, просто чтобы сделать apns2 счастливым. Поскольку heroku не позволяет загружать файлы, мне пришлось сделать кое-что хитрое, чтобы загрузить сертификат в файл в django (в основном, чтение из переменной окружения и запись в файл).
  • Только недавно до меня дошло, что разработчик FE передал мне только закрытый ключ, а не сертификат. django_push_notifications требует сертификат. Далее он сказал мне, что Apple отказалась от сертификатов в 2019 году и использует только закрытые ключи.
  • .
  • У django_push_notifications не было никаких проблем по этому вопросу. [однако, я заметил эту страницу в документации: https://github.com/jazzband/django-push-notifications/blob/master/docs/APNS.rst]
  • .
Generation of an APNS PEM file
------------------------------

The ``APNS_CERTIFICATE`` setting must reference the location of a PEM file. This file must contain a certificate and private key pair allowing a secure connection to Apple's push gateway.

Может ли кто-нибудь посоветовать? Что я упускаю?

Вернуться на верх