Hold Times & Dropped Calls in Lync

In a recent issue I had with a client’s “ITSP” (internet telephony service provider) and their Lync enterprise voice setup whenever a user (whether it was the receptionist who is a member of the main number response group, or an inbound call to a DID) after 30 seconds of being on hold the call would end (some people would consider this as being dropped, but read on…)

After scouring Microsoft forums I came across this post that answered it all, and the issue stems back to the days of OCS. Depending on how the carrier is setup to respond to RTCP packets, even with a caller being on hold it still counts down against the session timer. There are some features in the trunk configuration that are enabled/disabled by default that by “flopping” then from True to False fixes the issue.

To make these changes to the trunk configuration, we need to understand where they reside in the Set-CSTrunkConfiguration cmdlet:


Here is what a default configuration looks like:

Identity                            : Global
OutboundTranslationRulesList        : {}
SipResponseCodeTranslationRulesList : {}
Description                         :
ConcentratedTopology                : True
EnableBypass                        : True
EnableMobileTrunkSupport            : False
EnableReferSupport                  : True
EnableSessionTimer                  : False
EnableSignalBoost                   : False
MaxEarlyDialogs                     : 20
RemovePlusFromUri                   : False
RTCPActiveCalls                     : True
RTCPCallsOnHold                     : True
SRTPMode                            : Optional
EnablePIDFLOSupport                 : False

The 3 settings we want to change are:

EnableSessionTimer = $True
Specifies whether the session timer is enabled. Session timers are used to determine whether a particular session is still active.
Note that even if this parameter is set to False, session timers can be applicable if the remote connection has session timer enabled. In such a case, the Mediation Server will reply to session timer probes from the remote entity.

RTCPActiveCalls = $False
This parameter determines whether RTCP packets are sent from the PSTN gateway, IP-PBX, or SBC at the service provider for active calls. An active call in this context is a call where media is allowed to flow in at least one direction. If RTCPActiveCalls is set to True, the Mediation Server or Lync Server client can terminate a call if it does not receive RTCP packets for a period exceeding 30 seconds.
Note that disabling the checks for received RTCP media for active calls in Lync Server elements removes an important safeguard for detecting a dropped peer and should be done only if necessary.

RTCPCallsOnHold = $False
This parameter determines whether RTCP packets continue to be sent across the trunk for calls that have been placed on hold and no media packets are expected to flow in either direction. If Music on Hold is enabled at either the Lync Server client or the trunk, the call will be considered to be active and this property will be ignored. In these circumstances use the RTCPActiveCalls parameter.
Note that disabling the checks for received RTCP media for active calls in Lync Server elements removes an important safeguard for detecting a dropped peer and should be done only if necessary.

Now that we know how these effect our environment, if we go over to the shell and issue the following commands:

 set-cstrunkconfiguration -identity “global” -enablesessiontimer $True

set-cstrunkconfiguration -identity “global” -rtcpactivecalls $False -rtc
pcallsonhold $False

Then call our DID from an outside number and place it on hold, it should sit there as long as the calls bears to hear the default Lync hold music loop.


Chris Blackburn

Learn More →

2 thoughts on “Hold Times & Dropped Calls in Lync

  1. Christian May 3, 2012 at 8:12 am

    Hi, and thank you for this post! It not only solved my problem with calls on hold being disconnected, but also a problem with calls to users direct numbers being disconnected if not picked up within the same 20 seconds.

    I hope you don’t mind me linking to your article in my Technet-post about my issue:


    Christian Fæste
    Instant Office AS

  2. Marcel February 28, 2013 at 4:06 am

    Thank you very much, you resolved my issue :).


Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.