signalapp / Signal-Android

A private messenger for Android.
https://signal.org
GNU Affero General Public License v3.0
25.53k stars 6.12k forks source link

Drop support for SMS/MMS, because it's making it harder for people to switch to Signal #6134

Closed micahflee closed 6 years ago

micahflee commented 7 years ago

Signal is great for sending encrypted messages and having encrypted voice calls with other Signal users, but pretty bad for SMS/MMS on Android. Here are a few anecdotes:

I think Signal for Android would be a better app if it just gave up on being an SMS/MMS app, and were more like Signal for iOS. Or at least SMS/MMS support should be discouraged, where advanced users can enable it in their settings if they're comfortable troubleshooting Android issues.

jeremymasters commented 7 years ago

Just don't use it as the default SMS messenger in the settings.

riyapenn commented 7 years ago

For your partner's classmate: She will have to long-press to send an SMS/MMS message to this contact until they unregister.

For your cypherpunk friend: It could be that they could go to Signal > Menu > Settings > SMS and MMS > enable 'WiFi Calling' compatibility mode by making sure the slider is to the right and blue.

moxie0 commented 7 years ago

I agree that MMS support is probably the weakest functionality in Signal, and at this point it doesn't seem like something that we can just buckle down and "solve." Each network does something slightly different and many devices behave inconsistently, so we'd need someone to be dealing with all of those tweaks full time, which is probably the last job that anyone on the planet world want to sign up for. If you're on the provider I use with any device I've ever owned, it works great. =)

Android finally introduced an MMS API, but it's Lollipop-only, and is still flaky. I hoped that eventually all the SMS apps would get together and build a library that handles all the inconsistencies, but other than a few false starts, that doesn't seem to be happening.

So MMS support hurts adoption. On the other hand, supporting Signal as an integrated messenger greatly helps adoption. People are enabling Signal as their default messaging app for a reason to begin with. It's convenient, particularly when someone doesn't have many Signal contacts yet. It also "resurrects" iOS users who message Android users in iMessage and then automatically get a reply in Signal when that person writes back. It creates opportunities for "gamification" where we could have little mini-challenges in the app to increase the number of encrypted messages they send or the number of Signal contacts they have.

These (and more) are exactly why Facebook messenger on Android is pushing itself as the default SMS/MMS app now too.

So it both helps and hurts adoption. What we don't really know is the net effect, which is is the kind of thing that I wish we had the ability to measure -- but of course, no analytics. =(

mfb commented 7 years ago

This all makes me curious how the default messaging app (and presumably FB Messenger) have managed to make SMS/MMS work more or less perfectly, while Signal has to spend years getting bug reports and fixing edge cases for various countries, carriers etc.

FeuRenard commented 7 years ago

This all makes me curious how the default messaging app (and presumably FB Messenger) have managed to make SMS/MMS work more or less perfectly

💰 💸 💵 🤑 and many dev man hours

motatuc commented 7 years ago

@micahflee

Honestly, I see no reason why SMS/MMS support should be dropped. Personally, I never had problems with this and I am happy that Signal supports these functions. I definitely don't want them to be removed.

As for your problems: You can just choose another default app for MMS/SMS.

jcsp101 commented 7 years ago

Disagree completely - I use Signal for SMS/MMS regularly and both work perfectly for me on T-Mobile USA, groups and all.

If you don't like Signal for SMS, don't set Signal as your SMS app - you can use a separate app like Google Messenger easily.

ZackTS commented 7 years ago

What if signal would act as a SMS hub server? All SMS conversation and groups would be orchestrated and organised from within Signal. Maybe like this it would also be possible to take sms users into signal group. Less secure but a huge possibility to drag people to Signal. And maybe like this it would be easier to become independent from Telekom Carriers because they would transport only one on one Standard sms then.

micahflee commented 7 years ago

