ICTBroadcast Integration With SugarCRM and Vtiger

ICTBroadcast is a marketing and broadcasting autodialer software solution. ICTBroadcast use open source asterisk gateway in back end. ICTBroadcast is a unified broadcasting communication software solution, it broadcast sms , voice, email and fax. ICTBroadcast support Voip and PSTN lines as a trunk/gateway. ICTBroadcast has multiple features its blast thousand of call at a time, it support multi service billing,it has unique IVR designer survey and appointment reminder modules,it provide live monitoring AMD support and scalability feature. ICTbroadcast has also many other features which should be avilable in any marketing software autodialer.

ICTBroadcast Autodialer Application offers a full suite of telemarketing campaigns like Voice broadcasting, Fax broadcasting, SMS messaging, Survey and Polling , Appointment reminder, Press 1 camapaign, Interactive Campaign , Inbound campaigns also it offers Rest API’s to integerate any third party application with it to automate CRM business process and communicate with customers / contacts in effective way . ICTBroadcast REst api offer opportunity to integrate with any open source CRM’s like SuiteCRM, SugarCRM, EspoCRM, Yetiforce, Vtiger, flatefree, flarepoint CRM with ease

API ICTBRoadcast
ICTBroadcast provide REST base APIs to integrate with SugarCRM and Vtigar without compromising quality and services of ICTBroadcast. To integrate and access ICTBroadcast in SugaCRM and Vtiger needs to write some code on these CRM. ICTBroadcast provides three different types of Rest based API to integrate with SugarCRM and Vtiger.

1.API_User
2.API_Contact
3.API_Campaign

Lets see how we use some external REST APIs of ICTBroadcast in SugarCRM and Vtigar for creating contacts,contact groups,recording and simple campaign.

Contact_Create

This function creates a new contact in a group whose contact_group_id is provided while calling this method.

Input Parameters

contact: An array containing the contact data. For example, first_name, last_name, phone, email, address, description etc.
contact_group_id: ID of the contact group whose contacts are to be dialed by this campaign

Output

Returns json encoded string containing contact_id if successful. In case of any failure, it will return false.

Sample Code

$contact = array(
‘phone’ => ‘12345678’,
‘first_name’=>’first’,
‘last_name’=>’last’,
’email’=> ‘test@test.com
);
$arguments = array(‘contact’=>$contact, ‘contact_group_id’=> $group_id);
$result = broadcast_api(‘Contact_Create’, $arguments);
if($result[0] == true) {
$contact_id = $result[1];
print_r($contact_id);
} else {
$errmsg = $result[1];
print_r($errmsg);
}
?>

Campaign_Create

This function creates a message (voice) campaign. It requires a recording message and a contact group to run the campaign.

Input Parameters

campaign: An array of campaign containing IDs of the message (recording_id in this case) and contact_group_id as mandatory fields. campaign array can contain the following optional fields: name, contact_repeat, campaign_mode, am_action, am_message etc.

Output

Returns json encoded string containing campaign_id if successful. In case of any failure, it will return false.

Sample Code

$campaign = array(
‘contact_group_id’ => 1, // contact_group_id
‘message’ => 1, // recording_id
);
$arguments = array(‘campaign’=>$campaign);
$result = broadcast_api(‘Campaign_Create’, $arguments);
if($result[0] == true) {
$campaign_id = $result[1];
print_r($campaign_id);
} else {
$errmsg = $result[1];
print_r($errmsg);
}
?>
Contact_Group_Create

This function creates a new contact groups.

Input Parameters

contact_group: An array containing the contact group data. For example, name and description.

Output

Returns json encoded string containing true and contact_group_id if successful. In case of any failure, it will return false.

Sample Code

$arguments = array(‘contact_group’=> array(‘name’ => ‘mygroup’));
$result = broadcast_api(‘Contact_Group_Create’, $arguments);
if($result[0] == true) {
$contact_group_id = $result[1];
print_r($contact_id);
} else {
$errmsg = $result[1];
print_r($errmsg);
}
?>