Hi there,
I'm wondering what happened to the OneSignal addon development (https://playfab.com/add-ons/onesignal/) as it is not listed under the Add-ons page anymore?
Background story:
I've followed PlayFab's latest push notification instructions for Android (using FCM) and iOS (using UnityEngine.iOS.NotificationServices). While Android - FCM worked after some struggles (too many method references coming from the FCM plugin, it finally built with Gradle and multiDex enabled), I can't get iOS to work:
Testing with two different iPads, both devices are registered successfully for push notifications and their APNS endpoint shows up in their PlayFab player profiles. I'm able to send a message via "Send push notification" button once (green checkmark behind the button), after which the following message occurs in all subsequent attempts: "Failed to deliver to mobile device. Check that the device is registered for push notifications. Error: iOS Push Notification Failed: Client has been unregistered for push notifications..". The client app has not been touched at all. Regardless of success or failure, there is no push notification showing up on the device. My title ID is F31A.
Related threads:
https://community.playfab.com/questions/10443/ios-push-notifications.html
Long story short, after one day lost with this iOS error I'm thinking about moving to OneSignal (also since it has the "collapseKey" parameter that PlayFab doesn't have for replacing old push notifications for push spam prevention), but it is unclear to me how I would link OneSignal's generated playerId in a PlayFab profile, so I can send push notifications to this user via Cloud Script. I could let the client call a Cloud Script that adds its OneSignal playerId to its PlayFab profile, but this would basically mean the client could exploit this behavior and send arbitrary device data possibly from other players.
Your help on one or both matters is much appreciated, as always!
Best,
Florian
Answer by Brendan · Jan 07, 2018 at 06:55 PM
Previously, we had a number of potential add-ons for the marketplace listed, in order to solicit feedback from the development community on which ones they wanted (to see which got more response than others, and so help with prioritization). That didn't work as well as planned, and actually looked like it caused some confusion. So we removed them from the marketplace, and added Feature Request posts for any that didn't already have a post (so that folks can "like" them there). For One Signal specifically, we haven't had a lot of requests for it, so it's still on the backlog.
For iOS, can you provide us with the title ID and the PlayFab ID of a player in that title that is registered for Push on iOS? Also, before we do any testing, can you try one thing? Re-register the title for Push using the Admin API call - not the Game Manager. I have noticed that in the rare cases where folks get stuck on this, that using the Admin API often helps to unblock them.
Thanks for the details, Brendan. Another evening lost with Apple's certificates, I can't even register the title for push on iOS anymore (it was registered before) - regardless of my Admin/SetupPushNotification input in several different combinations, the response is always "Invalid parameter: PlatformPrincipal not valid". OneSignal takes the p12 file without hesitation. I really liked how the push integration is done is general and with the server.SendPushNotification method, but I'm now giving up on this on the PlayFab side, since asking you for help with Apple's certificates <> PlayFab format conversion would just be too much.
Feel free to send us the p12 and your Title ID, if you want us to see if we can get it registered.