The Lync Mobility service and the Lync Clients was released 13.12.2011. Since then as we get more hands-on with the service there are in some cases trouble getting the it up and running. This post is dedicated to how you can test and troubleshoot the mobility service deployment. I will update this post when I find more information on how to troubleshoot and how to solve certain scenarios.
Last updated: 26.04.2012
Deployment
If you have a multi-homed Front End server the Mobility Service (Mcx) may sometimes fail
- Reason: When calculating routing for a Mobility request the service makes a call to read DNS settings of the registered adapter. In some instances it is possible for the non-registered adapter to be returned.
- This causes routing of the request to fail This is regardless subnet configuration on the second NIC
- There should be a forthcoming Release Note or KB Article on this topic
Make sure you have deployed the solution correct by following one of these guides created by myself and fellow MVP’s Jeff Schertz and Adam Jacobs.
- Enabling Lync Server 2010 for Lync Mobile Clients: http://msunified.net/2011/12/12/enabling-lync-mobility/
- Using Lync Mobile with Office 365 and Lync Online: http://msunified.net/2011/12/12/using-lync-mobile-with-office-365-and-lync-online/
- Deploying the Lync 2010 Mobility Service: http://blog.schertz.name/2011/12/deploying-the-lync-2010-mobility-service/
- Step-by-step Microsoft Lync 2010 Lync Mobility (MCX) Installation Guide: http://imaucblog.com/archive/2011/12/09/step-by-step-microsoft-lync-2010-lync-mobility-mcx-installation-guide/
Testing
To validate the installation and configuration on the server side before you involve clients use the following techniques
To check that Autodiscover is working as expected, check the Autodiscover urls in a webbrowser
- Get-CsService -WebServer | fl autodiscover* to find the urls
- Example: https://<Webservices URL>/autodiscover/autodiscoverservice.svc/root
- Note: Make sure you don’t have “/” after root, because then you just get a “Endpoint Not Found” page
- You should get to download the root file stating the following: {“AccessLocation”:”External”,”Root”:{“Links”:[{"href":"https...... and so on pointing to your Webservices URL
Use https://www.testocsconnectivity.com/ to validate external web service Autodiscover
To check that the mobility service is working use the following url
- https://<FE pool FQDN>/mcx/mcxservice.svc
You can test the Push Notificaton Service using the following cmdlet where sip.sipdomain.com is you AccessEdgeFQDN
- Test-CsFederatedPartner –TargetFqdn <AccessEdgeinternalFqdn> –Domain push.lync.com –ProxyFqdn sipfed.online.lync.com
- Test-CsMcxPushNotification -AccessEdgeFqdn <AccessEdgeinternalFqdn>
- NOTE: you may get a 30008 error when running Test-CsMcxPushNotification, but it is working anyway
- NOTE: if you get A 504 (Server time-out) response see MVP Adam Jacobs post: http://imaucblog.com/archive/2012/02/16/what-to-do-when-you-get-a-504-server-time-out-response-for-lync-mobile-push-notifications/
You can test the Mobility Service using the following script, at this time it does not work with preconfigured CsHealthMonitoringConfiguration
$passwd1 = ConvertTo-SecureString "Password01" -AsPlainText -Force
$passwd2 = ConvertTo-SecureString "Password02" -AsPlainText -Force
$tuc1 = New-Object Management.Automation.PSCredential("contoso\UserName1", $passwd1)
$tuc2 = New-Object Management.Automation.PSCredential("contoso\UserName2", $passwd2)
Test-CsMcxP2PIM -TargetFqdn pool01.contoso.com -SenderSipAddress sip:UserName1@contoso.com -SenderCredential $tuc1 -ReceiverSipAddress sip:UserName2@contoso.com -ReceiverCredential $tuc2 –v
Troubleshooting
You can find a thorough Lync mobile troubleshooting article at NextHop: http://blogs.technet.com/b/nexthop/archive/2012/02/21/troubleshooting-external-lync-mobility-connectivity-issues-step-by-step.aspx
Microsoft has released CU4 release notes with known issues for Lync Mobile and workarounds. I have listed some of the most important issues here
- Issues with switching between Wi-Fi and 3G with Lync Mobile for Windows Phone. Resolution: Exit Lync Mobile and start Internet Explorer to reestablish network connectivity
- Lync might not connect to an IM conversation from push notification on Lync 2010 for Windows Phone. Resolution: Conversation must be reestablished because of timeout or the conversation was answered on another device
- In iOS, not all Lync meetings show up as Lync meetings. Resolution: Expected behavior when the meeting is scheduled by copying the Lync Online link, created in webaccess or created by Lync Online user that is not enabled for the audio conferencing provider (ACP)
- Push notification over a Wi-Fi network requires that firewall UDP port 5223 is open for incoming HTTP traffic. Resolution: This is because of Apple Push Notification service requires it
Download the release notes here: http://www.microsoft.com/download/en/details.aspx?id=28549
Other issues that may occur and are described by Microsoft
- Microsoft push notification messages are not delivered to Lync mobile clients because of URL filtering on the Edge server: http://support.microsoft.com/kb/2664650
I have seen an issue where Call via Work does not work. When you use Call via Work Lync will dial the phone number you have specified only to get disconnected when
Symptoms
- When you use Call via Work Lync will dial the phone number you have specified only to get disconnected when you try to answer the call
- In the Lync server SIP logs you see a 603 Decline message from the SIP Trunk GW
Resolution
- Use Lync Server Management Shell to verify that Get-CsTrunkConfiguration | fl EnableReferSupport is set to True
- If it is you can try to set it to false
- Set-CsTrunkConfiguration -EnableReferSupport $False
- Now try the Call via Work feature and it should work
- The reason for this is that the SIP Trunk provider is not configured to support SIP REFER
You may have the problem with users not being able to sign in. Make sure the following is true
- Go through the logs from the sign in process, Lync Mobile has the ability to send diagnostic logs from the client to the administrator
- MVP Randy Wintle has an excellent post on how to: http://blog.ucmadeeasy.com/2011/12/13/how-to-lync-mobile-diagnostic-logs
- Lyncdiscover is a CNAME pointing to Web Services URL found using Get-CsService -WebServer | ft ABHandlerExternalUri
- The certificate on the ISA/TMG is updated with the Lyncdiscover.domain.com SAN
- If it is over Wi-Fi and users connect internally the clients must trust the Root certificate used on the Front End server
- If you are using port 80 make sure you are using a separate publishing rule, listener is configured for 80->8080 and no authentication and clients can not authenticate is set
- The Lync Mobile client can’t sign in and you get a 401 unauthorized in the logs, may be due to multiple NIC’s on the FE: http://www.lync-blog.nl/?p=596&lang=en
- The Lync Mobile client can’t sign in when you publish LoadBalanced FE using TMG Web farm for the web services, try switching your TMG persistence to source IP: http://www.confusedamused.com/notebook/lync-mobile-clients-and-tmg-server-farms/
- See MVP Jeff Schertz on Lync Mobile iOS Client Authentication Issues: http://blog.schertz.name/2012/03/lync-mobile-ios-client-authentication-issues/
Troubleshooting articles
A good Lync Mobile troubleshooting story by flinchbot: http://flinchbot.wordpress.com/2011/12/12/troubleshooting-tips-for-lync-mobility/
Lync 2010 Mobility Sign-in Process: http://blog.kloud.com.au/2011/12/12/lync-2010-mobility-sign-in-internals/
Windows Phone 7 mobile devices: use and troubleshooting: http://support.microsoft.com/kb/2636318
Google Android mobile devices: use and troubleshooting: http://support.microsoft.com/kb/2636313
Apple iPhone and iPad mobile devices: use and troubleshooting: http://support.microsoft.com/kb/2636320
Lync Online Troubleshooting “Cannot connect to the server” errors on Lync mobile devices: http://support.microsoft.com/kb/2636329
Lync Mobility – Understanding SIP Sign-in Address vs. User Principle Name (UPN): http://blogs.pointbridge.com/Blogs/Crockett_keenan/Pages/Post.aspx?_ID=14

