Contents
Nailed-Up Connections for Agents
SIP Server supports a persistent “nailed-up connection” for agents, where it maintains an extended telephone call between SIP Server and the agent. During this time, the agent can handle multiple customer interactions without dropping the telephone connection to SIP Server.
Nailed-up connections offer a few key benefits, including:
- Minimal delay between the time an agent is selected and the audio path to the customer is established
- Improved overall reliability—the connection is already established when delivering a customer “call”, and the agent is less likely to take non-contact center calls
One typical use of nailed-up connections is for agents who use a legacy PSTN phone. These agents could be working from their home, or in a branch office that has simple PSTN connectivity. Another typical use of nailed-up connections is for agents behind a third-party PBX, when the PBX is connected to SIP Server through a gateway or simple SIP trunk.
SIP Server supports virtually all agent functionality in conjunction with nailed-up connections. The agent can make calls, receive calls, transfer calls, consult with other agents, use call supervision, and more. In addition, SIP Server’s call recording functionality is fully compatible with nailed-up connections.
Inbound calls to an agent with a nailed-up connection are delivered by default with “auto answer”—meaning the audio connects immediately. If this “auto answer” experience is not desired, then Preview Interactions should be used to provide the agent the opportunity to see call information in their agent desktop and accept or reject the call.
Nailed-up connections can be established or disconnected either by SIP Server or by the agent.
Establishing the Nailed-Up Connection
Nailed-up connections can be established by three different methods:
- SIP Server establishes the nailed-up connection on agent login or when an agent is in Ready state.
- SIP Server establishes the nailed-up connection on the first customer call.
- Agent establishes the nailed-up connection by calling into a contact center Route Point.
SIP Server Establishes the Nailed-up Connection on Agent Login or Ready state
SIP Server can establish the persistent nailed-up connection with an agent when the agent logs in, depending on the configuration:
- When connect-nailedup-on-login=<Routing Point number>, SIP Server connects the agent's endpoint with the specified Routing Point and then, after processing the TRouteCall to the predefined gcti::park device, SIP Server parks the agent on the gcti::park device establishing the persistent nailed-up connection with the agent's endpoint.
- When connect-nailedup-on-login=gcti::park, SIP Server directly parks the agent on the gcti::park device, establishing the persistent nailed-up connection with the agent's endpoint while processing TAgentLogin.
If a nailed-up connection is terminated for any reason, SIP Server places the agent in the NotReady state. If an agent is in the NotReady state and a nailed-up connection is not yet established, SIP Server, while processing the TAgentSetReady request, initiates a SIP call to the agent's phone with further parking on the gcti:park device. If the call fails, SIP generates EventError in response to TAgentSetReady; the agent remains in the NotReady state.
If the agent logs out, the nailed-up connection is dropped.
SIP Server Establishes the Nailed-up Connection on First Customer Call
SIP Server calls the agent to start a session—SIP Server sends the call to a remote TDM agent configured for the nailed-up feature. This applies to the first transfer to the agent, where the initial nailed-up session starts. When the caller releases the call or the agent releases the call using 3pcc, SIP Server parks the agent on Media Server, keeping the connection for the call leg to the nailed-up connection.
The basic call flow when SIP Server first calls an agent who is configured for the nailed-up feature is as follows:
- SIP Server receives a customer call, which the Universal Routing Server then processes.
- After qualification and queuing, the routing strategy selects the agent who will handle the call.
- SIP Server contacts the agent as it would for any remote TDM extension (SIP Server does not yet consider the agent to be nailed-up).
- At the end of the call, when the agent requests to release the call through the Agent Desktop (a 3pcc TReleaseCall), SIP Server does not disconnect the call leg to the nailed-up connection but, instead, parks the agent on the predefined gcti::park device. At this point, the agent is considered to be nailed-up. Media Server applies a silent treatment while the nailed-up connection is maintained.
In Business Continuity deployments, SIP Server applies the following “Call Delivery” logic when establishing the initial call to a DN with a statically configured contact:
- If the first SIP Server to handle the call determines an agent is locally logged in and using the DN, this SIP Server delivers the call directly to the DN.
- Otherwise, the first SIP Server forwards the call to the second SIP Server on the alternate site, using the inter-site Trunk DN and ISCC. The second SIP Server delivers the call to the DN, regardless of whether any agent is logged in and using the DN or not.
Agent Establishes the Nailed-Up Connection by Calling into a Contact Center Route Point
The agent calls the contact center to start a session—The remote TDM agent (configured for the nailed-up feature) initiates a call (1pcc) to the contact center.
The basic call flow when a remote TDM agent who is configured for the nailed-up feature is as follows:
- A call from the remote agent arrives at the contact center on a Routing Point DN.
- A short treatment is applied, and URS issues a TRouteCall to the predefined gcti::park device (RouteType=Unknown; OtherDN=’gcti::park’).
- SIP Server parks the agent on the gcti::park device, keeping the call leg to the agent connected. At this point, the agent is considered to be nailed-up. Media Server applies a silent treatment while the nailed-up connection is maintained.
In Business Continuity deployments, each data center should have a unique routing point, which allows an agent to connect to their preferred data center based on which routing point they contact.
Disconnecting the Nailed-Up Connection
Nailed-up connections can be disconnected for several reasons:
- The agent hangs up the phone.
- A network problem between SIP Server and the phone causes the call to be dropped.
- The agent logs out (applies when SIP Server established the connection on login, or if the drop-nailedup-on-logout option is set to true).
- The agent is inactive (no changes in agent state or incoming/outgoing calls at the DN) for the specified period of time (disconnect-nailedup-timeout).
Feature Configuration
On the Trunk DN that represents the gateway that is used to contact the remote agent, specify the following option in the [TServer] section:
- refer-enabled—Set this option to false.
On the ACD Position or Extension DN for the agent, specify the following options:
- contact—Set this option to the contact URI of the PSTN gateway/SBC or third-party PBX, depending on the agent location.
- line-type—Set this option to 1.
- refer-enabled—Set this option to false.
- dual-dialog-enabled—Set this to false.
- reject-call-notready—Set this option to true (recommended, not mandatory).
- sip-cti-control—Ensure that this option is not configured.
Connection on Agent Login
To enable the persistent nailed-up connection on agent login, in the [TServer] section of the SIP Server Application, configure the following option:
Note: If the agent logs out, the nailed-up connection will be dropped; the same behavior as if the drop-nailedup-on-logout is set to true.
Disconnection on Inactivity
To terminate the agent's nailed-up connection because of agent's inactivity, in the [TServer] section of the SIP Server Application, configure the following option:
Disconnection on Agent Logout
To enable automatic disconnection of the agent from the nailed-up connection on agent logout, in the TServer section of the SIP Server Application, configure the following option:
- drop-nailedup-on-logout—Set this option to true.
Note: If enabled, SIP Server can only establish the nailed-up connection if the agent is logged in.
For Business Continuity deployments, set dr-forward to no-agent. See Basic Deployment for details.
Configuration Options
connect-nailedup-on-login
Setting: Application and DN levels
Default Value: An empty string
Valid Values: Routing Point number, gcti::park
Changes Take Effect: At the next agent login session
Specifies SIP Server actions when receiving a TAgentLogin request from a DN with the configured nailed-up connection, as follows:
- When this option is set to a DN of type Routing Point, SIP Server immediately establishes a nailed-up connection between an agent's endpoint and the specified Routing Point. After processing the TRouteCall request to the gcti:park device, SIP Server parks the agent on gcti::park, establishing the persistent SIP connection with the agent's endpoint.
- When this option is set to gcti::park, SIP Server parks the agent on the gcti::park device directly, establishing the persistent SIP connection with the agent's endpoint.
- When the value for this option is not specified (the default), SIP Server does not take any action.
At a DN level, this option must be set on agent Extension DN, or, if this DN is located behind the softswitch on the respective softswitch DN.
disconnect-nailedup-timeout
Setting: Application and DN levels
Default Value: 0
Valid Values: Any positive integer
Changes Take Effect: At the next nailed-up connection
Specifies whether SIP Server terminates an agent's nailed-up connection because of the agent's inactivity. When set to a non-zero value, SIP Server waits this time interval, in seconds, before terminating the agent's nailed-up connection. When set to 0 (the default), SIP Server does not terminate the agent connection.
AttributeExtensions
The connect-nailedup-on-login key supports this feature. It overrides the connect-nailedup-on-login option setting but only for a current login session.
Key: connect-nailedup-on-login
Type: String
Values: Routing Point number, gcti::park
Requests: TAgentLogin
Specifies SIP Server actions when receiving a TAgentLogin request from a DN with the configured nailed-up connection, as follows:
- When this key is set to a Routing Point number, SIP Server immediately establishes a nailed-up connection between an agent's endpoint and the specified Routing Point. After processing the TRouteCall request to the gcti:park device, SIP Server parks the agent on gcti::park, establishing the persistent SIP connection with the agent's endpoint.
- When this key is set to gcti::park, SIP Server parks the agent on the gcti::park device directly, establishing the persistent SIP connection with the agent's endpoint.
- When this key is set to an empty value, SIP Server disables this feature for a particular agent in a current login session.
Key: ReasonCode
Type: String
Values: NailedUpConnectionTerminated
Event: EventAgentNotReady
Specifies that the nailed-up connection is terminated.
Feature Limitations
- Consultation calls for nailed-up DNs are supported in single dialog mode only.
- If an agent with the nailed-up connection is participating in the first call before it was ever parked, SIP Server cannot park this agent if the call is released before it is established. For example, if the agent with the nailed-up connection initiates a call and releases it while the call is ringing, or if the agent with the nailed-up connection completes a two-step transfer in ringing state. To avoid this, the agent should call the call center to get parked first.