Jump to: navigation, search

push Section

The push configuration includes three logical groups of options: general configuration, push provider configuration, and OS-specific message formatting. For more information about providers and OS-specific message formatting, refer to Genesys Mobile Services Push Notification Service.

If some mandatory options are absent from the push section, the corresponding push type is disabled even if you enabled it using the push.pushEnabled option; as a result, a log entry will be created.

Important
For security reasons, if you wish to hide some private keys that are specific to the notification mechanism, you can define sensitive options in a dedicated section.




     


android.collapseKey

Default Value:
Valid Values: not empty
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

An arbitrary string that is used to collapse a group of like messages when the device is offline, so that only the last message gets sent to the client. This is intended to avoid sending too many messages to the phone when it comes back online. Note that since there is no guarantee of the order in which messages get sent, the "last" message may not actually be the last message sent by the application server

android.delayWhileIdle

Default Value: false
Valid Values: true, false
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

If included and true, indicates that the message should not be sent immediately if the device is idle. The server will wait for the device to become active (only 1 last message will be delivered to device when it becomes active). Default (if not specified) - false;

android.gcm.apiKey

Default Value:
Valid Values: Valid Google api Key. See Google GCM description.
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

Valid Google API Key. See Google CDM description. Please see https://developers.google.com/cloud-messaging/gcm

android.gcm.retryNumber

Default Value: 2
Valid Values: Any integer
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

Retry attempts (in case the GCM servers are unavailable).

android.senderAccountType

Default Value:
Valid Values: not null, may be empty
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

Specified when initializing c2dm push service

android.senderEmail

Default Value: @gmail.com
Valid Values: valid mail (sender account registered in Google service)
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

Valid name of mail account. The notifications will be sent from behalf of this account. After signing up for C2DM, the sender account will be assigned the default quota, which currently corresponds to approximately 200,000 messages per day.

android.senderPassword

Default Value:
Valid Values: valid password of registered account
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

Password of account

android.source

Default Value:
Valid Values: not empty
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

Specifying when sending push notification service

android.ssl_trust_all

Default Value: false
Valid Values: true, false
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

If included and true, indicates that any SSL certificate provided during establishing https connection to https://www.google.com/accounts/ClientLogin and https://android.apis.google.com/c2dm/send addresses are considered valid, regardless of their presence in keystore/truststore used by environment. Default value - false. Please note that setting this option to true is highly unadvised. The most correct way is to configure the security system to permit the actually received certificates.

android.unavailability_retry_timeout

Default Value: 120
Valid Values: Any positive integer
Changes Take Effect: After restart.
Discontinued: 8.5.114.09

This parameter specifies the default timeout (in seconds) to wait before Google C2DM service can be accessed again if the request returned the 503 code (Service unavailable). Please note, that this value is ignored if the 503 response from Google contains valid Retry-After header. Default value for this parameter is 120 (used if value not set or incorrect).

apple.alert

Default Value: No default value
Valid Values: Any string
Changes Take Effect: After restart


Enables an iOS standard alert and defines the text of this alert with two buttons: Close and View. If the user taps View, the application is launched. If this option is null, the alert property will not be added to the notification.

apple.alertMessage.action-loc-key

Default Value:
Valid Values: Any string
Changes Take Effect: After restart


If set (not null), is used as an action-loc-key entry in the alert dictionary (iOS-specific).

apple.alertMessage.body

Default Value:
Valid Values: any String, may be null(=absence of option)
Changes Take Effect: After restart.


If set, defines a body entry in the alert dictionary (iOS-specific).

apple.alertMessage.launch-image

Default Value:
Valid Values: Any string
Changes Take Effect: After restart


If set, is used as the badge entry in the aps dictionary (iOS-specific).

apple.alertMessage.loc-argnames

Default Value:
Valid Values: Any string
Changes Take Effect: After restart


If set (not null), used as a loc-args entry in the alert dictionary (iOS-specific).

apple.alertMessage.loc-key

Default Value:
Valid Values: Any string
Changes Take Effect: After restart


If set (not null), used as loc-key entry in the alert dictionary (iOS-specific).

apple.badge

Default Value: 0
Valid Values: any, may be null (=not set)
Changes Take Effect: After restart.


If set, number used as badge entry in the aps dictionary (iOS-specific). If this property is absent, any badge number currently shown is removed. If not set, the badge entry will not be part of the push notification.

apple.content-available

Default Value:
Valid Values: Any string
Changes Take Effect: After restart


