IOS

Push.Delivery offers the possibility to send push notifications to iOS devices over Apple APNS.

App-Integration

Therefore it is neccesary to integrate the subscription API with your specific iOS App. The the subscription API gives full flexibility for developers to handle the end user tag/topic subscriptions.

Authentification methods

Currently we are offering our clients two methods for authentification:

  • Certificate Based

  • Token Based

Certificate Based

For certificate based push, it is neccessary to use a certificate to establish a secure connection. This certificate can be obtained from Apple through an developer account and has to be provided by the App developer. More information about that can be found here.

Certificate based pushes have the disadvantage that there is no instant feedback on deviceIDs which are expired which could result in pushing to many devices which are not active anymore. To solve this issue we have an additional cleanup service which connects to APNs and runs periodically to get feedback on invalidated and expired devices and cleans them from the database.

Whereas we recommend our clients to use Token Based authentification.

Token Based

Token based push is another way of establishing a secure connection to APNs. Therefore, a token is required, which can be generated through an app developer account and put into Push.Delivery. More information about that can be found here.

We encourage our users to use token based authentification as there is an instant feedback on expired devices and no additional cleanup job (like for certificate based pushes) necessary.

Setup iOS in Admin UI

Please go into the "Apps" tab and add a new App.

Give your App a name, e.g. "My iOS App".

Then select the platform "iOS".

Upload an icon for the channel. This is only used inside the Push Admin so that you easier can recognize the channels by image.

Also it is required to use a Push template. This template is used to define the information that will be sent with the iOS Push.

You can use this default template and modify it to your individual needs:

[
  {
    "alert": "title",           (1)
    "alertObj": {               (2)
        "title": "alert title",
        "body": "alert body"
    },
    "badge": "0",               (3)
    "sound": "default",
    "silent": true,             (4)
    "rich": true,               (5)
    "customFields": {           (6)
        "field1": "value1",     (7)
        "field2": "value2",
        "fieldX": "valueX"
    }
   }
]
1 APNS setting alert message
2 APNS setting alert title and message
3 APNS setting badge
4 APNS setting sound
5 APNS setting content-available (optional)
6 APNS setting mutable-content (optional)
7 entry point for custom fields
To learn more about how to create and modify JOLT templates please follow up in our developer documentation: push-templates

Also you have the possibility to choose between the two authentification methods:

  • Certificate based

  • Token based

If you go for certificate based pushes you can upload your certificate together with the Keystore password and "save".

If you use token based pushes you can upload your token and enter the other requested information:

  • Key ID

  • Team ID

  • Apple App Bundle ID

After sucessfully creating the App for iOS the following information will be automatically shown inside the App:

  • ApiUser: This is the API username.

  • Password: This is the password for the API user.

  • AccessToken: Instead of using username and password an Acess Token is created.

  • platformId: The platform ID.

  • AppId: The App ID.

add ios app

After setting up the App, it is time to create Tags that users can register for.