PushNotifications.xml
This file specifies the schema for the configuration required by the Push Notification Bridge.
PNRootConfig
The mandatory root node of the Push Notification bridge.
Name | Type | Description | Min occurs | Max occurs |
---|---|---|---|---|
server | PNDiffusionConfig | Diffusion server connection details. | 1 | 1 |
apns | PNAPNSConfig | Apple Push Notification Service connection and configuration details. | 0 | 1 |
gcm | PNGCMConfig | Google Cloud Messaging connection and configuration details. | 0 | 1 |
transformation | PNTransformationConfig | Transformation from topic updates to Push notifications. | 1 | 1 |
persistence | PNPersistenceConfig | Optional Java plugin to persist topic subscriptions between bridge process lifetimes. | 0 | 1 |
delivery | PNDeliveryConfig | Options relating to the delivery of notifications to all Push Notification networks. | 1 | 1 |
PNDeliveryConfig
Options relating to the delivery of notifications to all Push Notification networks.
Name | Type | Description | Required |
---|---|---|---|
threads | xs:int | The number of threads used for notification delivery, processing client requests and collecting feedback from APNS. | true |
PNTransformationConfig
Transformation from topic updates to Push notifications.
Name | Type | Description | Required |
---|---|---|---|
default | xs:string | true |
Name | Type | Description | Min occurs | Max occurs |
---|---|---|---|---|
templates | PNTemplatesConfig | The set of uniquely named templates. | 1 | 1 |
map | PNTemplatesMappingConfig | Relates topics to one or more templates. | 1 | 1 |
PNTemplatesConfig
The set of uniquely named templates.
Name | Type | Description | Min occurs | Max occurs |
---|---|---|---|---|
template | PNTemplateConfig | A named template. | 1 | unbounded |
PNTemplateConfig
A named template. May contain placeholders ${topic.name} and/or ${topic.update} which are replaced with real values at run time.
Name | Type | Description | Required |
---|---|---|---|
name | xs:string | Name for this template, e.g. "london-underground-status-updates". | true |
PNTemplatesMappingConfig
Establishes the relations between topic paths and templates. Alternatively updates can be passed through 'verbatim', meaning the topic update must be a valid push notification message.
Name | Type | Description | Min occurs | Max occurs |
---|---|---|---|---|
from | PNTemplatesMappingFrom | Relates updates from topics covered by a topic-selector to interpolation with a named template. | 1 | unbounded |
verbatim | PNTemplatesMappingVerbatim | Relates a single topic-path to straight-through processing. | 1 | unbounded |
PNAPNSConfig
Apple Push Notification Service connection and configuration details.
Name | Type | Description | Required |
---|---|---|---|
certificate | xs:string | Name of a PKCS12 format file containing the certificate. The certificate needs to be of PKCS12 format and the keystore needs to be encrypted using the SunX509 algorithm. Both of these settings are the default. | true |
passphrase | xs:string | Mandatory certificate passphrase. | true |
servers | PNAPNSServers | A choice of "production", "sandbox" or "hostname:gatewayport:feedbackport" | true |
PNGCMConfig
Google Cloud Messaging connection and configuration details.
Name | Type | Description | Required |
---|---|---|---|
apiKey | xs:string | The Google provided GCM API Key. | true |
retryMax | xs:int | The number of attempts to make following an HTTP 50x response on posting. An increasing pause occurs prior to each repeated attempt. | false |
PNDiffusionConfig
Diffusion server connection details.
Name | Type | Description | Required |
---|---|---|---|
url | xs:string | URL for a Diffusion connector configured to accept Unified clients. | true |
principal | xs:string | The optional principal used when authenticating. The principal requires permissions 'send_to_session', 'read_topic' and 'register_handler'. | false |
credentials | xs:string | The credentials matching the principal used when authenticating. | false |
topicPath | xs:string | The topic path used by the Push Notification bridge to receive subscription and other service requests. | true |
PNPersistenceConfig
Optional Java plugin to persist topic subscriptions between processes lifetimes.
Name | Type | Description | Required |
---|---|---|---|
saverFactory | xs:string | Name of the class present on the JVM classpath used to build a com.pushtechnology.diffusion.pushnotifications.persistence.Saver object. | true |
PNTemplatesMappingFrom
Relates updates from topics covered by a topic-selector to interpolation with a named template.
Name | Type | Description | Required |
---|---|---|---|
selector | xs:string | Diffusion topic selector expression. | true |
toTemplate | xs:string | Name of a defined template. | true |
PNTemplatesMappingVerbatim
Name | Type | Description | Required |
---|---|---|---|
selector | xs:string | Relates a single topic-path to straight-through processing. | true |
PNAPNSServers
A choice of "production", "sandbox" or "hostname:gatewayport:feedbackport"
This value must be a xs:string.