Set this key with a value of 1 to indicate that new content is available and let the remote notification act as a silent notification. This is used to support Newsstand apps and background content downloads. Newsstand apps are guaranteed to be able to receive at least one push with this key per 24-hour window.

When a silent notification arrives, iOS wakes up your app in the background so that you can get new data from your server or do background information processing. Users aren’t told about the new or changed information that results from a silent notification, but they can find out about it the next time they open your app.

apple.keystore

Default Value:
Valid Values: Valid file path
Changes Take Effect: After restart.


keystore location (path to file) for iOS push notifications

apple.keystorePassword

Default Value:
Valid Values: Not null (but may be empty string)
Changes Take Effect: After restart.


Password to access keystore. If the password is incorrect, the attempts to push messages will fail with the corresponding log entries.

apple.sound

Default Value:
Valid Values: any String, may be null(=absence of option)
Changes Take Effect: After restart.


If set, used as sound entry in the aps dictionary (iOS-specific). Use the name of a sound file in the application bundle. The sound in this file is played as an alert. If the sound file doesn’t exist or you set this value to default, the default alert sound is played. If not set, the corresponding entity will not be added to the notification.

apple.title

Default Value: Empty string
Valid Values: String
Changes Take Effect: After restart.


Apple Notification title. If not specified, GMS sends a blank title.

apple.topicName

Default Value: No default value
Valid Values: Any string
Changes Take Effect: After restart
Introduced: 8.5.228.02

Topic name also referred to as the bundle ID, that identifies your apple app and receives the notifications. If the topic name is incorrect or not set, GMS does not send the notifications.

customhttp.url

Default Value:
Valid Values: Any valid URL
Changes Take Effect: After restart


Mandatory URL where the notifications will be pushed. The subscriber must provide a URL that will be invoked. GMS posts the payload to this URL (using HTTP POST). The Payload is a JSON object that contains two properties: the deviceId, which is the custom id provided at subscription time by the subscriber, and the message, which is the notification message.

This option describes the provider configuration used for accessing the target (APPLE APNS service, HTTP address).

You can use the HTTPS scheme without adding the server certificate if you configure the http.ssl_trust_all option to true in the [gms] section.

If you do not use the http.ssl_trust_all option, add the server certificate to the Java cacerts.

For example, in a Linux platform:

keytool -import -alias genesys -keystore /etc/pki/java/cacerts -file /security/custom_https_server_certificate.crt -noprompt -storepass changeit

debug.apple.keystore

Default Value: No default value
Valid Values: Valid file path
Changes Take Effect: After restart


Keystore location (filepath) for iOS push notifications. This option applies to notifications whose debug value is set to true.

debug.apple.keystorePassword

Default Value: No default value
Valid Values: Not null or empty string
Changes Take Effect: After restart


Password to access keystore. If the password is incorrect, the attempts to push messages will fail with the corresponding log entries. This option applies to notifications whose debug value is set to true.

debug.fcm.apiKey

Default Value: No default value
Valid Values: Any string
Changes Take Effect: After restart
Introduced: 8.5.114.09

Valid Firebase Cloud Messaging API key to use if debug=true.

defaultSubscriptionExpiration

Default Value:
Valid Values: Any integer (>=30)
Changes Take Effect: After restart


Default subscription expiration (in seconds). If the option is not set or if you assign an incorrect value, the default value (30) will be used.

fcm.apiKey

Default Value: No default value
Valid Values: String
Changes Take Effect: After restart
Introduced: 8.5.112.05

Valid Firebase Cloud Messaging API key. Refer to the official documentation for further details.

fcm.body

Default Value: No default value
Valid Values: Any string
Changes Take Effect: After restart
Introduced: 8.5.114.09

Firebase Cloud Messaging body message for an event defined at the provider level.

The following example shows how to configure two chat services for Bank's Saving Account and use localized messages in English and Russian:

[chat.savings-english]
endpoint = Environment:SavingsEnglish
  
[chat.savings-russian]
endpoint = Environment:SavingsRussian
  
[push.provider.bankoperations]
pushEnabled=ios,fcm
fcm.apiKey=****
apple.keystore=/var/genesys/gms/appleKeystore.p12
apple.keystorePassword=****
  
[push.provider.bankoperations.event]
fcm.body="Please open app for more details
  
[push.provider.bankoperations.event.chat.savings-english.ParticipantJoined]
fcm.title="Agent has joined an waiting"
 
 
[push.provider.bankoperations.event.chat.savings-english.Message]
fcm.title="You got new message from us"
fcm.body="Please answer us soon!"
  
