Real Time Presence is coming to Microsoft Teams
Exciting news for long-time users of Microsoft Teams. A new item has just showed up on the Microsoft 365 Roadmap – “Microsoft Teams – Real Time Presence“:
You may think that Microsoft Teams already has presence, so what is this all about? Well, since launch, Microsoft Teams has suffered from an issue where presence changes were not reflected automatically. For people that spend a lot of time coming on and off calls, or in and out of meetings, it could take up to 5 minutes for changes to presence to show. This would result in people thinking you were free when in fact you were on a call, or visa versa.
It’s been a real problem amoungst Teams users. A UserVoice item for this (raised by my Modality co-worker Graham Cropley) has 414 votes. Back in November, someone from the Teams Engineering team commented that a fix was being worked on, but we’ve not heard anything since then.
This is not entirely unexpected and I don’t really blame Microsoft for it. Teams is a web-based application which polls for data. However, presence changes need to be reflected more promptly than just waiting for the next poll request. It sounds like a fix is in the pipeline for this. My guess would be something like long-polling, or maybe an established abstraction like SignalR to use websockets when available, but fall back to other means if needed.
Regardless, with an expected release date of July 2019, we’ll find out soon.
As a developer, this is exciting news. Another very popular UserVoice item is the ability for a Presence API for Microsoft Teams. It had been worrying me that this API would suffer from the same timing issues as native presence, which would have greatly diminished its usefulness. Seeing that the presence lag is being sorted out first definitely feels like the right thing to do, and means that any future API will be able to be built on accurate data.
As someone who has had to deal with the problems of real-time messaging at scale, I understand how much work it must have been to fix this problem, so I think it’s right that we congratulate the Teams Engineering Team when this feature rolls out. It’s a change that many won’t notice, and those that do may shrug and say “well, it should have been like that from the start”, but developers will know the effort involved, and we say Thank You! 🙂