- a push message id in push result was unified (single
id
key): a pair ofmessage_id
andmulticast_id
for FCM,apns_id
for APNS
- apns-id of APNS push message was added into response
- Bug with sync push and push_message == nil in callback_fun was fixed
- No link b/w consumer & task
- Adjusted timeouts
- Buffer ping
- Dynamic consumer
- Automatic consumer
- Buffer sync add
- Added APNS sync/async option for a worker (async is faster, sync is more stable)
- Tasks Supervisor: :temporary restart strategy
- bug fixes
- Tasks & their Supervisor improvements
- APNS worker's asunc push
- APNS worker ttl
- refactored APNS worker check
- APNS push operation async option
- timeouts handling
- some other improvements
- checks if APNS worker is alive before push
- checks for opened frames count per connection before push
- APNS: worker checks if a connection alive before push
- APNS: tries to redeliver push messages of crashed workers
- does not rely on Mix.env (uses Application.get_env(:express, :environment) instead)
- added APNS :auth_key as p8 file content in config
- configuration via module
- fixed APNS :cert & :key config attributes resolving
- got rid enforced_keys from Express.FCM.PushMessage.Notification
- Fixed a bug with field names of APNS payload (they should be dasherized).
- Added a validation on APNS payload fields.
- Added
thread_id
field to APNS aps structure
- JWT for APNS
- GenStage for load balancing
- Refactored supervision tree
the first publication on hex.pm