I am using AMAZON SNS but facing a delay in push notification reception by 4 minutes, can you help me with this ?
Another Query would that if it is possible can you provide me with the guidelines for my Objective-C front-end developers, if in case it happens to be there fault in any case ?
As per the AWS documentation here, there is possible delay if the message delivery is failed in the initial attempts
Mobile push: If the mobile endpoint is not available, SNS will retry 2 times immediately, 5 times at 20 seconds apart, then 31 times exponentially backing off from 20 seconds to 20 minutes and finally 12 times every 20 minutes for a total 50 attempts over more than 4 hours before the message is discarded from SNS.
Related
I read the following on a guide someone wrote about Firestore:
"Basically, we pay 50 reads once we attach the listener and one read for each addition or update of a document. However, if the listener is disconnected for more than 30 minutes, we’ll be charged for reads as if we had issued a brand-new query. In the worst-case scenario, if the listener is disconnected every 31 minutes, we pay 50 reads each time."
Question: Does this mean that upon opening the application again after 30 minutes, the Firebase SDK reconnects all of the snapshot listeners again?
I’m really just trying to understand what exactly happens in the background once that 30 minutes has passed and the user opens the application again.
We implemented the change notifications subscription for channel messages as per the Microsoft Teams guidelines. We received the messages within 1 minute until 12-July-2021. Now we see a latency of about 2 - 15 minutes for sometimes notably on PST day time.
According to this link (https://learn.microsoft.com/en-us/graph/webhooks#latency) channel messages will be notified within 1 minute.
Could you please let us know what is causing this delay serving the request ?
We would also like to know if there is policy or priority on serving the notifications based on tenant type.
Thanks in advance.
I build my own SIP app based on Linphone SDK.
When I make an outgoing call, then after 30 seconds of the call I get these messages:
[BackgroundTask] Background Task 7 ("Liblinphone cpu lock"), was created over 30 seconds ago. In applications running in the background, this creates a risk of termination. Remember to call UIApplication.endBackgroundTask(_:) for your task in a timely manner to avoid this.
[BackgroundTask] Background Task 10 ("belle-sip transaction(0x280e88410)"), was created over 30 seconds ago. In applications running in the background, this creates a risk of termination. Remember to call UIApplication.endBackgroundTask(_:) for your task in a timely manner to avoid this.
Then the App crash after 30 seconds or sometimes after up to max 4 minutes of having an outgoing call active. This crash also happens if my app is only ringing for more then 30 seconds when I try to make an outgoing call.
When the crash happens, then the app is NOT in background. The app is just in foreground during an outgoing all.
The app is build with Swift 5.0 and iOS target version 13.0
I've been working with mod_ping on ejabberd, and could observe this:
ping_interval: Seconds
How often to send pings to connected clients, if the previous option is enabled. If a client connection does not send or receive any stanza in this interval, a ping request is sent to the client. The default value is 60 seconds.
timeout_action: none|kill
What to do when a client does not answer to a server ping request in less than 32 seconds. The default is to do nothing.
For now, I have the ping interval as 15 seconds. A smaller value would drain the battery of mobile clients, as has been observed.
So, gauging a bit I changed the IQ_TIMEOUT value from 32 seconds to 5 seconds (a smaller value). This closes my connection with a relatively smaller wait now. This is a change in the wait time for receiving acknowledgement from the connected peer i.e. if the ack is not received within 5 seconds, the socket is closed by ejabberd now.
I am anxious if this impacts any other functionality of ejabberd?
What are the drawbacks of setting up a small value such as 5 seconds in my case?
Some mobile connections have a much higher round-trip time (RTT) then 5 seconds. You are at risk in closing perfectly alive connections which such a low setting.
I've integrated Google Analytics iOS SDK in my iOS App, I want to set a long dispatch interval to avoid frequent network calls. I want to set 6 hours or longer interval.
// set Google Analytics dispatch interval, eg: 20 seconds
[GAI sharedInstance].dispatchInterval = 6*60*60; // dispatch after every 6 hours
I have few queries:
Q1. What will happen if App is killed just before the data is dispatched, will data be sent immediately when app is launched next time? (eg: app killed just few minutes before the dispatch interval).
Q2. Let's suppose app tries to dispatch data after 6 hours but network is not available at that time. will data be dispatched again after next 6 hours as aggregate of 12 hours data?
Any suggestion for optimised approach? I don't want to consume network bandwidth after every few seconds or minutes just for minor data.
dispatchInterval default is 120 (2 min).
Did you send a lot of datas? If you have vital datas, I suggest to keep it as 120(or better). As it use very minimal bandwidth.
If you are offline, the data will be sent when you are online again. (use event to test it easily in your app)
According to Google.:
Data collected using the Google Analytics SDK for iOS is stored locally before being dispatched on a separate thread to Google Analytics.
If a user loses network access or quits your app while there are still hits waiting to be dispatched, those hits are persisted in local storage. They will be dispatched the next time your app is running and dispatch is called.
More info here: https://developers.google.com/analytics/devguides/collection/ios/v3/dispatch