OfficeDev / microsoft-teams-library-js

JavaScript library for use by Microsoft Teams apps
https://docs.microsoft.com/microsoftteams/platform/
Other
425 stars 192 forks source link

Modern/New Outlook deeplink after authentication in browser does not open Outlook #2234

Open gercobrandwijk opened 4 months ago

gercobrandwijk commented 4 months ago

Implemented the external OAuth provider flow as described in https://learn.microsoft.com/en-us/microsoftteams/platform/tabs/how-to/authentication/auth-oauth-provider.

This works fine when using the new Teams, after the authentication flow in the browser is finished a popup is shown about opening MS Teams, after which my app is succesfully logged in.

When using the same app in the new Outlook, the authentication flow works fine till that last popup about opening an external app is shown: this popup shows that it wants to open MS Teams, which is wrong, because it should open MS Outlook. When still clicking 'Open', nothing happens.

image

TeamJS version: 2.21.0 Outlook version: 1.2024.319.300 (client version 20240315003.09)

gercobrandwijk commented 4 months ago

As far as I can see, its a bit of the same problem as https://github.com/OfficeDev/microsoft-teams-library-js/issues/1696, but there the issue is more specifically about Microsoft365 app on iOS.

onmomo commented 4 months ago

As far as I can see, its a bit of the same problem as #1696, but there the issue is more specifically about Microsoft365 app on iOS.

@gercobrandwijk I think it's pretty much the same issue. Instead to hard code the Microsoft Teams (work or school) app url as described in the current docs, one should redirect to the url provided in hostRedirectUrl. Unfortunately, this parameter is not implemented across the board. This also happens on Windows Outlook (new) desktop app. It seems very likely that MS did not rollout support for the hostRedirectUrl parameter across their app landscapes on desktop and mobile, which basically prevents implementing external auth flow.

jekloudaMSFT commented 4 months ago

Hi @gercobrandwijk, thanks for raising this. The Outlook team is still rolling out the changes that @onmomo described to resolve this issue. We'll update the external OAuth documentation and let you know on this thread when this is resolved.

vikramtha commented 4 months ago

@gercobrandwijk Unfortunately, there is not an ETA for this fix at the moment as the team is committed on Nested App Auth. For now, we will work to bring more functionality but it is probably better to rely on the Outlook Win32 client as that should work properly.

gercobrandwijk commented 4 months ago

@jekloudaMSFT @vikramtha Thank you both for your comments.

When will the 'new' outlook be released as the standard Outlook? Currently only a few of our customers are complaining that they cannot use our app (because the login does not work) in the new Outlook, but when it is becoming the standard then ALL of our customers will have this problem, which is of course not acceptable.

This of course also applies to the other applications where it does not work correctly: https://github.com/OfficeDev/microsoft-teams-library-js/issues/1696#issuecomment-1979154860

gercobrandwijk commented 3 months ago

@jekloudaMSFT @vikramtha Is there already any update that you can share?

krubenok commented 3 months ago

Hi, I work on TeamsJS App support in Outlook - we've got this issue on our backlog and hope to resolve it soon. Unfortunately I do not have a date I can share but I can assure you that Classic Outlook for Windows support will not end until 2029 per some earlier announcements. That being said it is our intention to solve this issue in New Outlook for Windows and I hope to be able to share a more satisfying answer soon.

gercobrandwijk commented 1 month ago

@krubenok Any update from your side about this?

krubenok commented 1 month ago

Unfortunately I don't have a date yet as we have been fully occupied with urgent work. I am hoping we can get to it soon and will share here when I have more details on a timeline.