Device token not being set - mixpanel

Has anyone ever had a problem using Segment analytics SDK integrated with Mixpanel (cloud settings only, no Mixpanel SDK integrated)?
I'm registering the device token for push notification using the code:
SEGAnalytics.shared().registeredForRemoteNotifications(withDeviceToken: deviceToken)
...but we have almost half the users with a Ios devices key set in Mixpanel but no value, just an empty string.
There's no pattern among the users in this situation.

An empty 'iOS Devices' property on your People profiles generally indicates that there's a mismatch between the device token and the app's SSL push certificate that's been saved in your Mixpanel project; or, it could simply be an improperly formatted device token.
The fact that the property has been set in the first place means that you have successfully sent the device token to Mixpanel, however Mixpanel will remove tokens when their is a mismatch.
Mixpanel has a help doc that answers this specific question: https://mixpanel.com/help/questions/articles/how-does-mixpanel-manage-push-tokens-when-they-are-invalid-or-when-the-app-has-been-uninstalled.
Likewise, Segment has documentation for supporting mixpanel Push notifications here: https://segment.com/docs/integrations/mixpanel/#push-notifications.

Related

Google play READ_CALL_LOG permission

Reading call log is the basic feature of my app, but i dont know which option to select among the following in the list in the declaration form.
Default SMS handler
Default Phone handler
Default Assistant handler
Transactional backup and restore for users and archive for enterprise (time-limited/non-continuous)
Enterprise archive, CRM, and device management
Caller ID, spam detection, and blocking
Connected device companion apps (for example, smartwatch or automotive)
Cross-device synchronization or transfer of SMS or calls
SMS-based financial transactions and related activity where access is restricted to financial SMS transactions (for example, 5-digit messages)
SMS based money management
Proxy calls
Services - Carrier
Services - OEM
Device Automation
Physical safety / emergency alert apps (e.g., senior safety)
Call-based OTP account verification
Using SMS_CB_RECEIVED for customer communications (e.g., Smart Zone Cast service)
Write and Show Call History in Dialer
In-vehicle hands-free use or projected display
Anti-SMS Phishing
Since its only write and show call history in dialer option thats close to my requirement, i selected this, but now i got thefollowing email from google.
Google Play
Developer update
Hi Developers at Bot Entity, Thanks for contacting the Google Play
team about your app Whatsupp Direct, com.whatsappdirect.wd. Publishing
Status Publishing status: Rejected After review, your app has been
rejected and wasn't published due to a policy violation. If you
submitted an update, the previous version of your app is still
available on Google Play. Issue: Violation of Permissions policy After
reviewing your app, we found that it doesn’t qualify to use the
requested permissions for the following reason(s): App is using
unnecessary permissions When you submitted your app, you specified
your app's core functionality as follows: Write and Show Call History
in Dialer. However, based on the permitted uses, your app is only
allowed to access the following permissions: WRITE_CALL_LOG. Please
remove the following permission(s) from your app: READ_CALL_LOG.
now how do i get READ_CALL_LOG in the list??

How do I get apple receipt from app store events in laravel

I am using imdhemy/laravel-in-app-purchases plugin to manage mobile purchases from Google and Apple. I configured Google ok and I'm handling purchase events correctly.
But with apple subscriptions (renewable subscriptions) I can verify purchases, but I can't make the events listeners to work.
This is what I have working so far:
I can get a purchase from the mobile device and verify the receipt.
I can store the purchase identifier in my database.
I configured apple's push notification endpoint both for production and sandbox
My specific problem is:
the route /purchases/subscriptions/apple is expecting unified_receipt, unified_receipt.latest_receipt, unified_receipt.latest_receipt_info and notification_type.
but apple is sending Post: "{\x22signedPayload\x22:\x22eyJhbGciOiJFUzI1N...., if I'm not wrong, that is a JWT token, but in the library documentation, there is no information regarding JWT token.
That produces a 422 error from laravel's side, as it expects fields not sent by Apple.
Is there some extra configuration or step that I'm missing?
Thanks!
If you are switch to Notification version 1 you will find all data. Version 2 send only jwt token
If someone comes across this issue, the solution I found was to decrypt the JWT manually and skip all the custom events.

