I am attempting to use the PNS as documented. When I call the SendNotification method (oPushService:SendNotification(cMessage, iBadgeCount) ) the following error is thrown;
Does anyone know what this error means? It looks to me lie the API key is not being found. I grabbed this key from the MAB under the TAB push notifications.
Yes. Push API needs to be taken from the Mobile App Builder located under 'Push Notifications' tab.
Push Notifications -> <Push Database> -> Open -> Settings -> Push API key
However, as per the error it seems there is problem with connecting to Push server.
Were you able to send push messages directly from the Mobile App Builder's Push Page?
Push Notifications -> <Push Database> -> Open -> Send push notification
- Choose type of device
- Provide badge and message and click on Send
Thanks and Regards,
I can send push messages from withing MAB just fine and they are received by my devices. I just verified I am using the correct api key but I still cannot send from within ABL.
Flag this post as spam/abuse.
It works great when using the correct URI.
I am looking in the MAB under databases. I can see the devices and there is a DeviceId. Where does this come from?I assume the mobile device but where? It does not appear to match the device.uuid. I assume this would be the deviceid used in the request when registering a device.
There is also a token as well that is in the request. I can also see a value for this in the MAB push database. Where does this come from?
I am looking in the MAB under databases. I can see the devices and there is a DeviceId. Where does this come from?I assume the mobile device but where? It does not appear to match the device.uuid.
I assume this would be the deviceid used in the request when registering a device.
this post as spam/abuse.
I am looking at documentation that discusses creating a registration service to register a device. The following are request parameters that need to be sent:
* type = "I" for iOS and "A" for Android
* X-Progress-App-Id - I assume this is the api key?
* token - do I have access to send this?
* deviceid - do i have access to send this?
Are core app is an on premise app.The mobile app will work against a customers server that is on premise. We would like to send push notification to the mobile app filtered by customer install. I thought I could use the token to do this but it looks like I cannot.
Off the top of my head (my test project seems to have been migrated away :( )
X-Progress-App-Id is the guid of the project
deviceId you have to get from the device - there's an API for that you can call via a trigger.
You can add fields to the notification database of any type and use values in those as filters when calling the push notification service (the ABL classes have the capability to add generalised filtering). You would have to update the device info with those values. Probably from the device but you could send the device ID to the ABL server together with the user's login info and have the ABL do it.
The ABL push notification service (broadly-speaking) could be extended to add the device registration and management APIs, but that's not currently planned. Please add an Idea, if you're interested in that.
You look to be correct for the X-Progress-App-Id. If I compare that value from the notification database to that of the mobile app guid it matches.
DeviceId - what API is that. I have access to the device.uuid but that is not what is being sent. Is there documentation for this API?
Add fields to the database. That is cool so I can add whatever I want so I can filter by this.
As far as registration I was referring to more on the mobile app side so when the app initializes we would send deviceid, token, etc. and register the device in the notification database. I then would be able to sen push notifications and use any of those values to filter.
I have been toying with filter using the ABL classes. The sample from the docs works great.
ASSIGN oPayload = PushNotificationMessageBuilder
This crashes the ABL;
:AddStringFilter ("token", "7b2a2ee7a59ba5c2d452b204ff2d391e5f4936f204dc6d93ce5e998b009fa9e4", OpenEdge.Mobile.PushNotificationFilterOperandEnum:Equals )
I have a call open with PTS.
> DeviceId - what API is that. I have access to the device.uuid but that is not what is being sent. Is there documentation
> for this API?
device.uuid sounds about right. I'll dig a little further to make sure that's what I thought.
> Add fields to the database. That is cool so I can add whatever I want so I can filter by this.
Ain't it :)
Well since that crash results from code I wrote, you may soon be hearing from me :) - although the AVM should never crash.
I do not think it is the device.uuid. That is not what is being added to the push database. I also read in phonegap docs that you cannot count on that being the same for iOS. Each time you uninstall/reinstall your app it can change. I tested that many months ago and can confirm that the uuid does change.
I sent sample code to PTS (Ken) that reproduces the crash.
Can someone clarify where the deviceID in the push notification database is coming from?
On my iPhone5 I have the following;
Phonegap reports device.UUID of 299BDA54-C30E-405D-85E5-E0AA0729AC1F (IT CHANGES EACH TIME COMPLETELY REMOVE APP AND RE-INSTALL)
iTunes reports UDID of 260e2204959df8158d0cc34067f53773eb7cbf92 (THIS SHOULD NEVER CHANGE but I do not think we have access to this value)
In push database I have a deviceID of D34011E8-DD00-428F-A9C6-B9C6200316CA (APPEARS TO STAY THE SAME EVEN AFTER ININSTALL/REINSTALL)
UUIDViewer reports UUID of FFFFFFFFBFEF6419E22A4FA690FDC54B8C577513
When you enable push notifications for your app it appears the mobile app is registering the device in the push notification database automatically. I would like to add addl fields to the PN DB as Peter mentioned and send the values during registration.
Just some quick feedback regarding UDID.
The UDID is a 40-digit identifier.
The value that returned by UUIDViewer is not valid. It starts with FFFF.
(The API to get the UDID was deprecated for privacy reasons. Some apps were tracking users from app to app.)
You can get the UDID by using CTRL-C on Windows or Command-C on Mac on Serial Number field in iTunes.
See the following links for some screenshots: indude.com/find-iphone-udid-206
I hope this helps.