@moxie0 Those are good points. It really would be useful to have some more data to make an educated decision about continued MMS support. I don't know if MMS issues are actually a major source of frustration for Signal users or not (they just seem to be in some of the conversations I've had) -- I bet a formal user study of Signal for Android users could provide useful data about this. All that takes is :moneybag: :money_with_wings: :dollar: :money_mouth_face:.

For other people in this thread, I know that all of the issues in the anecdotes I listed are solvable, and I'm not looking for solutions. Just the fact that people run into problems like this so frequently, that it doesn't often "just work", and that this is turning some new users off of Signal, is why I opened this issue.

johanw666 commented 7 years ago

It seems at least some providers are making that decision already: T-Mobile Netherlands will drop MMS support in 2019: https://translate.google.com/translate?hl=en&sl=nl&u=https://tweakers.net/nieuws/120637/t-mobile-stopt-in-nederland-in-2019-na-zeventien-jaar-met-mms.html&prev=search (Google Translate), https://tweakers.net/nieuws/120637/t-mobile-stopt-in-nederland-in-2019-na-zeventien-jaar-met-mms.html (original Dutch article).

nrizzio commented 7 years ago

Could we only offer SMS/MMS functionality only when we detect we're on a carrier that we know we do a good job of handling?

RiseT commented 7 years ago

I consider Signal's SMS/MMS functionality the "foot in the door". From my personal real-life experience:

So when you convince enough people to use Signal as their default SMS app (with "additional features"), you're growing a critical mass to attack the much tougher (because of its locked-in user base) opponent.

When dropping SMS/MMS, WhatsApp is the direct competitor for Signal. Currently, one could argue that it competes with e. g. Google Messenger. Which is a good thing, as it's easier to beat because of the non-proprietary protocol (no locked-in user base).

Personally, I can say with confidence that I wouldn't have convinced many "ordinary" people to install Signal if it weren't as a replacement for their default SMS app.

Stuie commented 7 years ago

To all the respondents who said something along the lines of "If you don't like it then just go into your settings, go to the default SMS handling app, and pick a different app from the list," I think you're expecting that some people are "power users," which is the opposite of one of this project's guiding development principles.

  1. There are no power users. The idea that some users "understand" concepts better than others has proven to be, for the most part, false. If anything, "power users" are more dangerous than the rest, and we should avoid exposing dangerous functionality to them.

Expecting users to go into some obscure system setting and pick a different app, even for their own good, is not going to work. How many people over 40 have ever installed a non-default keyboard on their phones? How many people in the entire world have ever used a DVORAK keyboard?

I don't think Signal should drop support for SMS/MMS, but I do think it should be 100% opt-in, with a low barrier for entry.

Also, @moxie0, what do you have in mind for analytics? Metrics have proven to be one of the most useful things I have ever implemented in an app, and I would love to help implement them in Signal, but the privacy concerns here make it a whole different beast.

ghost commented 7 years ago

Some people may like SMS support and it works for them, but more often I hear about newbies trying out Signal only to have it mess up their SMS/MMS and they turn off SMS support and install Textra or Google Messenger since those apps have better support and resources. Some people even uninstall Signal because of how it "messed up their SMS".

Signal's development team has dwindled, but not before wasting precious man hours fixing SMS/MMS issues. What's going to happen when RCS rolls out? Wasting man hours on that as well?

We need to follow the Whatsapp/Telegram formula of success and work towards the total replacement of SMS and RCS in favor of open, secure IM only. Signal of all apps should be doing this as SMS is inherently insecure and controlled by corporate interests, so the sooner we distances ourselves from it, the better.

johanw666 commented 7 years ago

ENCRYPTED sms had its use, as a fallback option for those who were unable to use the internet for whatever reason (costs, total internet blockade, partial internet blockade). The last point has partially been addressed in the later builds but the second issue can still be an issue in some countries where private communication is required. And unlike the US, in most countries you can perfectly well get a non-internet enabled plan with a smartphone. I know many people who have even expensive smartphones who can only internet on them if they are on wifi.

