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
415 stars 29 forks source link

Cannot start new conversations with or reply to email addresses (emails treated as invalid shortcodes) #115

Open Soundtoxin opened 4 months ago

Soundtoxin commented 4 months ago

Checklist

Affected app version

1.0.1

Affected Android/Custom ROM version

Android 13 / LineageOS 20

Affected device model

OnePlus 8T

How did you install the app?

F-Droid / IzzyOnDroid

Steps to reproduce the bug

  1. Press the floating + to start a new conversation
  2. enter a valid email address and press the checkmark
  3. error "Can't reply to short codes like this"

alternatively:

  1. email your phonenumber@mms.att.net or equivalent for your carrier (look it up)
  2. open the conversation once the MMS arrives
  3. at the bottom, error "Can't reply to short codes like this"

Expected behavior

MMS is essentially a limited form of email and I believe it should be possible to communicate both ways between them.

Actual behavior

I can receive emails as MMS but I cannot reply to them or start new conversations with an email address.

Screenshots/Screen recordings

Screenshot_20240222-180520_Messages_1 Screenshot_20240222-180053_Messages_1

Additional information

I have root via Magisk.

I believe in the past on the Simple Mobile SMS app I had this working to some degree, though it may have only been in a group chat started by an email and not 1-on-1.

While it may seem like two bugs, the error is the same and I believe email addresses being erroneously treated as [invalid] shortcodes is the cause in both scenarios, so I felt justified in checking the one bug box. I hope this is okay.

Aga-C commented 4 months ago

Emails and MMS are completely different, we will never support them. If you're receiving an email as MMS, that's probably something done by your mobile carrier, and even if it would work, it would work by replying on some phone number. It's definitely not a standard thing.

Soundtoxin commented 4 months ago

I feel you're being a bit too hasty here. If I use the stock messaging app (whatever LineageOS came with in my case), I'm able to reply to the message I sent myself via email and it shows up as a new email on the email side. I would guess that most default messaging apps support this. My phone is not from my carrier nor does my carrier have any software of theirs on my phone. The carrier-specific email address I'm taking advantage of is relevant (some sort of bridge/relay, maybe?), of course. I've seen a similar one for T-Mobile. I don't think this is all that crazy of a thing, even if it's not used that often. Sadly the LineageOS Messaging app makes me set it as default before I can reply to the message, so even if I were willing to juggle two apps (not ideal), it's particularly painful in this case. I don't know what would be involved in the implementation, but currently it seems like just not being able to try to start a conversation or send a message is the problem. Maybe removing this "block" of sorts wouldn't be everything involved, though.

it would work by replying on some phone number

If this is the case, it doesn't seem to be obvious when using the other app anyway. Everything is just showing the email address. Is it possible that the message attempts to go out to the actual email address and the carrier detects that it's sent to an email and properly relays it? In that case the app itself might not be doing much special.

I would like to stick with this app if possible, I like it for the most part. It'll be a real shame if you're really never going to implement this feature.

edit: https://en.wikipedia.org/wiki/Multimedia_Messaging_Service#Technical_description

E-mail and web-based gateways to the MMS system are common. On the reception side, the content servers can typically receive service requests both from WAP and normal HTTP browsers, so delivery via the web is simple. For sending from external sources to handsets, most carriers allow a MIME encoded message to be sent to the receiver's phone number using a special e-mail address combining the recipient's public phone number and a special domain name, which is typically carrier-specific.

It says "common", not standard, but I think it counts for something.

Aga-C commented 4 months ago

Ok, I've read a bit more and see that some mobile carriers convert MMS to e-mails, just by using an e-mail address instead of a mobile number. But it will never replace an e-mail client. In your request, you wrote:

MMS is essentially a limited form of email and I believe it should be possible to communicate both ways between them.

That's something we will never do, because as I said, technically e-mails and MMS are very different from each other and Fossify Messages will never be a real e-mail client.

However, we can provide the exception to treat e-mail addresses as mobile numbers and enforce that messages sent to them are always MMS. My only concern here is that it may become misleading to people, since not every carrier support it (e.g. I've tested it on my phone with stock SMS app and haven't received anything).

Soundtoxin commented 4 months ago

Right, my mistake saying it's the same as email. Apparently there are sometimes separate gateway emails for SMS as well, like in the case of AT&T. So it might not be best to force MMS. While a text-only MMS seems to work fine enough, some carriers around the world are removing MMS support recently, so being able to use SMS would be good also.

I found this article with a list of the gateway addresses: https://20somethingfinance.com/how-to-send-text-messages-sms-via-email-for-free/

AT&T: number@txt.att.net (SMS), number@mms.att.net (MMS)

Maybe you can find your carrier's gateway email in that list.