CRM = On Premises, version 9
Exchange = Online
Hybrid connector = all setup
Server Side Sync = Configured. Test Connection results in 3 big green ticks
Open my own mailbox. Re-Approve email and test and enable mailbox. Incoming/Outgoing are listed as successful on the mailbox and I get the standard email in my inbox saying its now connected.
However when I try to track almost anything either in Outlook desktop or OWA it gets stuck in track pending. Wait the 15 minutes for sync - still stuck. The exception is the email sent from CRM 'Your mailbox is now connected' Those are fine.
Checked https://support.microsoft.com/en-us/topic/an-email-or-appointment-tracked-with-dynamics-365-app-for-outlook-shows-as-track-pending-6396f1e8-7a03-69a7-7035-18fe2cec9d93 - but I've done everything required there.
I check the alerts on my mailbox. Warnings for all the emails I've tried to track.
"An unknown error occurred while receiving email through the mailbox "[email subject]". Email server error code is Exchange server returned UnknownIncomingEmailIntegrationError -2147220969 exception. Searching the web for the message it gives other error codes. I looked up the error code on web service error codes. Name: ObjectDoesNotExistMessage: The specified object was not found. That's a classic and not going to get much further.
I see another error rarely in the app itself "Cannot connect to exchange". Search that too and get https://support.microsoft.com/en-us/topic/-can-t-connect-to-exchange-message-appears-when-using-dynamics-365-app-for-outlook-8e280900-70df-0843-0f08-8c5d85b91c9c - which is Exchange on premises - i.e. nothing to do with our setup of on prem CRM hybrid connecting to Exchange online. Cause suggests its a problem with Oauth though, so I decide to revisit the SSS setup bits on OAuth to see if I've suddenly missed something.
Went to https://docs.microsoft.com/en-us/previous-versions/dynamicscrm-2016/deployment-administrators-guide/hh699726(v=crm.8)?redirectedfrom=MSDN and checked ADFS server (version 6.3.0.0 apparently according to the about - though its on Server 2012). Forms Authentication is ticked for Intranet.
Look at the next step $ClaimsSettings = Get-CrmSetting -SettingType OAuthClaimsSettings - Output it, because I swear I did this last time, and it indeed is set to Enabled = True.
Back on the ADFS server, I re-run the following as it was reccomended to try: Set-AdfsProperties -WIASupportedUserAgents @("MSAuthHost/1.0/In-Domain","MSIE 6.0","MSIE 7.0","MSIE 8.0","MSIE 9.0","Trident/7.0","MSIE 10.0","MSIPC","Windows Rights Management Client","MS_WorkFoldersClient","=~Windows\s*NT.*Edge")
And on the guide above I try re-running the script on AvDFS Add-AdfsClient -Name "Dynamics 365 App for Outlook" -ClientId [our id] -RedirectUri https://[crmurl]/crmmailapp/code_auth.aspx
I could have sworn I did this last time without issue, but this time I get an exception: The client id must be unique across all clients. I'm guessing that's because I already did it the first time. If I go Get-AdfsClient -ClientId [clientid] I get the matching parameters and it is enabled, so I presume I've covered the bases there.
Tried going over https://docs.microsoft.com/en-us/dynamics365/customerengagement/on-premises/deploy/post-installation-configuration-guidelines-dynamics-365#additional-steps-for-clients-unable-to-connect-to-the-dynamics-365-server-via-ifd reccomended by Microsoft from previous thread, specifically remove site authentication providers.
Tried removing and redeploying the app.
Enabled protected mode in Local intranet (it already was for internet) and added our CRM url to the trusted sites.
I am a system administrator so it is not security role related.
I'm not really sure where to go from here? Changes in IIS? I saw a thing about running a Powershell script along the lines of Grant-AdfsApplicationPermission -ClientRoleIdentifier "" -ServerRoleIdentifier https://auth.abc.com - but the grant-adfsapplicationpermission command is not recognised on my adfs server, seems to be for a later version of windows server?
Still get the same cannot connect and the unhelpful error code after all of the above.