To send Push Notifications on Safari you need to have a Website Push ID and a corresponding push certificate generated in your developer account. Details on how to generate these required credentials are given below.
Setting up Web Push ID Certificates
To integrate XtremePush with your website for Safari notifications you need to upload a certificate to your app dashboard on xtremepush.com. This is a Push Notifications certificate required to send pushes to Safari. To obtain this cert:
- Go to: https://developer.apple.com/membercenter/
- Log in
- Select Certificates, Identifiers & Profiles
On the iOS Certificates page click the plus sign to add a new certificate:
Select Website Push ID Certificate from the list of cert types and click continue.
Next, if you have a list of website IDs pick the relevant one if not you will be prompted to add one. In this case, create the ID for your site as prompted and then return to create a certificate.
Once you have selected your website ID copy it and save it for uploading to the platform later, and then click continue. Follow Apple's step by step instructions to generate the certificate. Download the certificate when prompted to do so.
Now that your cert has been created it must be uploaded to xtremepush.com. Download the certificate if you have not already done so and then open it. The certificate will open in Keychain Access. Select your certificate and expand it to see a key under it. Hold Command button on your keyboard to select both certificate and key, right click and then select 'Export 2 items'.
Choose the default export format (.p12) and export the certificate. Log in to your Xtremepush dashboard on https://dashboard.xtremepush.com, go to your app home and navigate to App Settings > Certs & Keys, on the right-hand side select the Safari radio button and click the upload button to upload your cert. In the form field in the same area paste in your website's push id (web.com.yourwebpushid) then click save.
Now return to the integration guide, and choose the next browser you need to add, or proceed with deploying the SDK - continue integration.