Support Article
Push Notifications in Pega MKT does not work though HTTP Proxy
Summary
The issue reported environment has HTTP proxy configured in WebSphere JVM for Internet connectivity.
So in order to setup environment for Push Notification user has white-listed the following URLs in proxy:
- https://gcm-http.googleapis.com/gcm/send; as described here: https://developers.google.com/cloud-messaging/http
- https://api.development.push.apple.com.443
- https://api.push.apple.com.443
Based on official Google and Apple documentation, and this has not been documented in Pega Marketing (MKT) documentation.
The Apple Push Notification service (APNS) integration has been moved to next Phase thus currently user is trying to test Google Cloud messaging (GCM) integration. Unfortunately it does not want to work even though user confirmed through curl command executed from Pega 7 servers that white-listing for proxy is correct, user is getting correct response from Google.
Note: See exact curl command in Steps to Reproduce section.
Given above user suspect Pega MKT uses old, deprecated Google GCM URL that is:
https://android.googleapis.com/gcm/send
Error Messages
No error messages but failed to send message to GCM
Steps to Reproduce
1. Launch Pega Marketing.
2. Go to Configuration > Settings > Channels > Push Notification.
3. Add a new Application with Android variant, using for example the following values:
- Application Name: xxx_BANKING
- Application Description: xxx Banking Application
- What Platform is this for: Android
- What is the unique ID for this app variant: xxx-ANDROID-SMARTPHONE
- What is the google key: xxxxx
4. When variant is created click on the actions button and use the following token: xxxx
Root Cause
URL used by PRPC in GCM and APN is not documented.
Resolution
GCM (Google Cloud messaging)
-------
Pega Marketing ships gcm-server.jar in its own codeset. Base Pega ships this jar as prgcmserver.jar. Both jars have the following URL specified for the GCM endpoint:
https://android.googleapis.com/gcm/send
Apple Push Notification service (APNS)
--------
Pega Marketing previously used to ship apns jars in its codeset. Pegasystems stopped doing this as of the last release (7.21) and the Pega Marketing batch functionality relies on the apns jar shipped as part of Pega. Even with previous releases (such as 7.12, 7.13), there should be no discrepancy between the information used by the Pega Marketing jar and the Pega jar. The APNs code utilizes the following destinations:
Production:
Gateway: Host = gateway.push.apple.com, Port = 2195
Feedback: Host = feedback.push.apple.com, Port = 2196
Sandbox:
Gateway: Host = gateway.sandbox.push.apple.com, Port = 2195
Feedback: Host = feedback.sandbox.push.apple.com, Port = 2196
Published May 25, 2016 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.