this post was submitted on 18 Feb 2024
78 points (95.3% liked)

Android

17659 readers
201 users here now

The new home of /r/Android on Lemmy and the Fediverse!

Android news, reviews, tips, and discussions about rooting, tutorials, and apps.

πŸ”—Universal Link: !android@lemdro.id


πŸ’‘Content Philosophy:

Content which benefits the community (news, rumours, and discussions) is generally allowed and is valued over content which benefits only the individual (technical questions, help buying/selling, rants, self-promotion, etc.) which will be removed if it's in violation of the rules.


Support, technical, or app related questions belong in: !askandroid@lemdro.id

For fresh communities, lemmy apps, and instance updates: !lemdroid@lemdro.id

πŸ’¬Matrix Chat

πŸ’¬Telegram channels / chats

πŸ“°Our communities below


Rules

  1. Stay on topic: All posts should be related to the Android OS or ecosystem.

  2. No support questions, recommendation requests, rants, or bug reports: Posts must benefit the community rather than the individual. Please post to !askandroid@lemdro.id.

  3. Describe images/videos, no memes: Please include a text description when sharing images or videos. Post memes to !androidmemes@lemdro.id.

  4. No self-promotion spam: Active community members can post their apps if they answer any questions in the comments. Please do not post links to your own website, YouTube, blog content, or communities.

  5. No reposts or rehosted content: Share only the original source of an article, unless it's not available in English or requires logging in (like Twitter). Avoid reposting the same topic from other sources.

  6. No editorializing titles: You can add the author or website's name if helpful, but keep article titles unchanged.

  7. No piracy or unverified APKs: Do not share links or direct people to pirated content or unverified APKs, which may contain malicious code.

  8. No unauthorized polls, bots, or giveaways: Do not create polls, use bots, or organize giveaways without first contacting mods for approval.

  9. No offensive or low-effort content: Don't post offensive or unhelpful content. Keep it civil and friendly!

  10. No affiliate links: Posting affiliate links is not allowed.

Quick Links

Our Communities

Lemmy App List

Chat and More


founded 1 year ago
MODERATORS
 

Is RCS an open standard? I've seen some people say it is and others it isn't and now I'm very confused. Can you please give me a definitive answer?

all 37 comments
sorted by: hot top controversial new old
[–] dev_null@lemmy.ml 91 points 8 months ago* (last edited 8 months ago) (8 children)

The confusion stems from the fact there no APIs in Android that let apps use RCS. Only Google can use it on Android and no other apps can use it. Anyone can make an SMS app. Only Google can make an RCS app.

It is an open standard, meaning you are free to create your own operating system for phones that implements RCS. But Google doesn't let you use it on Android, so in practice it's closed.

Plus, Google's implementation of RCS adds extra features (like encryption) that aren't part of the standard. So even if you create your own operating system that implements RCS, it will still be incompatible. So that's another reason it's not really open.

[–] brax@sh.itjust.works 32 points 8 months ago (2 children)

That seems incredibly dumb and backwards. I guess doing it this way helps them expedite its death like all their other products lol

[–] Carighan@lemmy.world 8 points 8 months ago (1 children)

I was about to say the dumb and backwards part was not having basic stuff like encryption in the standard. 🀷

[–] seang96@spgrn.com 1 points 8 months ago

This is because the telecom providers were apart of designing the standards and implementation but did not care about it and Google released their own service for it. There is no money in it for the telecom providers to support it.

[–] T156@lemmy.world 6 points 8 months ago

It would also let them claim that its an open standard that anyone can use and they're contributing to open source, even if no-one could effectively use it in the same way that they implemented it.

It's XMPP all over again.

[–] Mountaineer@aussie.zone 18 points 8 months ago (3 children)

Only Google can make an RCS app

Yes and no.
You don't need to make your own OS, but you do need to implement support for the RCS protocol within your app, rather than piggyback on Googles APIs.

I don't like it, but there's no legal requirement for google to provide those APIs, like they did with SMS etc.

[–] lemmyvore@feddit.nl 11 points 8 months ago (1 children)