So I use Silence for sms and Signal for IM/calls. I would have prefered one solution but that's apparently not going to happen.

strugee commented 7 years ago

@johanw666 GitHub issues aren't discussion forums: https://github.com/WhisperSystems/Signal-Android/blob/master/CONTRIBUTING.md#issue-tracker-is-for-bugs

Please keep discussion on the topic of regular SMS.

Lenbok commented 7 years ago

SMS/MMS is absolutely "foot in the door" functionality and if it weren't for that I and my family would not have installed it in the first place. Regular users don't want multiple messaging apps and Signal with SMS/MMS has the potential to be the iMessage For Everybody.

My only gripe with the current functionality is that, particularly for communicating with teens where mobile data may be limited, Signal needs an automatic fallback mode so that if a sent Signal message hasn't been delivered to the recipient after some relatively small time, the message is automatically resent using SMS/MMS (obviously the user should probably need to enable this security/convenience tradeoff). As it is, we're unfortunately on the edge of reverting to regular, reliable SMS.

strugee commented 7 years ago

@Lenbok can you clarify why mobile data can be limited? I don't know anyone my age (~18) who has this problem (also bear in mind that non-media Signal messages are very small, bandwidth-wise...)

strugee commented 7 years ago

You should probably file a separate issue though, so we can keep this one on track

Stuie commented 7 years ago

Pretty sure he means limited coverage, and even if not, there are plenty of providers that limit bandwidth.

It doesn't matter if your message is 100b, if you've just used your last 200MB streaming a video.

Lenbok commented 7 years ago

@strugee, @Stuie Yes, prepaid plans with hard caps on data are common here, see discussion in #6377 (and newly filed #6390)

Seltyk commented 7 years ago

This. Signal either needs to fix their broken-as-hell group messaging code or just drop it altogether. The advanced setting idea is nice too, that way the crazy ones among us can have their fun using root or what have you.

Until this is fixed, either (a) stop using groups and enable all message types in all of roaming, Wi-Fi, and data, or (b) use Textra for MMS/SMS and Signal for, well Signal. It's not encrypted but it's a clean-looking, decent enough replacement

icasdri commented 7 years ago

I thoroughly disagree, and in fact have had the opposite experience. The stock Android application consistently screws up MMS, constantly failing connect to the server, while MMS support in Signal (groups and media) has been flawless and seamless.

A more reasonable approach than simply dropping MMS support would be to disclaim its potential flakiness (from my understanding it depends on the carrier, so maybe detect that), and leave it as an option for users.

strugee commented 7 years ago

That might be a reasonable middle ground. Occasionally put a banner (similar to the "invite to Signal" banner) at the top of MMS conversations that says something along the lines of:

Group conversations not working?

Sometimes carriers don't handle MMS messages correctly - in these cases the stock texting app might work better. If you want to try that, tap to disable Signal's MMS support.

strugee commented 7 years ago

Maybe there's some heuristics we can use here too? Not sure. Showing a prompt like that on even 100% functional MMS conversations seems unideal.

scotte commented 7 years ago

With hangouts removing SMS, the whole reason I'm starting to use Signal is because it has SMS support built in, and I expect this will make it much easier to adopt for less technical family members who don't understand the difference between SMS, chat, and anything else.

As many others have mentioned, it's a feature that nobody has to use if it's not working for them.

RiseT commented 7 years ago

this will make it much easier to adopt for less technical family members who don't understand the difference between SMS, chat, and anything else.

I have to say I've been shocked recently about the many people that don't know about or understand the difference between a SMS and and an internet-based message. I've spoken to a person who had asked his mobile provider (to no avail) if he has to pay per Signal message (Signal iOS - so no SMS). Being used to iMessage, in his mind there are just messages "he has to pay for" and other "he doesn't have to pay for" (that's what he said they told him at the Apple store).

strugee commented 7 years ago

@RiseT yeah, that's an indication of good design on iMessage's part.

