Push notifications stopped being received in iOS 13 - notifications

I'm using Azure Notification Hub and have a cordova based application . Everything works fine for iOS < 13. For iOS 13 I started experiencing some strange behaviors.
- When using sandbox all is fine
- when using production only first few messages are received. Then the users don't get any notifications. If they relog to app then they can have notifications for some time.
Tried bodies with:
{ "aps": { "alert": "notification message" }}
or
{"aps": { "alert": { "title":"test", "body":"notification message" }}}
I'm adding headers:
{ "content-available", "0"},
{"apns-push-type", "alert" },
{ "apns-priority", "10" }

I had similar problem. Since introduction of iOS 13 I found that you have to make sure your push object is being registered each time you resume the app. The subscription is closed by iOS if it's not reinitialized when resuming the application.

Related

How do I fix the problem behind "THIRD_PARTY_AUTH_ERROR" when using Google's API Explorer to send a Firebase Cloud Messaging message?

I am trying to create a very simple Web app that can send and receive messages (including Push notifications) via Firebase Cloud Messaging. I want to try testing the ability to receive test messages sent from the Google API Explorer. However, I am running into a curious error as just about any API call from the relevant API URL will return the following error:
{
"error": {
"code": 401,
"message": "Auth error from APNS or Web Push Service",
"status": "UNAUTHENTICATED",
"details": [
{
"#type": "type.googleapis.com/google.firebase.fcm.v1.FcmError",
"errorCode": "THIRD_PARTY_AUTH_ERROR"
}
]
}
}
For reference, here is the message that I am trying to send:
{
"message": {
"token": "[FCM_TOKEN]",
"notification": {
"title": "New Notification",
"body": "Sample Text"
}
}
}
I also note that when I add "validate_only": true to the message, that the error goes away and the send request succeeds (though this is of no help, as that disables actually sending the message).
I am stumped, becuse the hint that pops up suggests that my OAuth2 credentials are invalid, though I leave the OAuth2 credential option checked and go through the authorization popup to provide my credentials.
Are you running the web app on Firefox, perhaps?
I have been running around my tail with this same issue for days now, and today I've found that there is an issue on Firefox, while this does work on Chrome:
Similar stack overflow question
The issue on the Firebase repository on Github
Although not a proper answer, I hope this helps.

Bot not Responding Alert in Google Chat API

I have used same code as mentioned in one of the samples available on Google Chat Documentation
https://github.com/googleworkspace/hangouts-chat-samples/blob/master/java/basic-async-bot/src/main/java/com/google/chat/bot/basic/async/Bot.java
But the google chat is first giving the message "BOTNAME not responding" then the reply from the bot.
I have even tried to post the message with the thread from previous message as mentioned in the documentation. But still not getting desired result.
Any kind of help will be appreciated.
I eventually got it. Actually, I was sending a response to google chat with some content. When I modified it, by sending a response without any content, the error is resolved and it is working fine as accepted.
it's a shame I didn't see this issue before.
Check your APPSCRIPT.JSON for a chat property {} at the end. With updates when deploying is being overwritten but Google is already solving =)
Ex of my appssript.json: (Correct)
{
"timeZone": "America/Fortaleza",
"exceptionLogging": "STACKDRIVER",
"runtimeVersion": "V8",
"dependencies": {
"libraries": [
{
"userSymbol": "cGoa",
"libraryId": "1v_l4xN3ICa0lAW315NQEzAHPSoNiFdWHsMEwj2qA5t9cgZ5VWci2Qxv2",
"version": "36"
},
{
"userSymbol": "OAuth1",
"libraryId": "1CXDCY5sqT9ph64fFwSzVtXnbjpSfWdRymafDrtIZ7Z_hwysTY7IIhi7s",
"version": "18"
},
{
"userSymbol": "Verificacao_CallBack",
"libraryId": "1dgfE9K71u1k7tkxQHy2F2oAAAYB_lVnZOj8bmL0sl-vMEQYq8bYrDE1J",
"version": "0",
"developmentMode": true
}
]
},
"chat": {
}
}
You can deploys news versions in OLD apps script editors!

Why IAP product count is empty?

I added three inapp purchases to the app and they have "Ready to submit" status.
Can I test them before submitting the application on the simulator?
I'm asking it because
response.products
are empty, when I'm using this method.
func productsRequest(_ request: SKProductsRequest, didReceive response: SKProductsResponse) {
if response.products.count != 0 {
for product in response.products {
print(product.localizedTitle)
}
}
}
You also need to have the "Paid Applications Agreement" signed in App Store Connect before you can test products.
Also, the simulator is always sketchy for testing anything with StoreKit and I recommend testing on a physical device.

Mobile First Auto-update fails in iOS devices while changing the Server URL at run time

I'm working on an IBM MobileFirst Platform 7.1 project where we have many remote servers say, Dev, Test etc. The requirement was to change the servers at run time so that we would not be required to build and distribute multiple apps.
I followed the Official IBM tutorial.
Here is the code I use to connect to the server after the server is changed.
WL.Client.connect({onSuccess: function(){
WL.SimpleDialog.show(
"Connection Success", "Successfully connected to the server URL. Your app will reload once you press OK",
[{text: "OK", handler: function() {WL.Client.reloadApp();}}]
);
}, onFailure: function(error) {
WL.SimpleDialog.show(
"Connection Falied", error.status +" "+error.errorCode + " : " + error.errorMsg,
[{text: "Close", handler: function() {}}]
);
}});
It works perfectly fine in Android. But, in iOS devices, the server gets changed and gets connected to the new server. When the Auto-update runs in order to fetch the new code from the changed server, it gets Stuck indefinitely
Any help would be greatly appreciated. Thanks in advance.

Uber sandbox'ed /requests endpoint uses production environment and call real drivers

This behavior started today (11/10/2015).
When I make a call to sandboxed Uber endpoint a real driver accept and comes.
I've spent 5 hours trying to understand what is happening.
I've been using Uber API for last 1.5 months and haven't had this issue before.
I make this request (now I do it with Postman, so seems like there is nothing else can affect it):
URL: https://sandbox-api.uber.com/v1/requests
Method: POST
Headers:
Authorization Bearer AvwkOYENiYRS... (Got it from Uber)
Content-Type: application/json
body:
{
"product_id": "04a497f5-380d-47f2-bf1b-ad4cfdcb51f2", // got from uber before that
"start_latitude":37.4237323,
"start_longitude":-122.09827279999999,
"end_latitude":37.4243272,
"end_longitude":-122.09491579999997
}
I receive successful response from Uber.
And after some time server start receiving events from Uber:
X-Environment: production
{
...
"event_type": "requests.status_changed",
"meta": {
"resource_id": "...", // resource_id that I get when requested sandboxed api
"status": "accepted" // and then arriving, etc
},
...
}
This was a bug on Uber's side. This was resolved this morning. Let us know if you still see the issue.