NetBorder Call Analyzer Answering Machine Detection

                           

Product Overview

NetBorder Call Analyzer is a patent-pending Call Progress Analysis engine that ensures fast and accurate automated call classification. It operates in SIP networks as a back to back user agent (B2BUA) which quickly and accurately determines the outcome of call attempts.

Whether it's voice mail, a live human, or a special intercept tone that answers the call, NetBorder Call Analyzer functions much like a human brain: it adapts to a wide variety of noise conditions, ringing patterns, and telecom network conditions.
 

 

Where is Netborder Call Analyzer used?

  • Outbound and Blended Contact Centers

  • Proactive Notification via Speech or IVR

  • Outsourcing 


Product Scenarios

  • Interconnect to VoIP Gateways or Directly to a SIP Trunk

    Call Analyzer works in SIP networks, as a Back-to-back User Agent (B2BUA) Session Controller (Figure 1). This type of deployment might be required for cases where the call center has already standardized/certified on a set of VoIP gateways or in the case the call center is connected directly to a SIP Trunk from a SIP provider (Figure 2).
     

                  Figure 1: NetBorder CPA in a SIP to SIP interconnect (B2BUA)

     

                 Figure 2: NetBorder CPA in a SIP to SIP interconnect with a SIP Trunk provider 
     
     

  • Combined with Internal VoIP Gateway and Directly Connected to the PSTN

    Alternatively, the NetBorder Call Analyzer can be combined with its own VoIP gateway functionality for direct, cost effective connectivity to the PSTN (Figure 3). 

     

                     Figure 3: NetBorder CPA with built-in VoIP Gateway
 

SIP Description

NetBorder Call Analyzer uses a standard SIP interface and runs on standard computing platforms and servers. The software is highly configurable as it is based on scripts.
However, extensions to the SIP protocol are required because there is no standard method to provide the information of events back to the dialer, e.g. who or what answered, SIT tones, etc.

SIP Automated Dialers

There are 3 areas of functionality that are required by Automated Dialers that are not covered adequately by SIP standards and drafts:

  1. The request for a CPA resource has to be controllable on a call-by-call basis.

  2. After a call is answered, an attempt needs to be made to classify the call in order to determine who or what has answered the call. This classification process is called Call Progress Analysis (CPA). The results of such determination (human/answering machine/fax) need to be delivered to the dialer.

  3. If a call cannot be successfully established, the reason for a failure must be communicated back to dialer.

 

SIP Extensions NetBorder Implementation

The SIP Extensions outlined below are available as is in NetBorder Call Analyzer. As there are no standard way to address the requirements of dialers in SIP networks, other methods or changes to call flows are very much valid as well. NetBorder is a highly configurable platform and its scripts can be modified to adhere to other SIP Extension methods or to more complex call flows such as using SIP INFO to pass CPA results.

Invoking Call Progress Detection in SIP requests

To invoke or enable Call Progress Analysis (CPA), a custom SIP parameter "cpd" in the Request URI of initial INVITE message is used. The valid values for the header are "on" and "off". If the header is not present, the CPA resources are switched off. Further illustrations and examples are provided below.

Passing Call Progress Detection Results in SIP responses

A connection to either human, answering machine or a fax is considered to be a successful call. As there is currently no standardized way to pass call progress detection results in SIP, a custom header "CPD-Result" in the 200 OK response is used to indicate what type of connection is detected.

