Integrating Exchange Unified Messaging (UM) with a Cisco Call Manager (CUCM) we setup and configured the Exchange and CUCM integration as per my previous post here. This deployment is a multi (3) CUCM Deployment and multi (6) Exchange UM Deployment.
We then were testing the integration where we placed a call between Cisco Phone 1 and Cisco Phone 2, the Exchange UM picked up and we could place a voicemail however the MWI SIP NOTIFY message wasn’t getting down to the CUCM to be sent to the Phone.
We checked the logs on the Exchange Server and there warnings and errors as per the below stating 503 Service Unavailable was being returned the Exchange when we sent the SIP NOTIFY message for MWI.
Warning: Event ID 1344, MSExchange Unified Messaging
The Microsoft Exchange Unified Messaging service on the Mailbox server failed to deliver the MWI notification ’15/1 (unread/read)’ for the UM-enabled mailbox ‘Extension XXXXXXX(9fdec020-30bb-4251-9369-47b01122af78)’ associated with UM extension ‘XXXXXX’. Until this problem is corrected, the MWI state for this user may be out of sync. Additional information: There are no more targets available to send an MWI message for user Extension XXXXXXX. Server CUCM2 failed with 503 Service Unavailable Server CUCM1 failed with 503 Service Unavailable Server CUCM3 failed with 503 Service Unavailable
Error: Event ID 1423, MSExchange Unified Messaging
The Microsoft Exchange Unified Messaging service on the Mailbox server encountered an error while trying to process the message with header file “C:\Program Files\Microsoft\Exchange Server\V15\UnifiedMessaging\voicemail\bd324e95-7868-4bfe-a8e8-c4f382c8f89b.txt”. Error details: “Microsoft.Exchange.UM.UMCore.SmtpSubmissionException: Submission to the Hub Transport server failed. The operation will be retried. —> Microsoft.Exchange.Net.ExSmtpClient.UnexpectedSmtpServerResponseException: Unexpected SMTP server response. Expected: 220, actual: 500, whole response: 500 5.3.3 Unrecognized command at Microsoft.Exchange.Net.ExSmtpClient.SmtpTalk.CheckResponse(ServerResponseInfo response, Int32 expectedCode) at Microsoft.Exchange.Net.ExSmtpClient.SmtpTalk.Command(SmtpChunk chunks, SmtpCommandType command, Int32 expectedCode) at Microsoft.Exchange.Net.ExSmtpClient.SmtpTalk.StartTls(Boolean useAnonymousTls) at Microsoft.Exchange.Net.ExSmtpClient.SmtpClient.Submit() at Microsoft.Exchange.UM.UMCore.SmtpSubmissionHelper.SubmitMessage(MessageItem message, String senderAddress, Guid senderOrgGuid, String recipientAddress, OutboundConversionOptions submissionConversionOptions, InternalExchangeServer smtpServer) at Microsoft.Exchange.UM.UMCore.SmtpSubmissionHelper.SubmitMessage(MessageItem message, String senderAddress, Guid senderOrgGuid, String recipientAddress, OutboundConversionOptions submissionConversionOptions, String requestId) — End of inner exception stack trace — Server stack trace: at Microsoft.Exchange.UM.UMCore.SmtpSubmissionHelper.SubmitMessage(MessageItem message, String senderAddress, Guid senderOrgGuid, String recipientAddress, OutboundConversionOptions submissionConversionOptions, String requestId) at Microsoft.Exchange.UM.UMCore.SmtpSubmitStage.InternalDoSynchronousWork() at System.Runtime.Remoting.Messaging.StackBuilderSink._PrivateProcessMessage(IntPtr md, Object args, Object server, Object& outArgs) at System.Runtime.Remoting.Messaging.StackBuilderSink.AsyncProcessMessage(IMessage msg, IMessageSink replySink) Exception rethrown at : at System.Runtime.Remoting.Proxies.RealProxy.EndInvokeHelper(Message reqMsg, Boolean bProxyCase) at System.Runtime.Remoting.Proxies.RemotingProxy.Invoke(Object NotUsed, MessageData& msgData) at Microsoft.Exchange.UM.UMCore.SynchronousPipelineStageBase.SynchronousWorkDelegate.EndInvoke(IAsyncResult result) at Microsoft.Exchange.UM.UMCore.SynchronousPipelineStageBase.EndSynchronousWork(IAsyncResult r)”
Reviewing the CUCM logs the SIP NOTIFY message was being sent by an Exchange Server that we did not have on our ExchangeCAS trunk, to Resolve the issue we added the IP address and Port 5060 of all Exchange UM servers in our CUCM ExchangeCAS Trunk as seen below.
We then reset/restarted the trunk and the MWI lit up on the Cisco Phone 2.