Here’s a cute bug in Lync – evident in CU2.
When you create a new Dial Plan, the Lync Control Panel creates a “simple name” from your original name. This Simple Name has invalid characters like spaces removed and replaced with underscores.
It would appear that the plus sign is also invalid, but the Control Panel currently lets that one slip through.
All is well until you configure the Call Park service, then park and try and Retrieve someone. You’ll never be able to retrieve them – but at least they will recall to you if they’re patient enough to hang on. This is what it looks like if you click Retrieve after having parked a call: “Call was not completed or has ended”.
(You’ll receive a similar failure message if you try and retrieve the same call from another Lync Client or OCPE device).
If you trace the call retrieval attempt in the user’s Front-End (a standard SIPStack trace is sufficient) you’ll see the error pointed out – the INVITE request URI is malformed:
… and if you look in the text pane to the right, it gives a little more detail: “phone-context has characters that are not allowed in a domain name”.
Note that “%23114” in the “To” field is actually “#114” (the Orbit/Park location), and “Broken+Invalid-Dial_plan” is the dummy Dial Plan I created for the purpose of this test.
The fix is a simple one – just edit the Simple Name of the Dial Plan to remove the + and you’ll be sweet.
Oh, and BTW, provided your Orbit Locations are unique and don’t clash with any codes in your Location Profile, you don’t need to Normalise them (as some posts on the Interweb would have you believe).