FossifyOrg / Messages

An easy and quick way of managing SMS and MMS messages without ads.
https://www.fossify.org
GNU General Public License v3.0
573 stars 39 forks source link

Can't send MMS, error code 5 #45

Open Hwmpunk opened 10 months ago

Hwmpunk commented 10 months ago

Checklist

Affected app version

1.0.0

Affected Android/Custom ROM version

Graphene OS

Affected device model

Pixel 8 pro

How did you install the app?

None

Steps to reproduce the bug

Sending gif text results in cannot send, touch to retry. Then error code 5 pops up.

Expected behavior

Can't send Gifs

Actual behavior

Error code 5

Screenshots/Screen recordings

No response

Additional information

No response

Aga-C commented 10 months ago

Are you able to send normal photos? Also, how large (in kilobytes) is this GIF file?

Hwmpunk commented 10 months ago

Are you able to send normal photos?

Yes but FYI I must type a text along with it or send button is greyed out.

Videos also do not send*

naveensingh commented 10 months ago

Error code 5 is usually thrown when you are sending something that exceeds carrier limits. It may be that you have sent too many MMS messages or you are sending a file that is too big. The error messages need to be more user-friendly.

@Hwmpunk Can you please try sending a very small file no more than 20-100kbs?

Hwmpunk commented 10 months ago

Error code 5 is usually thrown when you are sending something that exceeds carrier limits. It may be that you have sent too many MMS messages or you are sending a file that is too big. The error messages need to be more user-friendly.

@Hwmpunk Can you please try sending a very small file no more than 20-100kbs?

I sent a 191kb gif and it worked. The one that didn't was exactly 1mb. The stock Graphene messaging app can send larger Gifs and videos under 2mb. For some reason your app has a smaller limit of less than 1mb. But yes, there's a limit on standard mms.

Out of curiosity, stock Android or Apple can reduce the quality of the media in order to send, not sure how difficult it would be to incorporate that into the app. Would at least make mms more usable. Most pictures these days are above 2mb

naveensingh commented 10 months ago

The app always tries to resize normal images to the MMS limit set in app settings. It doesn't do that for GIFs (yet) so that explains why your stock messages app can send it by compressing it. Can you try sending a ~2MB JPEG or PNG image? It shouldn't fail.

Aga-C commented 10 months ago

I think, while we don't have such feature, we could temporarily add a warning, that file is too large instead of showing cryptic "error code 5".

naveensingh commented 10 months ago

Yes, some of the error codes have some useful descriptions available but I didn't update error code 5 for some reason that I can't remember. Currently, 3 errors have user-friendly messages out of all the error codes available at SmsManager.java:2399

I guess we can close this as the original issue is not an 'issue'. We'll later add support for compressing different formats like GIFs.

Hwmpunk commented 10 months ago

The app always tries to resize normal images to the MMS limit set in app settings. It doesn't do that for GIFs (yet) so that explains why your stock messages app can send it by compressing it. Can you try sending a ~2MB JPEG or PNG image? It shouldn't fail.

I tried sending a 2.41mb photo and still received the error code 5 so it appears this app does not automatically reduce the size on any type of media.

naveensingh commented 10 months ago

What is the value of the "Resize sent MMS images" setting? Is it 300KB? Can you try lowering it down to 200KB and then sending the message?

naveensingh commented 10 months ago

In fact, you can send images of up to 100MBs and they will be compressed under the set MMS limit: https://github.com/SimpleMobileTools/Simple-SMS-Messenger/pull/589

DarkSirrush commented 10 months ago

Just to add to this, I can't send images with carrier limit disabled with this app, however I can send images with limit disabled with Textra. This is on a stock Samsung flip 4, v1.0.0 of app installed via FDroid Izzy repo.

It looks my carrier does compress the image themselves however, as the received image goes from 2.96mb to 294kb. Maybe that is related?

Also note, when setting carrier limit to 300kb, it allows me to send, however the file is compressed to 158kb and looks significantly worse than the one sent via Textra with "no limit". See screenshot below: Screenshot_20240124_122437_Messages_20240124122858

Update: after seeing Hwmpunk's comment tried setting limit to 2mb, image sent just fine, but was compressed down to 255kb.

Hwmpunk commented 10 months ago

What is the value of the "Resize sent MMS images" setting? Is it 300KB? Can you try lowering it down to 200KB and then sending the message?

Confirmed that setting the limit to 2mb allowed a 6mb image to be sent. However, the image received is now 766kb

What is the value of the "Resize sent MMS images" setting? Is it 300KB? Can you try lowering it down to 200KB and then sending the message?

Confirmed that setting image limit to 2mb allowed a 6mb image to be sent. However, the image was reduced to 766kb. Would be nice if it could retain as much quality as possible.

As you confirmed, this ability is only via photos and not any other type of media such as Gifs or video.

As you mentioned, perhaps a message instead of code 5, a more user friendly message saying try reducing size to 2mb in settings due to carrier limits, as well as currently only photos are supported.

Everything else is working great, thanks!

One other request would be the search function, it seems to only work for finding contacts. If it could include text messages within threads it'd be amazing for finding addresses or old bits of info buried in old messages.

naveensingh commented 10 months ago

I can't send images with carrier limit disabled with this app, however I can send images with limit disabled with Textra. It looks my carrier does compress the image themselves however, as the received image goes from 2.96mb to 294kb.

An alternative explanation is that Textra is always compressing images to under 300KB or by some factor and is ignoring the set MMS limit.

Confirmed that setting the limit to 2mb allowed a 6mb image to be sent. However, the image received is now 766kb

Great! This means there is no MMS bug and it's the image compressor that needs to be more precise.

DarkSirrush commented 10 months ago

An alternative explanation is that Textra is always compressing images to under 300KB or by some factor and is ignoring the set MMS limit.

I sure hope not, and when I sent the same image with a 2mb limit in textra I got a 293.8kb file. I might test receiving images with a few sms apps later to confirm it's my carrier later.