It would be great to have an option for having the app periodically retry sending a SMS if it failed to send. Some options might be to retry every few minutes, or better yet retry once there is a connection to a cell tower again (I think an android intent is broadcast on this event, but I could be wrong)
Bump
Would a quick way to try and solve this to be: do a ctrl+f for "SMS failed" (or whatever text appears if a text fails to send), and create some if condition (copy and paste the send SMS code, with some kinda timer)?
@Idiosyncratinom not sure if it would be that simple. That text is only shown after we've loaded all messages and seen which ones are failed, but it could be more efficient by just loading the failed messages. Some retry logic would probably need to be inserted at the point where the app is notified that the message failed
I didn't notice this kinda special feature on a different SMS app, so it could be a pretty cool unique sales point to have.
9sms (which I was using previously) had it, AFAIR GoSMSPro also has it. To be honest, I was under the impression it's rather popular :D
This is also the default behavior of the AOSP SMS app "Messaging" :)
Woj-tek, I can't find 9sms. I found "8SMS", last updated November 26, 2014.
Craftyguy, AOSP SMS "Messaging" seems to have been last updated in 2014 as well.
I'll try GOSMSPro.
Maybe there are security concerns with those outdated apps.
Edit:
Holy Jesus, GOSMSPro is full of bloat and has weird freemium premium stuff.
"Messaging" is also being actively maintained by the CyanogenMod folks in CM-13 (forked from AOSP). My point was that this feature is rather common!
Do you use "Messaging", or QKSMS, craftguy?
Instead of a time-based retry, if the problem is 'no connection' can't you set up a receiver to send it when network is available?
I think homersimpsons' suggestion is much better than mine.
I believe the "state - cell connected" trigger in Tasker didn't use much battery (reaction: turn wifi on, for example) - so many there's a similar one, like "signal strength - >80dB.
Mostly finished implementing this for the new update. I've got a receiver set up to listen for airplane mode state changes, and then it will retry sending failed messages when appropriate.
The code is all there, so it should be pretty straight forward to make this work when network service is obtained. Assuming that you can have a receiver for this on Android
Would this also handle the cases where network service is lost due to
remoteness or obstruction of signal from a tower, and not when the
device is explicitly placed into airplane mode?
On Wed, Jul 27, 2016 at 09:48:33PM -0700, Moez Bhatti wrote:
Mostly finished implementing this for the new update. I've got a receiver set up to listen for airplane mode state changes, and then it will retry sending failed messages when appropriate.
The code is all there, so it should be pretty straight forward to make this work when network service is obtained. Assuming that you can have a receiver for this on Android
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/moezbhatti/qksms/issues/493#issuecomment-235800086
Right now it's for when airplane mode is used explicitly
But listening for specific events is just a single line of code (things like phone booting, exiting airplane mode, network state changing)
The code within the listener, for resending failed messages, is the exact same. So what I mean to say is I've already written this part and have it listening for airplane mode state changes, now I just need to make it also listen for network state changes
Thanks for the clarifying question , craftyguy.
That's great to hear, Moez! Looking forward to it.
Oh, got it. That's fantastic news!!
On Thu, Jul 28, 2016 at 08:55:13AM -0700, Moez Bhatti wrote:
Right now it's for when airplane mode is used explicitly
But listening for specific events is just a single line of code (things like phone booting, exiting airplane mode, network state changing)
The code within the listener, for resending failed messages, is the exact same. So what I mean to say is I've already written this part and have it listening for airplane mode state changes, now I just need to make it also listen for network state changes
You are receiving this because you authored the thread.
Reply to this email directly or view it on GitHub:
https://github.com/moezbhatti/qksms/issues/493#issuecomment-235939242
Problem #652 is still very frustrating. I yet again turned off airplane mode to have a bunch of old failed-to-send messages from days to weeks ago re-sent causing a bunch of confusion. This is a result of this feature commit as discussed above.
A better solution might be to mark messages as queued while sent without service. Then once service comes back they will be sent off. If the service drops out again before they are all sent, they will go back to being queued. There will be an option for a timeout, so if queued messages are not sent out within an hour, day or week etc they will fail. I live in an area with poor cell coverage so I'm frequently having to manually re-send messages.
Most helpful comment
Right now it's for when airplane mode is used explicitly
But listening for specific events is just a single line of code (things like phone booting, exiting airplane mode, network state changing)
The code within the listener, for resending failed messages, is the exact same. So what I mean to say is I've already written this part and have it listening for airplane mode state changes, now I just need to make it also listen for network state changes