The possible values for this header are:

  • "Voice"

  • "Answering-Machine"

  • "Fax"

  • "Other" (for devices like modem for example)

 

  • Example of SIP Message Exchange for Successful Call Attempts

     

     

  • To further the level of details from the drawings above, below are examples of actual SIP messages between the Dialer and NetBorder.

    Sample SIP INVITE message from Dialer to NetBorder:

    INVITE sip:1024@192.168.11.103:5061;cpd=on SIP/2.0 Via: SIP/2.0/UDP 192.168.11.156:5060;branch=z9hG4bK233E73631D7A9A90B05D8C5A02983766;rport=5060 Max-Forwards: 70 Contact: To: From: "Your Long Name";tag=660A72622E4A7F9B9A839A2B8B9381FD Call-ID: FC735409EBE21C394E69C4AD800FBF01@192.168.11.156:5062 CSeq: 1 INVITE Session-Expires: 1800;refresher=uac Content-Type: application/sdp Supported: timer, replaces User-Agent: Kapanga Softphone Desktop 1.00/2163e+1161886252_001372BDBCE2 Content-Length: 323

    Sample 200 OK response with CPD-Response special header:

    SIP/2.0 200 OK Via: SIP/2.0/UDP 192.168.11.156:5060;branch=z9hG4bK233E73631D7A9A90B05D8C5A02983766;rport=5060 Contact: "Paraxip NetBorder" To: ;tag=0f7fe217 From: "Your Long Name";tag=660A72622E4A7F9B9A839A2B8B9381FD Call-ID: FC735409EBE21C394E69C4AD800FBF01@192.168.11.156:5062 CSeq: 1 INVITE Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, INFO Content-Type: application/sdp Content-Length: 236 CPD-Result: Voice ...

    Mapping of Error Codes for Unsuccessful Call Attempts

    When an outbound call fails (busy, vacant number, no answer, etc.), automated dialers need to be provided with the required information as different retry strategies could be used by the call center. For example, a call to a busy line might be tagged by the dialer to be retried 30 minutes later, where as a vacant number would be removed from the dialer's list.

    The call flows introduced earlier are reproduced here (Figure 6 and Figure 7) with failure events instead of call connection events:

     

     

     

     

    The process starts with the same SIP INVITE message with "cpd=on" in the request line of the SIP message. However the call flows differ in that a failure event (in signalling for instance) or a failure tone (on the media path) will occur instead of a call completion. In such case, NetBorder makes a determination if the connection "failure" is a permanent one or a temporary network condition and selects the appropriate SIP 4xx response to inform the dialer. Further SIT information can be retrieved by the dialer (if this level of detail is required) in a custom header named "CPD-Result", added to the 4xx response.

    Below is a list of failure cases and the SIP messages provided by NetBorder to properly inform the dialer of the cause of failure:

    PSTN Telephony ConditionNetBorder SIP Response MessageNo Answer408 Request TimeoutDestination Busy486 Busy HereFast Busy480 Temporarily Unavailable; CPD-Result: "Sit-Reorder"Special Intercept Tones (or Tri-tones)No Circuit Found (NC)480 Temporarily Unavailable; CPD-Result: "Sit-No-Circuit"Intercept (IC)404 Not Found; CPD-Result: "Sit-Intercept"Vacant (VC)404 Not Found; CPD-Result: "Sit-Vacant"Reorder (RO)480 Temporarily Unavailable; CPD-Result: "Sit-Reorder"

     

    Below is an example of an error message:

    SIP/2.0 404 Not Found Via: SIP/2.0/UDP 192.168.11.155:5090;branch=z9hG4bK0FD4C39B67437A03BFBCF7034D60BF5F;rport=5090 To: ;tag=245fa543 From: "netb"; tag=892F621D7FCFE274D88D0AB691717C90 Call-ID: F1DC2E2FC135E35E671AC246D6102FA6@192.168.11.155:5062 CSeq: 1 INVITE Content-Length: 0 CPD-Result: Sit-Intercept

     

Features 

  • Best-in-industry accuracy and response time
    With patent-pending algorithms, NetBorder Call Analyzer delivers the highest accuracy and fastest call delivery rates available for automated calling applications.

  • Optimized Detection

    • Configurable pre-connect tone detection

    • Post-connect analysis

    • End of Greeting

  • Resilient against different calling conditions
    Statistical models used by NetBorder Call Analyzer are robust, regardless of background noise and network conditions.

  • Integrate via Standards-Based SIP
    No proprietary Application Programming Interfaces. Support for both PSTN and VoIP networks.

  • Operate in a dynamic environment
    Call progress confidence measures enable the system to adapt according to contact center operating conditions.

  • Streamlined tuning process The statistical approach eliminates the need for long and frequent tuning cycles of the call progress parameters.




SIP/ Session Control Interface:

  • B2BUA as Relay Server or Outbound Proxy

  • SIP as per RFC 3261

  • 3PCC as per RFC 3725

  • Sangoma SIP Extensions for CPA

Media Processing:

  • Patent pending Call Progress Analysis Neural Network

    • Configurable pre-connect analysis (International pre-connect tones such asringing, Busy, SIT)

    • Post-connect analysis

    • End-of-Greeting detection

  • DTMF per RFC 2833

  • Built-in recorder for tuning and quality/accuracy audits

Benchmarking:

Sangoma has run its own internal benchmarking of various technologies, out of the box, without tuning; using a database of live recordings of approximately 5000 calls. Sangoma provides 15% increase in accuracy over competing technologies. While this does not constitute a guarantee, live deployments should experience similar results and performance over a statistically significant sample of calls.

Management tools:

  • Logging

  • Event viewers

  • Automated CSV file generation for quality/accuracy audits

Operating Systems Supported:

  • Microsoft® Windows XP

  • Microsoft® Windows 2003 Server (32 & 64 bit)

  • Microsoft® Windows 2008 Server (32 & 64 bit)

  • RedHat® Entreprise Linux 5.x (64-bit) 

  • CentOS 5.x (64 bit) 

Server Requirements (minimum):

  • Intel® or AMD Dual Core processor at 2 GHz

  • 1 GB of RAM

  • 80 GB HDD

  • Consult Sales for detailed specifications(

 

Return to Documentation Home I Return to Sangoma Support