I wrote application which uses GCM topic massaging to receive push notifications from server. Applications works fine on iOS 8.1 but on 9.1 it registers for registerUserNotificationSettings and registerForRemoteNotifications successfully, gets APNs token and GGLInstanceID token successfully, Subscribes to topic successfully. But it doesnt receives messages sent on topics but it does receives messages sent directly to its registration token. I have spent a whole day debugging this but i am unable to reach any conclusion because some times it receives messages when app is running in debug mode but when i make package and transfer ipa file to device it never receives topic messages.
Related
We have a production org on which the slack package is installed. Salesforce app installed in Slack (I don't know if it matters or not, but this app has a custom name). Connection between Salesforce and Slack has been configured.
When the task is assigned for a user, the user receives a notification in messages from Salesforce app in the slack. it works for a while, and then the notifications stop coming. We need to reauthorize the connection for salesforce and slack in slack setup menu on the production org to make it work again.
What could be the reason?
Does FCM allow registering the android application from the Backend server to receive the notification from FCM on the device
You will always need to get the device token on the device itself, but once you have that you can manage topic subscriptions for that token on the server.
While reading through GCM documentation, I found the alert message from the site:
Firebase Cloud Messaging (FCM) is the new version of GCM. It inherits
the reliable and scalable GCM infrastructure, plus new features! See
the FAQ to learn more. If you are integrating messaging in a new app,
start with FCM. GCM users are strongly recommended to upgrade to FCM,
in order to benefit from new FCM features today and in the future.
How does it affect to current running PubNub configuration when I upgrading to FCM? I'm still not sure if ugprading from GCM to FCM will be just a snap.
Upgrade to GCM
PubNub Mobile Push Gateway - GCM to FCM
FCM is mostly just a rebranding of GCM (GCM used to be called C2DM and this is similar transition). It appears the changes are primarily client side (easier to user SDKs). PubNub (and other GCM push providers) do not have to make any changes on the server side at this time.
As always, PubNub will continue to monitor updates to push notifications services like GCM and APNS and provide new features as needed.
Please contact PubNub Support if you have any issues using GCM/FCM with your PubNub enabled applications.
For more details about using GCM/APNS with PubNub, see these resources:
Sending APNS and GCM Messages to Subscribers and Mobile Push Notification Services in One API Call
Android V4 Mobile Push Gateway Tutorial
Mobile Push Notification Gateways, APNS, GCM, and Data Streams Explained (video)
How can I troubleshoot my push notification issues?
I don't think there will be any issue moving your client from GCM to FCM. A client that implements FCM can receive messages sent to GCM, it is the same infrastructure. If PubNub is sending messages through GCM then your FCM client be able to handle those messages.
Note that GCM is still being supported. So if you are concerned about PubNub's implementation then sticking with GCM is a valid option.
I am developing a BlackBerry application in which I need to use PUSH API. I already have registered with RIM and they have sent me the credentials for evaluation service. In my BlackBerry device, I installed sample push API application just to test that the push messaging works. After setting the content provider URL which is publicly accessible, I entered all the details for the sample application to register the it for receiving notification messages. When trying to register it asks for username and password but I don't know what they are for. In the email received from RIM, there are passwords for server application and content provider admin portal applications but not for the push client.
When I added an arbitrary username and password it fails with the message that java.lang.Exception Registration with Push API failed, caused by port is unavailable. But when I unregister it successfully unregisters the user with the given arbitrary username and password. By the I use the port given in the RIM's email.
I have no idea why this happens and I appreciate immediate response from you. Thank you.
The first thing to point out is that the RIM sample push application is ridiculously overcomplicated. The username and password you are referring to are used to authenticate against the sample push initiator web application which runs on your tomcat server. It doesn't matter what you put in there, they are not used for authentication. I can only assume they were added to show you that you can send a username and password to a web based service.
The only things you need in your BlackBerry app to register for the push service are:
Push Application ID (e.g. 2672-c870l6c924r1i298O4o33cc5391y0e75134)
Push Port (e.g. 31940)
BlackBerry Push Server URL (e.g. http://pushapi.eval.blackberry.com)
The port is unavailable message you're receiving is probably because the device you're using has not been provisioned for BlackBerry Internet Services (BIS). Make sure it has a SIM with an active BlackBerry data plan.
I have few things to be clarified in BlackBerry push client applications. I have developed an push-enabled application which can receive push messages from the sample push initiator application installed on a publicly accessible location (through BIS). I have now run into a question about sending personalized messages to each device. For that matter I need to use subscription API that comes with BlackBerry push SDK. This question is similar to what has been posted here, but it contains no information for me. My questions are,
I used the registration API for BlackBerry client app registration to receive push messages from PPG. It requires only app-ID, device-port and push URL(not push initiator URL). Client app registers itself when the application UI starts up(this is how I register with push API). Is this all I need to do to get a subscription for that client with push initiator or does client need to contact push initiator directly for a subscription?
Why do I need to provide subscribe/unsubscribe URLs in the push initiator application (I don't provide any unsubscribe/subscribe facility in the client push application ) or is there a way to achieve this through application manager/operating system? or do I need to get unsubscribed users from the PushResult object and process them?
How does push initiator come to know about clients initially when there is no mechanism for the push client to subscribe with push initiator?
Is there a blog post or tutorial describing each and every step involved in the entire communication process apart from the documentation materials provided by RIM?
Currently I am using Push Essentials but might migrate to Push Plus service later(in the distance future).
Kindly appreciate your quick response.
Ok, so there are 2 things to keep in mind:
1) The BlackBerry Infrastructure (Push Proxy Gateway or PPG) needs to have your device listed as subscribed for your specific application ID in order for pushes to be delivered to your device. Subscribing from the device registers it with the PPG and tells the PPG "I would like to allow pushes from this App ID to be delivered to me". If your device is not subscribed to the PPG then your pushes from the initiator will be sent, accepted by the PPG but never allowed to be delivered to the target device.
2) Even if the device is registered with the PPG, how does your server sending the pushes keep track of what devices are registered? This is done by registering with the Push Initiator. The client sample application included with the Push SDK has a mechanism to show how this can be done. As well the server sample is set to receive these requests and add the client to the database so that it can be included for future pushes.
With all that in mind what happens if:
1) The user un-installs the application
2) The user switches devices
In the above cases there needs to be a mechanism to de-register the device from receiving pushes both from the PPG and from your server Push Initiator. Again the client sample application shows how this can be done.