jcsp101 commented 7 years ago

@strugee not really, i've seen this happen with video calling vs calling with non-galaxy users when talking to samsung galaxy users as well

strugee commented 7 years ago

@jcsp101 you haven't explained why you think it's bad design. @RiseT said above:

many people that don't know about or understand the difference between a SMS and and an internet-based message

Another way to phrase this is:

many people that don't have to know about or understand the difference between a SMS and and an internet-based message

You can argue that the interface doesn't do a good job communicating "failures" but in general I think this is a Good Thing™.

jcsp101 commented 7 years ago

@strugee never said it's bad design, i said it's not inherently good design.

much like iMessage is great until you get a new non-apple phone and apple holds your SMS hostage because you don't know or understand the difference between SMS and iMessage and how iMessage works as a service.

jeremymasters commented 7 years ago

it would probably save the devs some time if discussion was held here

ClubWDW commented 7 years ago

Let's not forget the purpose of Signal. . .encrypted communications. Most people are change-averse and as such, if they find it the slightest bit inconvenient, forget it. I have most all my family members and several friends and acquaintances on Signal solely because once it is installed, they can just use it. Take away that ability and watch the adoption rate plummet, and then we are back where we started; only geeky people who care about encryption actually encrypting. I get Micah's point and it can be aggravating sometimes (for instance, my wife, a non-Signal user, sends multiple photos via MMS. . .I get only the first one), but at the end of the day, I will take the trade-off.

Carm01 commented 7 years ago

I think @Cormak nailed it.

This should be treated as a business not a personal project with personal opinions. Look at Telegram 100X the user base. They do not have a built in sms/mms support. I believe mms/sms is a 20 year old technology to begin with. Can we move into the future? iOS users seem to get along fine using WhatsApp and Telegram NOT as the default mms/sms application, and yet I never heard how any iOS user was complaining that they had to go into Signal, or into WhatsApp or Telegram or another messaging app they use it to message people? It seems to be the Android user base squabbling over this matter!

The iOS business model is extremely successful although lacking in diversity. Android is for people who want to customize not for someone who is not tech savvy; as why I would never recommend android for a non tech savvy person. iOS just works and despite what we Android users think about the iOS dictatorship. It works flawlessly for idiots. I like iOS's refinements but not their philosophy as why I have Android, but nevertheless it is a VERY successful business model.

Too much resources and time have been wasted on mms/sms support. I am sure some of you all have WhatsApp or Telegram as mentioned. It just works period. Even though Facebook messenger has sms/mms support it is nothing like WhatsApp. They could have very easily added support for sms/mms in WhatsApp but still it has what OVER 1 billion users, it is successful as is Telegram with 100 MIllion+. Aside from the convenience of of a single app handling messaging which is indeed nice. I think we need to wake up and look at the cold hard fact about the situation.

@moxie0 said it in his first two paragraphs proves that sms/mms: 1) It has been a problem 2) It currently is a problem 3) It will continue to be a problem for the foreseeable future.

The first two paragraphs are factual the rest is nothing more than speculation as there is no way to prove or disprove what is being stated and is personal opinion with no factual support behind it. Aside from Facebook messenger being able to be made default on Android. What about iOS users, I am sure they use it just fine without the default as mentioned with the other apps on iOS. Once again it seems to be all about Android and making it default and ignoring the reset of the facts of success as above.

Everyone needs to ask themselves this? If i was running a business would I not want to do what is successful and or squander resources that you admit are problematic and may not ever get fixed due to lack of resources? I know what I would do. I would want my business to be a profitable as possible and if I was not able to successfully implement something I would not so so until it works as flawlessly as possible. If there is a problem with something either fix it or remove it if you cannot fix it like sms/mms support.

If this is all about Android users and them making it a default app and MUST having sms/mms support then this is very well a sinking ship and to hell with the other FACTS.

Best Regards

automated-signal commented 6 years ago

GitHub Issue Cleanup: See #7598 for more information.