feat: autogenerate vapid keys for push notifications (#3128)

* feat: Autogenerate push notification keys
* add vapid service class and remove pushkey model
* add spec for vapid service
* unset vapid env keys
* Unset VAPID_PRIVATE_KEY env variable

Co-authored-by: Sojan Jose <sojan@chatwoot.com>
Co-authored-by: Vishnu Narayanan <vishnu@chatwoot.com>
This commit is contained in:
Santhosh C
2021-11-09 21:36:32 +05:30
committed by GitHub
parent 0c9b682329
commit 6cfd7d3836
7 changed files with 86 additions and 8 deletions

View File

@@ -43,7 +43,7 @@ class Notification::PushNotificationService
end
def send_browser_push?(subscription)
ENV['VAPID_PUBLIC_KEY'] && subscription.browser_push?
VapidService.public_key && subscription.browser_push?
end
def send_browser_push(subscription)
@@ -56,8 +56,8 @@ class Notification::PushNotificationService
auth: subscription.subscription_attributes['auth'],
vapid: {
subject: push_url,
public_key: ENV['VAPID_PUBLIC_KEY'],
private_key: ENV['VAPID_PRIVATE_KEY']
public_key: VapidService.public_key,
private_key: VapidService.private_key
},
ssl_timeout: 5,
open_timeout: 5,