iOS Google Play Service's push notifications is working at this time?

I'm building an iOS game using Google Play Game for turn-based multiplayer but cannot receive any notifications. I did research many days to find what is wrong but i can't find anything.
So is iOS push notification in Google Play game still working at this time? Do your games still receive push notifications normally? Please provide me some information.
Thank you!
It is still indicated in the documentation that invitation and turn notifications are currently supported on Android and iOS. Based from this tutorial, you need to register your app to receive push notifications.
In your appDelegate, add the following code to the callback for retrieving the push device token passed back from APNS. This device token is used for outbound push notifications, and your app must register it with the Google Play games services push service. Make sure to always register your device token through GPGManager to enable push notifications from Google Play games services. Even if the user has not signed in; the GPGmanager object will cache this token and save it until the user signs in.
- (void)application:(UIApplication *)application
didRegisterForRemoteNotificationsWithDeviceToken
:(NSData *)deviceToken {
NSLog(#"Got deviceToken from APNS! %#", deviceToken);
[[GPGManager sharedInstance] registerDeviceToken:deviceToken
forEnvironment:GPGPushNotificationEnvironmentSandbox];
}
From this related thread:
If you are having issues you might want to make sure the token is being registered correctly with APNS in the AppController.m (by logging it).
Also, there are two certificates you can register on the Play console, one for sandbox and one for production. Make sure that certificate you are using is the one being configured. By default the AppController calls
gpg::RegisterDeviceToken(deviceToken, false); which indicates that this is the prod certificate configured on the console.
You can also check this related GitHub issue which might help.

How to get the device token of a mac?

I am using the PushWoosh solution to present and send the notifications from my webpage to the mac users.
I would like to set my computer also as a test device where I could check and test my notifications.
To do this, the PushWoosh wants from me the device token of my mac. How and where can I get it?
Here you can see the screen of PushWoosh:
This paragraph in the "Notification Programming Guide for Websites" documentation seems potentially useful:
To check the permission level a user has set for your website, call
window.safari.pushNotification.permission() with your Website Push
ID as an argument. This synchronous call returns a permission object
for the given identifier by looking in the user’s preferences. This
function does not contact your server.
One of the items passed back in the permission object structure is deviceToken, which appears to be what you are looking for.

Coding Issue while registerForRemoteNotificationTypes

I had a support for push notification "registerForRemoteNotificationTypes" in my app which is under a macro "EnablePushNotification". That means only if I enable this macro, then my "registerForRemoteNotificationTypes" will be executed.
I have recently submitted my app to Apple Appstores, and they have sent me a warning as below:
"Missing Push Notification Entitlement - Your app appears to register with the Apple Push Notification service, but the app signature's entitlements do not include the "aps-environment" entitlement. If your app uses the Apple Push Notification service, make sure your App ID is enabled for Push Notification in the Provisioning Portal, and resubmit after signing your app with a Distribution provisioning profile that includes the "aps-environment" entitlement.
If you would like to update your binary for this app, you can reject this binary from the Binary Details page in iTunes Connect. Note that rejecting your binary will remove your app from the review queue and the review process will start over from the beginning when you resubmit your binary."
My question is that I had not enabled this macro "EnablePushNotification" so "registerForRemoteNotificationTypes" will never get executed. Also I had not enabled my appstores provisioning profile for push notification. Even then i got this warning. What might be the issue here? Help appreciated.
I think you should also put under macro following UIApplicationDelegate methods
application:didReceiveRemoteNotification:
application:didRegisterForRemoteNotificationsWithDeviceToken:
application:didFailToRegisterForRemoteNotificationsWithError:

Resources