• Home

Web Responders Overview

Written by Spencer Worley

Updated at December 11th, 2023

Contact Us

  • The Essentials
    FAQs Forms
  • Announcements
    Carrier Events mFax Events Platform Events Release Notes
  • Billing Administration
    Datagate OneBill
  • Faxing
    mFax - Analog mFax - Digital Native Fax
  • Hardware & Software
    Manual Configuration Provisioning NDP Axis Cisco Fanvil Grandstream Polycom Snom Yealink Mobile Applications Desktop Applications Mobile-X SNAPbuilder TeamMate Connector UC Integrator
  • Hosted Voice
    Auto Attendants Branding Call Queues Call Routing CDRs Conferencing E-911 Features Fraud Integrations Inventory / Phone Numbers Local & Toll Free Porting Onboarding Recommendations SNAP.HD SIP Trunking SMS / MMS Users Voicemail Caller ID
  • Troubleshooting
    VoIPmonitor Firewalls PBX
  • Ray's Stuff
+ More

Table of Contents

Scope: Requirements Critical Data Inbound Calls Outbound Calls Verbs Example:

Scope:

Intended Audience: All Users
This article will give structure to and assist users in responding to WebResponder help requests regardless of incoming or outgoing calls.

 

Requirements

  • Access to Netsapiens
  • Access to WebResponder
  • Access to To-Web
 

Critical Data

When Nms posts back to your WebResponder application (inbound or outbound), the URL always contains at least the following parameters:

  • NmsAni 
    caller, e.g., “1001”
  • NmsDnis 
    callee e.g., “2125551212”
  • Account User 
    Account User
  • AccountDomain 
    Account Domain
  • AccountLastDial 
    Last Dialed Digits by the Account User
  • Digits 
    Received Digits
  • OrigCallID 
    (1-1188b)
  • TermCallID 
    (1-1188b)
  • ToUser 
    User Part input to the Responder
  • ToDomain 
    Domain Part input to the Responder
 

Inbound Calls

The To-Web application takes a single parameter: the URL of the WebResponder application. When the To-Web application is invoked, IVR control is passed to the WebResponder application at the given URL.

For inbound calls, configure a dial translation using the responder application To-Web and specify the URL of the WebResponder application in the Application Parameter field. IVR control is passed to the WebResponder application at the given URL, when an inbound call arrives.

Outbound Calls

For outbound calls, submit a new callrequest_config (via API) with request="Call-Web" and message=url. When the call is connected, the WebResponder application specified by "message" is invoked.

Example: New Call Request Configuration


(requires at least tacserver 1.0.123)

Note- orig_address is really "1st leg".

 
 

Verbs

All verbs take an "action" attribute. If the "action" attribute is present then control is returned to the URL given by the "action" attribute. If not present then the application ends.

Play
The <Play> action plays the given .wav file and posts back to the given action URL.

Example: Play

<Play action='continue.php'>
 http://www.example.com/hello-world.wav
</Play>

plays the .wav file and posts back (i.e., returns control) to continue.php.

to end the call, omit the action parameter.to end the call, omit the action parameter.

 
 

Gather

The <Gather> action gathers the given number of DTMF digits and posts back to the given action url, optionally playing the given .wav file.

numDigits, the number of digits to gather, e.g., '1' (default=20)

Example: Gather

 <Gather numDigits='3' action='handle-account-number.php'>
 <Play>
  http://www.example.com/what-is-your-account-number.wav
 </Play>
 </Gather>

This gathers 3 digits and posts back the relative URL handle-account-number.php?Digits=555.

The <Gather> verb posts back to the given action URL with the following parameters:

Digits, the gathered digits, for example, 123.

 
 

Forward

The <Forward> action forwards to the given destination. The <Forward> verb does NOT take an "action" parameter. The <Forward> verb is effectively a "goto".

Example: Forward

<Forward>
 2125551212
</Forward>
 
 

Example:

This is an example of a "math" application. The application prompts the caller for two numbers and says the sum. The application demonstrates (a) a multi-step application and (b) storing state in a server side php session.

Example: 'Math' Application

<?php
session_start();
header("Content-Type: text/xml");
if (strlen($_REQUEST["case"]) == 0) {
       echo "<Play action='add.php?case=1'>
        http://localhost/tts.php?q=Welcome+to+the+math+application
       </Play>";
} else if ($_REQUEST["case"] == "1") {
       echo "<Gather numDigits='1' action='add.php?case=2'>
        <Play>
         http://localhost/tts.php?q=What+is+the+first+number
        </Play>
       </Gather>";
} else if ($_REQUEST["case"] == "2") {
       $_SESSION["first_number"] = $_REQUEST["Digits"];
       echo "<Gather numDigits='1' action='add.php?case=3'>
        <Play>
         http://localhost/tts.php?q=What+is+the+second+number
        </Play>
       </Gather>";
} else if ($_REQUEST["case"] == "3") {
       $first_number = $_SESSION["first_number"];
       $second_number = $_REQUEST["Digits"];
       $sum = $first_number + $second_number;
       echo "<Play>
        http://localhost/tts.php?q=holy+cow+$first_number+and+$second_number+is+$sum"
       </Play>";
}
?>
<pre>
 
 

 

responder summary web answers call processing dial translations

Was this article helpful?

Yes
No
Give feedback about this article

Related Articles

  • Glossary
  • Hardware Return Policy

Knowledge Base Software powered by Helpjuice

Expand