As of Xcode 8, push notification enabled apps sometimes are disabled again. This means a push token would not be generated and uploaded to Carnival.
To fix this, see our doc here: http://docs.carnival.io/docs/push-notifications-for-ios, specifically, the Switch for Push Notifications must now be turned on. This will add entitlements to your plist.
When exporting from Xcode to submit to the app store, make sure this entitlement is set too -- see screenshot from our internal test app attached:
To verify in code this is working, add a break point to application:didRegisterForRemoteNotificationsWithDeviceToken: to be sure a token is being generated. If this is not hit, try adding one to application:didFailToRegisterForRemoteNotificationsWithError: and inspect the error.
For more troubleshooting steps, please see: http://docs.carnival.io/docs/troubleshooting