That's fair but that also means their "RCS" is really just a name they slapped on their latest proprietary messaging platform.

We know they've been trying to get ahead in the messenger game for many years, now maybe they figured if they use the RCS angle it might get some traction.

Or maybe I'm completely off, who knows. Google's approach to messaging has always baffled me. They could have had a ton of traction and market share by now if they'd have just stuck with one. Why they keep tearing them down and building another one, and why they think this latest one will do any better, I have no idea.

[–] Mountaineer@aussie.zone 5 points 8 months ago (1 children)

You can interoperate with googles RCS.
If you are willing and able to enter a partnership like Samsung, you can do it fully (including encryption support etc).

Google are determined to not make it easy, and I agree with you, it appears to be yet another messaging land grab.

Trying to put myself in their headspace for a moment, one justification for making it hard is to stop thousands of apps coming out declaring "full RCS support!" through the APIs, then screwing the pooch (through poor security or deliberate back doors or or or).
Right now Google are desperately attempting to make RCS happen, after almost a decade of trying and failing to make various carriers play ball.
They do not want any bad press about how feature poor/insecure/slow/buggy it is right now.

[–] danhakimi@kbin.social 4 points 8 months ago (1 children)

If you are willing and able to enter a partnership like Samsung, you can do it fully (including encryption support etc).

Samsung can interoperate. We cannot. We cannot enter into partnerships with Google. We are people, Samsung is a massive corporation. You understand the difference, right? Google will not let us access their servers. They're not making it difficult, they're not making it possible at all.

[–] Mountaineer@aussie.zone 1 points 8 months ago

I agree, that's why I said "and able"

[–] asdfasdfhuomenta@sopuli.xyz 4 points 8 months ago* (last edited 8 months ago)

https://github.com/Hirohumi/rust-rcs-client

Someone has written an open source RCS client prototype, but it has been only tested in China, where carriers do provide their own RCS servers as they are supposed. The author has not tested it with Google's servers, which are probably blocked in China.

If you want to use SIM card based authentication, you need to have the app installed as a system app. That however is not an option for Google's servers anyway, since they need to be able to work without carrier co-operation. Google uses SMS based authentication instead.

There does not necessarily need to be anything in Google's servers that would reject non-Google RCS implementations: the SMS based authentication is defined in the spec, too.

Personally, I would not want the Google's proprietary implementation to serve an API, but there to be a fully open source client instead.

[–] danhakimi@kbin.social 3 points 8 months ago

you don't just need to support the protocol, you need a server to communicate with your client, and Google is not here to federate its RCS service with Bob's summer Github project.

So what, if RCS becomes the standard I'm going to lose the ability to choose what messaging app I use? I very much don't like that.

[–] lemmyvore@feddit.nl 3 points 8 months ago (1 children)

To add to this, even if it were really fully open, like, say, Lemmy is, because it requires servers there's the issue of being allowed on someone else's server and whether servers are modified, and whether server owners want to interoperate and so on.

In some ways the RCS debacle has been similar to the Fediverse debacle about federating with Threads, or with undesirable servers. Even if the protocols are open there can still be bad actors.

[–] danhakimi@kbin.social 3 points 8 months ago

Matrix is the federated messaging network. It's also end to end encrypted, although people have pointed out issues with server security and with metadataβ€”which is why they're working on peer to peer tech.

RCS is not similar to any federated technology at all. It's operated exclusively by Google in the US and most other countries. The technology was created, from the ground up, for carriers. But even carriers couldn't actually make it work in practice, so they asked Google to take over. It's a fucking albatross. We, as a society, need to drop it.

[–] _thisdot@infosec.pub 2 points 8 months ago

This seems to imply that you need a fork of Android, if you’re to build a messaging app that uses RCS.

But my understanding is what you really need is essentially an RCS server.

[–] danhakimi@kbin.social 1 points 8 months ago

There is an RCS test app, we could theoretically modify that, but I guess nobody has for some reason. I don't particularly want people to use it, Matrix makes so much more sense.

[–] can@sh.itjust.works 1 points 8 months ago (1 children)

Doesn't Samsung messages use it too?

