Teams apparently can't call when using Firefox

qaz@lemmy.world to Mildly Infuriating@lemmy.world – 1085 points –

Teams also doesn't support multiple "work" accounts, so I had to boot up a laptop to accept the call. 🤷

193

You are viewing a single comment

This is likely legacy code. Firefox used to have a lot of issues with WebRTC, so practically all video conferencing systems blocked it. Teams probably has some "block Firefox because it doesn't work properly" check that was written 5+ years ago and none of the current developers are even aware of its existence.

Well-coded ones did feature detection instead of checking the user-agent, meaning they automatically started allowing Firefox as soon as it implemented all the required features.

Feature detection is usually the way to go. If your website / webapp depends on a particular feature, check if that specific feature exists, rather than checking for particular browsers. Browser checks are still needed in some cases, for example Safari sometimes reports that it supports particular features but it really doesn't (or they're so buggy to the point where they're unusable), but that's relatively rare.

Feature detection is usually the way to go. If your website / webapp depends on a particular feature, check if that specific feature exists, rather than checking for particular browsers. Browser checks are still needed in some cases, for example Safari sometimes reports that it supports particular features but it really doesn’t (or they’re so buggy to the point where they’re unusable), but that’s relatively rare.

This is tough to implement when the feature is present, but implemented wrong. Or, even worse, when it's implemented right, but the most popular browser implements it wrong and almost everyone else follow suit for compatibility reasons, except for one that takes the stance of following standards. I know safari is notorious for this, think pale moon had those issues, too, and there are still echoes from the past from pre-chrome internet explorer, thank god it's finally dead.

Chrome is the new Internet Explorer.

At least Chrome is mostly standards-compliant and doesn't do anything too weirdly. I'd say Safari is the new IE - lots of weird bugs that no other browser has, and sometimes you need hacks specific to Safari.

That’s fair. I meant that more in terms of using market dominance to shape the browser market, and not in entirely good ways.

I’ll rue the day that every website insists it only works with Chrome because of some user-privacy degrading feature that Google insists is a core web technology.

However, Chrome is a browser collecting user data for a company whose business model it is to sell user data. Edge is a shitty bloatware collecting user data for a company that has (for now) a business model selling software licenses.

I wouldn't say it's "better" to use Edge, but I wouldn't install Chrome either(!) on any device whose data I care about.

whose business model it is to sell user data

So I know what you mean, but Google doesn't sell user data. That's a common misconception. The data is what makes the company valuable - they're not going to just give that to anyone with money. Instead, they sell your attention. Advertisers can target their ads based on data collected about you. Advertisers never actually see the data nor do they know exactly which users are seeing their ad - they just get aggregate statistics.

Having said that... Edge is basically Chrome but better (e.g. it uses less RAM). I use Firefox but if I didn't, I'd give Edge a try. It's unfortunate that Microsoft are trying to push it so hard, since it's actually a decent browser that's being ruined by Microsoft trying to force everyone to use it.

While I don't know of course whether Google actually sells the data itself, let me rephrase my original criticism: "whose business model is based on monetizing user data - which can lead to severe privacy breaches / leaks of sensitive personal data". Thanks for pointing that out, but I would say my prime concern remains.

I couldn't say that it is. Chrome team's usual approach is to make and release stuff first, write specifications later. By the time the other browsers come along, there's already both market adoption and bunch of dumb decisions set in stone as a standard. Most notable examples of this would be QUIC and WebUSB

This is tough to implement when the feature is present, but implemented wrong

Sometimes it's doable if you can call the API and check that the result is what you'd expect. For example, a long time ago some browsers incorrectly handled particular Unicode characters in JSON.parse. Sites could check for the incorrect behaviour and shim JSON.parse with a version that fixes the output.

I've never worked with WebRTC but I imagine it might be difficult to do that with some of its APIs given they require camera or microphone access (meaning you can't check for the bug until the user actually tries to use it).

Sometimes it’s doable if you can call the API and check that the result is what you’d expect

Yeah, you can even test visual and network stuff at a cost of latency, but it's hard and lots of developers are too lazy to do this, I've often seen sites that don't even check if function exists before calling it, crashing the entire site because adblock cut out google tags or they call API that isn't even implemented in firefox.

I’ve never worked with WebRTC but I imagine it might be difficult to do that with some of its APIs given they require camera or microphone access

I did. It's a complete mess. First and foremost exactly because it's a soup of completely unrelated tech - P2P, webcams, audio in&out, stream processing and compression, SIP(!?). There's no good debug tooling available and lots of stuff is buried inside browser's implementation. And, on top of that, any useful info on the topic is usually buried under lots of "make a skype killer in 5 minutes" kind of libraries with hardcoded TURN servers - the developer's overpriced TURN servers, that is.

This is indeed the case. I use firefox daily, including for teams. I have to fake my user agent to do it, but it works. Its purely teams just saying fuck you to firefox..

Could you share your user agent string please? I am still on the Teams desktop app for Linux, but that's been discontinued in 2022 already, so I am anticipating the day it will stop working altogether. And I haven't even managed to log in to teams web with Chromium yet (and no, I don't want to install f*cking Chrome itself) - I get a permanent login loop on successful username / password :/

Edit: never mind, I found it here: https://sopuli.xyz/comment/6224391

User Agent String that works for me:

Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36

You should update the spoofed agent occasionally or else you may get an update warning from some sites and get blocked. Just check what a current version of an allowed browser reports and copy it.

Yeah, probably a good idea. Nevertheless, I am pissed (but not surprised) to see that Firefox is getting locked out on purpose. A sincere "Fuck you" @Microsoft.

Do you get all teams functionality? I tried user agent sppof but couldn't join conference calls properly on work teams so back to Chrome or was

There are a few quirks. Mostly doing video calls that doesnt work and makes me unable to join calls. Not a big loss for me haha.
But as long as i dont enable video on my end, its fine.
Teams is very fragile though, and a few of my privacy addons totally makes teams glitch once in a while

They might be doing feature detection on one of the more obscure APIs, too. I know there’s some audio manipulation APIs that aren’t available.

Someone complained about Discord deliberately blocking Firefox users because of that, but it turned out that spoofing the user agent would actually break the feature.

Teams used to have more features on Firefox. Microsoft has intentionally started stripping off shit to move people to edgium

Oh... I didn't know this. Maybe it is intentionally malicious then. Hmm.