Разговор с клиентом
Показ карточки звонка менеджеру, ответственному за клиента
Мы максимально упростили создание интеграций с вашей телефонией
Базовый сценарий интеграции
<?php
$queryUrl = 'https://xxx.bitrix24.ru/rest/1/yyyyxxx000111/telephony.externalcall.register.json';
$queryData = http_build_query(array(
'USER_ID' => 1,
'PHONE_NUMBER' => '555666777',
'TYPE' => 2,
'CALL_START_DATE' => '2016-16-11 10:10',
'CRM_CREATE' => true
));
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $queryUrl,
CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode($result, 1);
Любая логика очереди!
<?php
$queryUrl = 'https://xxx.bitrix24.ru/rest/1/yyyyxxx000111/telephony.externalcall.hide.json';
$queryData = http_build_query(array(
'CALL_ID' => 'externalCall.a2fc40b56aa869141cc6aa2d2a965ba6.1478527542', //берется из telephony.externalcall.register
'USER_ID' => 1 // убираем карточку у пользователя 1
));
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $queryUrl,
CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
$queryUrl = 'https://xxx.bitrix24.ru/rest/1/yyyyxxx000111/telephony.externalcall.show.json';
$queryData = http_build_query(array(
'CALL_ID' => 'externalCall.a2fc40b56aa869141cc6aa2d2a965ba6.1478527542', //берется из telephony.externalcall.register,
'USER_ID' => 6 //показываем карточку пользователю 6
));
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $queryUrl,
CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
Звонки прямо из CRM!
укажите url вашего обработчика в настройках исходящего webhook
https://your_server/your_webhook_script.php
код обработчика
<?php
/*
Битрикс24 передает в обработчик $_REQUEST с данными:
array(
'PHONE_NUMBER' => '555666777', //номер, на который звонит пользователь Битрикс24
'USER_ID' => '1', //пользователь, который звонит из интерфейса Битрикс24
'CRM_ENTITY_TYPE' => 'LEAD', //тип объекта CRM, из карточки которого звонит пользователь Битрикс24
'CRM_ENTITY_ID' => '248' //ID объекта CRM, из карточки которого звонит пользователь Битрикс24
)
*/
// регистрируем исходящий звонок
$queryUrl = 'https://xxx.bitrix24.ru/rest/1/yyyyxxx000111/telephony.externalcall.register.json';
$queryData = http_build_query(array(
'USER_ID' => $_REQUEST['USER_ID'],
'PHONE_NUMBER' => $_REQUEST['USER_ID'],
'TYPE' => 1, // исходящий звонок
'CALL_START_DATE' => '2016-16-11 10:10',
'CRM_CREATE' => false,
'CRM_ENTITY_TYPE' => $_REQUEST['CRM_ENTITY_TYPE'],
'CRM_ENTITY_ID' => $_REQUEST['CRM_ENTITY_ID']
));
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $queryUrl,
CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode($result, 1);
Данные о звонках прямо в интерфейсе CRM!
<?php
$queryUrl = 'https://xxx.bitrix24.ru/rest/1/yyyyxxx000111/telephony.externalcall.finish.json';
$queryData = http_build_query(array(
'CALL_ID' => 'externalCall.733e885003cbac98d92b811806caeaea.1478528885', //берется из telephony.externalcall.register
'DURATION' => '120', //длительность звонка в секундах
'STATUS_CODE' => 200, //успешный звонок
'RECORD_URL' => 'http://your_server/call_record.mp3', //url на запись звонка для сохранения в Битрикс24
));
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_POST => 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $queryUrl,
CURLOPT_POSTFIELDS => $queryData,
));
$result = curl_exec($curl);
curl_close($curl);
$result = json_decode($result, 1);
Прочитайте документацию и посмотрите готовый пример создания локального приложения