[–] GenderNeutralBro@lemmy.sdf.org 2 points 8 months ago (2 children)

IIRC Samsung has partnered with Google and uses Google's relay.

[–] can@sh.itjust.works 4 points 8 months ago

It's disappointing it takes a partnership.

[–] danhakimi@kbin.social 1 points 8 months ago

Google is the exclusive RCS provider for all carriers in the US and many other countries. The desire for an AOSP android API is for developers to be able to write clients the way they do SMS clients, not to replace Google's serversβ€”that's a pipe dream. IIRC, Google actually helped Samsung develop RCS support in their app. I'm not sure why it's so difficult to implement.

[–] entropicdrift@lemmy.sdf.org 22 points 8 months ago

It is an open standard. The end-to-end encryption is not an open standard, nor are the stickers, those are both proprietary to Google Messages but the rest is open.

[–] nudnyekscentryk@szmer.info 11 points 8 months ago* (last edited 8 months ago) (1 children)

Yes it is, it's been developed by the GSM Association, but Google does have de facto monopoly in the market right now by their ~~Jio~~ Jibe virtual carrier. RCS can be freely implemented by carriers and device manufacturers independently of that, but so far only Samsung, T-Mobile USA and Verizon did so β€” everyone else uses Google's Messages. Importantly, different RCS implementations can talk to each other, just like email servers, or Lemmy instances.

Apple has been encouraged to enable RCS compatibility in iMessage in a loud campaign by Google, but they are obviously not very eager to do that, as their own research shows the closedness of Apple ecosystem and messaging system is a main driving factor of sales. This has been revealed in the Apple vs Epic Games case hearings

[–] ElPussyKangaroo@lemdro.id 2 points 8 months ago (2 children)

What's that about Jio? I use Jio and Airtel and both support RCS so... I'm confused...

[–] SameOldInternet@lemmy.world 3 points 8 months ago (2 children)

They said Google has a monopoly using their own Jio virtual carrier. They never said Jio doesn't support RCS.

[–] ElPussyKangaroo@lemdro.id 1 points 8 months ago (1 children)

I might need to read up on what a virtual carrier means...

Any suggestions?

[–] SameOldInternet@lemmy.world 2 points 8 months ago (1 children)

I really wouldn't know. In this context I assume it means it is not deployed like traditional mobile networks are. The missing components being the hardware side like putting up towers etc.

[–] ElPussyKangaroo@lemdro.id 1 points 8 months ago

I see... Well, thanks anyway 🫑

[–] nudnyekscentryk@szmer.info 1 points 8 months ago

I meant Jibe and yes I never said Jio or Jibe don't support RCS. Quite the contrary

[–] nudnyekscentryk@szmer.info 3 points 8 months ago* (last edited 8 months ago) (1 children)

wait you're right I messed up, let me edit that part out. I swear it used to say that Jio runs RCS infrastructure for Google.

edit: It was JIBE

[–] ElPussyKangaroo@lemdro.id 1 points 8 months ago

JIBE! Yes! I remember this name!

[–] danhakimi@kbin.social 9 points 8 months ago

It's kind of open. It's pretty much open for carriers to implement on the server side, and for OEMs to develop on the client side. There is an open source client in AOSP's RCS Test App, but for one reason or another, as far as I know nobody's attempted to implement it in an actual usable client app. I don't believe there's a server reference implementation. And, in the US, all the carriers' RCS services are run exclusively by Google, so there's no real point in attempting to set up your own server. Apple might be able to navigate the politics with carriers and with Google to make something work, if it wants to, but it's really not a standard for us to play with.

Use Matrix Instead.

[–] sbv@sh.itjust.works 7 points 8 months ago

Yeah, there are links to the standard on the Wikipedia page

[–] suzune@ani.social 4 points 8 months ago* (last edited 8 months ago)

It may be open as concerns specs, but in most countries you'll pay much for using provider services instead of internet.

On the other hand it's closed, because no one except big mobile comms can offer this service. It's better to avoid it. The only way to have free communication standards is to use the good old internet instead of the infrastructure of the provider.

[–] possiblylinux127@lemmy.zip -2 points 8 months ago

No, not really