Comment on page
Особенности настройки после обновления Битрикс24 23.300.0
Если ранее функция click-to-call была настроена для версии Битрикс24 ниже 23.300.0, то старый код для этой настройки необходимо удалить.
Для возможности совершения звонков (click-to-call) из коробочной версии Битрикс24 в закрытой сети необходимо:
В административном интерфейсе 1С-Битрикс24 (
<portal_address>/bitrix
) в разделе Контент → Структура сайта → Файлы и папки- 1.Проверим наличие файла в котором будем производить изменения по следующему пути
local/php_interface/init.php
Если такого файла нет, изменять будем содержимое файла
bitrix/php_interface/init.php
или файл init.php
для конкретного файла. (документация по файлу init.php)
- 2.Добавим в
init.php
следующий код
\Bitrix\Main\Loader::includeModule('rest');
class MyEventProvider extends \Bitrix\Rest\Event\ProviderOAuth
{
public function send(array $queryData)
{
$http = new \Bitrix\Main\Web\HttpClient();
foreach($queryData as $key => $item)
{
if(preg_match('/192\.168\./', $item['query']['QUERY_URL'])) // directly sending handlers, having 192.168. in the address
{
$http->post($item['query']['QUERY_URL'], $item['query']['QUERY_DATA']);
unset($queryData[$key]);
}
}
if(count($queryData) > 0)
{
parent::send(array_values($queryData)); // all the rest is to be sent via the standard mechanism
}
}
}
\Bitrix\Rest\Event\Sender::setProvider(MyEventProvider::instance());
- 3.В данном коде нужно изменить шаблон
'/192\.168\./'
у функцииpreg_match
: в нём должен быть адрес на который будут отправляться click-to-call запросы, это должен быть адрес по которому с сервера Bitrix24 доступна админка модуля, например, если админка модуля доступна по адресуexample.com:8077
, то шаблон будет'/example\.com:8077/'
- 4.Такой же адрес для запросов click-to-call должен быть указан в настройках модуля, в разделе Битрикс24:

Адрес для запросов c2c
Если не использовать код указанный выше, то на сервере Asterisk должны быть разрешены входящие запросы с адреса
https://oauth.bitrix.info
Получить IP адреса, с которых могут приходить входящие запросы, можно следующими командами:
curl https://dl.bitrix24.com/webhook/app.json
curl https://dl.bitrix24.com/webhook/app-world.json