Guess what happens if you setup your CsHostingProvider incorrectly when deploying Skype for Business on-premises with Office 365 UM? Calls won’t make it to voicemail and a somewhat inaccurate error message from SfB might distract you from the fix.
Here’s the relevant part of the trace of a call that the Edge server is trying to send to O365 UM:
TL_ERROR(TF_DIAG) [sfbedgepool\contoso_svr00]0694.08E8::12/01/2016-09:47:52.868.00002010 (SIPStack,SIPAdminLog::WriteDiagnosticEvent:SIPAdminLog.cpp(833))  $$begin_record Severity: error Text: Split domain (cross-premise) routing is disabled Result-Code: 0xc3e93d8a SIPPROXY_E_EPROUTING_MSG_SPLIT_DOMAIN_DISABLED SIP-Start-Line: INVITE sip:email@example.com;ms-organization=Contoso.onmicrosoft.com SIP/2.0 SIP-Call-ID: 0f5de291-6adb-457e-b12d-60b3a207748a SIP-CSeq: 253 INVITE Peer: exap.um.outlook.com:5061 Data: cause="Possible server configuration issue";summary="Shared address space routing (hosting of users on multiple deployments) is disabled";external-domain="contoso.com";external-type="domain-type-local";internal-domain="contoso.com";internal-type="domain-type-local" $$end_record
ms-diagnostics: 1066;reason="Shared address space routing is disabled";cause="Possible server configuration issue";summary="Shared address space routing (hosting of users on multiple deployments) is disabled";external-domain="contoso.com";external-type="domain-type-local";internal-domain="contoso.com";internal-type="domain-type-local";source="sip.contoso.com"
OK, so given the specific wording above then you’ll probably decide that clearly the fix is to set “EnabledSharedAddressSpace” on the CsHostingProvider for Office 365 UM – and you’d be correct, however PowerShell doesn’t make it that easy, throwing up this red herring when you try:
set-CsHostingProvider : HostsOCSUsers and EnableSharedAddressSpace must occur together or not at all.
Now a reasonable person might read this as meaning that you need to have HostsOCSUsers and EnableSharedAddressSpace BOTH set to the same value (a 1 or 0, true or false). OK, well that’s how I read it …
In the heat of battle I opted to remove and recreate the CsHostingProvider to resolve the issue, but in preparing this post it became apparent to me that the values themselves don’t actually matter – you just need to include both parameters in the line when you issue the command to appease PowerShell. Thus, this is just as valid a fix:
PS C:\> set-CsHostingProvider "Exchange Online" -EnabledSharedAddressSpace 1 -HostsOCSUsers 0
Here’s my resulting HostingProvider:
- Don’t be fooled by TechNet saying “Notice that the EnableSharedAddressSpace flag is set to False”
- I recommend you follow Paul’s process here.