IVR Designer Transfer Call

Issues and queries related to IVRs in IVR Designer of ictdialer

Re: IVR Designer Transfer Call

Postby falak » Fri Nov 23, 2012 6:25 am

Unfortunately, Transfer call functionality is incomplete at the moment. We are, however, planning to include this call transfer functionality along with few others to release in our next version. Till then you have to bear with us.

However, if you want to try yourself then here is what you can do:

Go to given link on Plivo http://docs.plivo.org/docs/restxml/elements/siptransfer/. Copy one of the examples syntax i.e. transfer after receive or transfer without answer.

Then open file "broadcast/gateway/plivo/broadcast_plivo.module". Now follow one of the existing application that how their code is written. You can follow tts application. Sample code is given below but it is not tested.
Code: Select all
function broadcast_plivo_trasnfer($app_id) {
  $app = broadcast_plivo_application_load($app_id);
  $application_root = variable_get('broadcast_app_root', 'http://127.0.0.1/ictdialer/index.php');
  // get app data
  $data = unserialize($app['data']);
  //$transfer = $data['extension'];
  $transfer = '1002'; // fixed extension where to transfer call
  $url_action = "$application_root?q=plivo/app_controller/$app[campaign_application_id]";
  $response = '<?xml version="1.0" encoding="UTF-8"?>
          <Response>
          <SIPTransfer>sip:'.$transfer.'@foo.bar</SIPTransfer>
          </Response>';
  echo $response;
}


You should set a fixed extension instead of using $transfer variable from $app['data']. Using $transfer variable from $app['data'] might also require you to develop a GUI for transfer application where you can add remove your extension and then select that extension from GUI. That is an extensive work. However, you can start from a simple fixed transfer application.

Also write the following code section in the menu function.
Code: Select all
$items['plivo/transfer/%broadcast_plivo_application'] = array(
    'title'            => 'Transfer',
    'description'      => 'Transfers call to sip uri',
    'page callback'    => 'broadcast_plivo_transfer',
    'page arguments'   => array(2),
    'access callback'  => 'broadcast_access',
    'access arguments' => array('gateway'),
    'type'             => MENU_CALLBACK,
  );


Hope this might work for a simple call transfer where you cannot change your extension from IVR designer GUI. But can use transfer application functionality.

P.S. Don't forget to clear cache before testing. Admin->Configuration->Performance->Clear all cache
falak
Site Admin
 
Posts: 86
Joined: Tue Jan 17, 2012 7:33 am

Re: IVR Designer Transfer Call

Postby falak » Sat Nov 24, 2012 5:52 am

That was not tested code. But a starting point that how can you write your own application in IVR designer. There might be some other files where to change/write the code. Don't remember that at the moment. This may require a complete testing.

So bear with us for the next release of ICTDialer! 8-)
falak
Site Admin
 
Posts: 86
Joined: Tue Jan 17, 2012 7:33 am


Return to IVR Designer

Who is online

Users browsing this forum: No registered users and 1 guest

cron