[push.provider.bankoperations.event.chat.savings-russian.ParticipantJoined]
fcm.title="Агент присоединился и ждет"
fcm.body="Ответьте нам поскорее"
  
[push.provider.bankoperations.event.chat.savings-russian.Message]
fcm.title="У Вас новое сообщение!"
fcm.body="Ответьте нам поскорее"

fcm.title

Default Value: No default value
Valid Values: Any string
Changes Take Effect: After restart
Introduced: 8.5.114.09

Firebase Cloud Messaging title for an event defined at the provider level.

The following example shows how to configure two chat services for Bank's Saving Account and use localized messages in English and Russian:

[chat.savings-english]
endpoint = Environment:SavingsEnglish
  
[chat.savings-russian]
endpoint = Environment:SavingsRussian
  
[push.provider.bankoperations]
pushEnabled=ios,fcm
fcm.apiKey=****
apple.keystore=/var/genesys/gms/appleKeystore.p12
apple.keystorePassword=****
  
[push.provider.bankoperations.event]
fcm.body="Please open app for more details
  
[push.provider.bankoperations.event.chat.savings-english.ParticipantJoined]
fcm.title="Agent has joined an waiting"
 
 
[push.provider.bankoperations.event.chat.savings-english.Message]
fcm.title="You got new message from us"
fcm.body="Please answer us soon!"
  
[push.provider.bankoperations.event.chat.savings-russian.ParticipantJoined]
fcm.title="Агент присоединился и ждет"
fcm.body="Ответьте нам поскорее"
  
[push.provider.bankoperations.event.chat.savings-russian.Message]
fcm.title="У Вас новое сообщение!"
fcm.body="Ответьте нам поскорее"

filtering_chat_events

Default Value: Notice.TypingStarted,Notice.TypingStopped
Valid Values:
Changes Take Effect: After restart


Comma-separated list of the following events:

  • Notice.TypingStarted
  • Notice.TypingStopped
  • Notice.Joined
  • Notice.Left
  • Notice.PushUrl
  • Notice.Custom
  • Message.Text

A comma-delimited list that sets the default value for the _filtering_chat_events service parameter. By default, this list is set to "Notice.TypingStarted,Notice.TypingStopped".

httpcb.connection_max_connections_per_route

Default Value: 20
Valid Values: Any integer >= 2
Changes Take Effect: After restart.


The maximum allowed number of simultaneously opened connections for one route. Default value (used if option not set or incorrect) 20.

httpcb.connection_timeout

Default Value: 5
Valid Values: Any positive integer
Changes Take Effect: After restart.


The http connection timeout in seconds. Default value is 5

httpcb.max_connections_total

Default Value: 200
Valid Values: Any integer >= 5
Changes Take Effect: After restart.


The maximum allowed total number of simultaneously opened connections. Default value (used if option not set or incorrect) 200

localizationFileLocation

Default Value:
Valid Values:
Changes Take Effect: After restart.


Location of the file containing the list of localized messages.

pushEnabled

Default Value: comet
Valid Values: android, gcm, ios, httpcb, orscb, customhttp, fcm,comet
Changes Take Effect: After restart.
Modified: 8.5.113.10, 8.5.112.05

A comma-delimited list of strings that describe the enabled push types. Currently, the following push types are supported:

  • android
  • gcm
  • ios
  • httpcb
  • orscb
  • customhttp
  • fcm (starting in 8.5.112.05)
  • comet (starting in 8.5.103.10)

Any other push type will be ignored. If an option value is not set, then it will be handled as empty string option value (that is, push will be disabled for all supported types and the push service will not work).

Note: Starting in 8.5.103.10, this option requires the default value (comet) even if you do not enable push notifications. If you enable push notifications, use one of the above valid values.

wns.clientSecret

Default Value:
Valid Values:
Changes Take Effect: After restart


The secret key associated to the application. See Microsoft Official documentation.

wns.notificationType

Default Value:
Valid Values:
Changes Take Effect: After restart


Type of notification that GMS will send to the Windows application. This value must match the X-WNS-Type header. For example, you can specify a toast notification by setting this option to wns/toast.

wns.sid

Default Value:
Valid Values:
Changes Take Effect:


Unique identifier for your Windows Store app. See Microsoft Official documentation.

wns.xmlTemplate

Default Value:
Valid Values:
Changes Take Effect: After restart


XML string that defines the notification. For example, to set up a toast notification, you can set this option to:

<toast><visual><binding template="ToastText01"><text id="1">bodyText</text></binding></visual></toast>

This page was last edited on May 7, 2019, at 14:57.
Comments or questions about this documentation? Contact us for support!