I have the certificate from the Apple Push Notification Services. My App developer has not idea on how to install that on the server and neither do I. My server information
Apache Version 2.2.34
PHP Version 5.6.30
MySQL Version 5.6.41-84.1
You need to put it in the same path as your php script that contains the code to trigger the push for example in terms of local Mamp
hdocs
scrip.php ----------=> access would be $pushCertAndKeyPemFile = 'certificate.pem';
certificate.pem
For php code example look here Using PHP to send iOS Push Notifications via APNs
Related
As one of our iOS applications is UNABLE to receive push/remote notifications for production/live build which installed from App Store/TestFlight but able to receive push/remote notifications in development environment and even in production environment also app is able to receive push/remote notifications from third party services like Gimbal (which is in sync with Urban Airship) but not receiving in app notifications which triggered from our servers using Java code base.
We have cross checked
Push notifications permissions in iOS devices
Device token registration/update in our databases.
All ports which are needed for APNS are open in our servers firewall restrictions.
All the .p12 certificates which we are using for development and production are not expired and even we are able to send/trigger these push/remote notifications manually from third party portals(like pushtry.com website, NWPusher) by using the same .p12 certificates even in production environment to live build installed from App Store/TestFlight.
Need help/suggestions in this issue???
Thanks
I would suggest to check the host and port used in your server for production push notification.
I hope you are removing the sandbox from the host for production push notifications.
I'm trying to get my server to deliver push notifications via Apple's Push Notification service. (APNs)
My setup is as follows:
Cordova HTML/JS app
API in Rails on VPS via https
Houston gem for Push Notifications
I've created a certificate for development on my mac. When I run my server locally it successfully sends the notification to my iPhone.
I'm now trying to get it working on my server but without luck. I've generated a CSR locally, uploaded it in Apple's iOS App ID's editor and downloaded the CER. I then exported the CER to p12 with Keychain Access and converted that to a PEM file with the following command:
openssl pkcs12 -in apn_production.p12 -out apn_production.pem -nodes -clcerts
Houston needs this PEM file to send push notifications, I've done the same for development and it worked, but it needs to send from a server now, which could be the problem, I don't get any errors though. The notifications just don't arrive, which could be a production/development mistake I'm making.
I also tried creating a CSR file on my server and upload that via the iOS App ID's editor, but when I download the CER and open it in Keychain Access I'm not able to export it to P12, only to CER, PEM and P7B. Also there isn't a private key in this file, which there is within my locally created development certificate. Also when I export it to PEM and use it with Houston on my server it throws an error that the certificate is invalid.
Another thing I tried was upload the CSR generated by my VPS on the Apple Push Certificates Portal. This throws an error mentioning the certificate is invalid.
There's a couple things I'm not sure of:
1. Am I in development or production mode?
The app is not yet in the app-store, but it is in beta mode to download via TestFlight and push notification need to be send from my server. Is this a production environment or development or do I need to define this manually somewhere before building the App?
2. Is it possible to use a locally generated CSR for a PEM to be used on my server?
Am I right that I need a server generated CSR to start with when I finally need a PEM to send push notifications with from my server?
3. What do do now, how should I debug?
The PEM generated from my locally generated CSR is now uploaded to my server and Houston doesn't throw errors whatsoever. The push notifications don't arrive though, so, what should I do, can I trace these push notifications somewhere? Is there some APN logfile which I can read?
1) You need to use production certificates for sending push notifications via test flight.
2) You do not need a server generated CSR. You only need a valid ".pem" for sending push notification.
3) You need to remove sanbox (sandbox mode) from push notification url in push sending script. Also check if port 2195 of your server is open for communication or not because APNS communicates via this port.
I was able to run the Push Notifications for my local worklight server. However now I want to configure it for my remote Liberty server.
From all the documentation available I know I need to copy the apns-certificate-sandbox.p12 certificate to my server.
But what location should the certificate be in? Also do we need to specify the location of the certificate and the pushSender password in config.xml?
The apns-certificate-sandbox.p12 file is part of the .wlapp file that you deploy via Worklight Console.
The pushSender value is entered in application-descriptor.xml
On build time, these files and values are stored and the .wlapp file and the .war file.
These are artifacts that you deploy in your remote application server.
There is nothing else you need to modify or configure other than deploy them.
Related question: IBM Worklight - What should I deploy after changing or adding iOS push certificate?
Tested java build with ios production certificate from local windows machines. It was working fine and the push notifications were sent successfully to iphone and ipad.Push notifications are done using javapns.
Deployed the same build in Linux machine, but the push notifications are not working now.
Granted full permission for p12 file in linux server.
should we add/grant anything in the linux server for sending push notification from Linux.
Please help to sort out this issue.
check your java version
JavaPNS javapns-jdk16 Java1.6 compatible
We tried to implement the push notification in blackberry. We followed the steps provided in BB developer guide.
We installed the push SDK in our system. once the SDK is installed, we checked whether the tomcat is running ... It was running fine. But, we could not find the sample push server app. (war file is missing in the webapps folder of tomcat).
Are we missing anything or should we install the push server sample app seperately from elsewhere ?
Any pointers where the steps for configuring a push server and a push client app (in device) would be very much helpful ....
Thanks in advance.
php Server side code reference
This is very helpful for the server side code.