Role: <gather>, in simple words collects the user response as the user makes their choice by pressing the keys on the dial pad.

Use: The main use of <gather> is to collect the digits as the user enters them from their phone. Some of the examples stating how gather can be used are :-

  • IVR – When building an IVR for your company <gather> collects the digits that the user enters to direct the call to correct department/individual.

  • Conference – When joining a conference caller enters the “pin”. This pin is collected by <gather> for validating the user.

  • Authentication – Yet another way of using <gather> for security authentication when accessing personal or secured information over phone.

While there are no limitation on where <gather> can be used, there definitely is requirement or set of attributes to use with <gather>. Below is a list of attributes to be used with <gather>, each attribute has a specific function and can use certain values.


Here is an example of how <gather> is used within code.

<?xml version="1.0" encoding="UTF-8"?> 
     <Gather timeout="10" finishOnKey="*" action="handle-key.php">
         <Say>Please enter the Extension number you want to dial.</Say>

Once the user enters the response. It will call http://yourserver/handle-key.php

echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\n"; 
echo "<Response><Say>You entered ".$_REQUEST['Digits']. "</Say></Response>"; ?>

Last updated