Follow by Email

Thursday, April 21, 2011

IVR for Group buying and Deals sites using KooKoo

Using KooKoo, group buying sites can build simple telephony applications opening up another channel to reach their customers. We can have an application which does the following:

1. When users call, if it is a first time caller, ask the user to select his preferences and link his phone number on the website (which is anyway being done in most group buying websites)
2. The next time the user calls, fetch his preferences from the database and play back the deal to him in his preferred language.
3. If necessary, you can connect the caller to the business directly or process payment over the IVR.

The advantages with this approach are:
1. No more spam as callers call to know the deals
2. Play back the deals in multiple languages.
3. Reach more customers.

This can be achieved in 10 lines of code as shown below.


<?php

require_once('response.php');// this is kookoo library. You can download it from KooKoo website.

$r= new Response();

if($_REQUEST['event'] == 'NewCall')
{
//get the phone number of the person who called
$caller_id=$_REQUEST['cid'];
//get the deals for the categories chosen by the caller.getDealForCustomer is the function
//which gets details from your database.
$deal=getDealForCustomer($caller_id);
//playback the deals and hangup
$r->addPlayText('Your deals are '.$deal);
$r->addHangup();
$r->send();
}

?>

If you want you can extend the above code to include payment processing, allow a user to modify preferences etc. Since the code and the business logic reside on your server, you can customize it as you see fit.


Tuesday, April 12, 2011

Build a virtual receptionist for your business in 30 lines of code using KooKoo

You have just started up a new venture and things are looking good. You have been able to get a good domain name and you have established your presence in the web world. But what about the telecom world. How are people able to reach you. You would have published your mobile number on the website. But this leads to a lot of problems as people tend to call you at odd hours and you would lose all your privacy. Also you may not be able to attend a call at all times and you may lose business. To solve this and other problems why don't you build a virtual receptionist using KooKoo. Just follow the steps to get a virtual receptionist:


1. Register for KooKoo
2. Upgrade your account to get a phone number. Plans start as low as Rs.500/month. You can also use the development number of KooKoo with a pin to get free access.
3. Download the code from here
4. Host the code on your web server.
5. Login to KooKoo and update your application URL to point to vr.php


Thats it. Now you have virtual receptionist for your company. And you just pay for what you use.


The basic code is explained below:



<?php
session_start();
require_once("response.php");//include KooKoo library.This is available in the download
$r=new Response(); //create a response object
$cd = new CollectDtmf();
if($_REQUEST['event']=="NewCall") //when a new call comes...
{
        $_SESSION['cid']=$_REQUEST['cid'];
        //store details of caller and time in database if you want so you never miss a call
        //Update this with your own company name and your own prompt.
        $cd->addPlayText("Thank you for calling MY COMPANY. Please press 1 for sales, press 2 for support, press 3 for others");
$r->addCollectDtmf($cd);
$r->send();
}
else if($_REQUEST['event']=="GotDTMF") //Caller has provided some input
{
$selection=$_REQUEST['data'];
if($selection == "1")
{
$r->addDial("9912343425");//enter your sales guys number
}
else if($selection == "2")
{
$r->addDial("9912343425");//enter your support guys number
}
else
{
$r->addDial("9912343425");//enter your default number.
                //We use the same number for all 3 options so only one guy receives all the calls
               //But for the outside world you are a big company with different departments :)
//or do 
//$r->addRecord($_SESSION['cid']); //to enable voice mail
}
$r->send();
}
else if($_REQUEST['event']=="Dial" && $_REQUEST['status'] == "noanswer") //when agent doesn't answer
{
$r->addRecord($_SESSION['cid']);
$r->send();
}
else
{
$r->addHangup();
$r->send();
}
?>

You can take this base code and expand it to add call recording capabilities, send alerts, store all call details in your database etc.