SIP Dialer doesn’t make outbound calls (UCCE)

When setting up the Outbound Option for UCCE, you often have to deal with the situation when SIP Dialer does not make outbound calls in agent-based campaigns, although all the settings seem to have been done correctly. Of course, the reasons for such behavior of the Dialer can be completely different, because the deployment of this function is quite complicated. In this article, let’s look at one of these reasons, which is related to SIP PING.
So, outbound calls are not dialed. The first step in diagnosing this problem is to view the status of the SIP Dialer itself and its associated Media Routing PG (MR_PG) through which the Dialer sends requests to the ICM Router to reserve the agent. You can do this with the Diagnostic Framework Portico (ListProcesses) tool. In our UCCE, MR_PG is configured as PG2A with the PIM1 process:

We can see that the status of our MR_PG PIM1 is ACTIVATING, i.e. this process tries to establish a connection with the Dialer, but for some reason it can not be done. If you look at the status of the Dialer itself, you can find out that its interaction with MR_PG is inactive (MR-X state), but communication with the SIP gateway (SIP-X state) is also inactive. Therefore, you need to check whether Dialer “sees” the gateway and whether the gateway responds to Dialer’s requests.

It should be noted that Dialer does not check the availability of the gateway in all versions of UCCE (this function has appeared since release 11.0). The Dialer determines the availability of the gateway using the SIP PING method. To see SIP PING requests we start debug ccsip messages on the gateway and observe if SIP PING messages are coming to the gateway and if the gateway responds to these requests:

CVP_GW#
OPTIONS sip:10.1.250.1 SIP/2.0
Via: SIP/2.0/UDP 10.1.1.30:58800;branch=z9hG4bK-d8754z-496f7f6a0705e759-1—d8754z-;rport
Max-Forwards: 70
Contact: <sip:sipping@10.1.1.30:58800>
To: <sip:10.1.250.1>
From: <sip:sipping@10.1.1.30>;tag=4e7dce5f
Call-ID: dc39f45b-370a4322-e77bde2d-05562655
CSeq: 1 OPTIONS
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, UPDATE, NOTIFY, PRACK, REFER, NOTIFY, OPTIONS
Supported: timer, resource-priority, replaces
User-Agent: Cisco-SIPDialer/UCCE10.0
Content-Length: 0

Sep 13 13:53:41.459: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
Received:
OPTIONS sip:10.1.250.1 SIP/2.0
Via: SIP/2.0/UDP 10.1.1.30:58800;branch=z9hG4bK-d8754z-2b273849a9223f2f-1—d8754z-;rport
Max-Forwards: 70
Contact: <sip:sipping@10.1.1.30:58800>
To: <sip:10.1.250.1>

As you can see, OPTIONS messages (SIP PING) come from the server 10.1.1.30 (ICM Dialer):

From: <sip:sipping@10.1.1.30>;

However, the gateway does not react and does not answer anything: we see only incoming OPTIONS. Therefore, our Dialer considers it as if the gateway is unavailable and, therefore, it does not activate its SIP processes (SIP-X status in the Portico). Because of that, the Dialer does not activate the connection with MR_PG (MR-X status). And the gateway does not respond to SIP PING requests due to Toll Fraud feature: the device 10.1.1.30 is unknown to the gateway. The gateway considers it as an untrusted device and ignores its requests. When the number of such requests reaches the limit value, the console of the gateway displays the following message (it depends on the version of the IOS gateway), directly indicating that requests from an untrusted device come:

CVP_GW#
Sep 13 13:59:24.062: %SYS-5-CONFIG_I: Configured from console by vty5 (192.168.10.100)
Sep 13 14:02:13.644: %SIP-2-SILENT_DISCARD:  Silent Discard Request from untrusted host rejected and consumed,Statistics are shown:
Total untrusted request consumed: 41446
Untrusted request consumed in last 60 min: 1670
Last threshold crossed for untrusted requestreceived: 1562 (Threshold: 1000)
CVP_GW#

To solve this problem, you need to include the IP-address of Dialer into the list of trusted devices using the command ip address trusted list:

CVP_GW#(config)voice service voip
CVP_GW(conf-voi-serv)#ip address trusted list
CVP_GW(cfg-iptrust-list)#ipv4 10.1.1.30
CVP_GW(cfg-iptrust-list)#

After that, the gateway starts responding to SIP PING requests, the SIP and MR processes (their statuses are SIP-A and MR-A) are activated on the Dialer, and the process of PIM1 in MR_PG becomes ACTIVE.

CVP_GW#
Sep 13 14:08:03.978: //-1/xxxxxxxxxxxx/SIP/Msg/ccsipDisplayMsg:
Received:
OPTIONS
sip:10.1.250.1 SIP/2.0
Via: SIP/2.0/UDP 10.1.1.30:58800;branch=z9hG4bK-d8754z-655128252616b301-1—d8754z-;rport
Max-Forwards: 70
Contact: <sip:sipping@10.1.1.30:58800>
To: <sip:10.1.250.1>
From: <sip:sipping@10.1.1.30>;tag=a658dd07
Call-ID: c25cee08-9045da64-201feb1c-0f41f077
CSeq: 1 OPTIONS
Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, UPDATE, NOTIFY, PRACK, REFER, NOTIFY, OPTIONS
Supported: timer, resource-priority, replaces
User-Agent: Cisco-SIPDialer/UCCE10.0
Content-Length: 0

Sep 13 14:08:03.979: //4257/43DDC34497B8/SIP/Msg/ccsipDisplayMsg:
Sent:
SIP/2.0 200 OK

Via: SIP/2.0/UDP 10.1.1.30:58800;branch=z9hG4bK-d8754z-655128252616b301-1—d8754z-;rport
From: <sip:sipping@10.1.1.30>;tag=a658dd07
To: <sip:10.1.250.1>;tag=33870ADD-303
Date: Thu, 13 Sep 2018 14:08:03 GMT
Call-ID: c25cee08-9045da64-201feb1c-0f41f077
Server: Cisco-SIPGateway/IOS-15.6.1.S4
CSeq: 1 OPTIONS
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
Allow-Events: telephone-event
Accept: application/sdp
Supported: 100rel,timer,resun allource-priority,replaces,sdp-anat
Content-Type: application/sdp
Content-Length: 161

v=0
o=CiscoSystemsSIP-GW-UserAgent 9608 2000 IN IP4 10.1.250.1
s=SIP Call
c=IN IP4 10.1.250.1
t=0 0
m=audio 0 RTP/AVP 18 0 8 9 4 2 15
c=IN IP4 10.1.250.1

Then download or update the file with contacts to your Dialer and make sure that it starts making outbound calls.

Nice day to everyone! )