Блог Горошко Андрея Bitrix24,PHP Как использовать метод SDK telephony.externalcall.register в Битрикс24

Как использовать метод SDK telephony.externalcall.register в Битрикс24

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Как использовать метод SDK telephony.externalcall.register в Битрикс24». Вы узнаете экспертные методики работы с telephony.externalcall.register и научитесь избегать типичных ошибок начинающих разработчиков.

Описание метода SDK telephony.externalcall.register

Метод telephony.externalcall.register является частью официального Bitrix24 PHP SDK и предназначен для выполнения REST-запросов к порталу. Method registers a call in Bitrix24. For this purpose, it searches an object that corresponds to the number in CRM.

Параметры и сигнатура метода

В рамках SDK метод объявлен в пространстве имен \Bitrix24\SDK\Services\Telephony\ExternalCall\Service\ExternalCall со следующей сигнатурой:

public function register(
      string          $userInnerPhoneNumber,
      int             $b24UserId,
      string          $phoneNumber,
      CarbonImmutable $callStartDate,
      CallType        $callType,
      bool            $isShowCallCard = true,
      ?bool           $isCreateCrmEntities = null,
      ?string         $lineNumber = null,
      ?string         $sourceId = null,
      ?CrmEntityType  $crmEntityType = null,
      ?int            $crmEntityId = null,
      ?int            $callListId = null
  ): Result

Пример использования на PHP

Ниже представлен готовый практический пример интеграции с использованием Bitrix24 PHP SDK. Этот пример показывает, как правильно инициализировать сервис-билдер и вызвать метод register:

<?php
declare(strict_types=1);

use Bitrix24\SDK\Services\ServiceBuilderFactory;

// Инициализация официального Bitrix24 PHP SDK через входящий вебхук
$webhookUrl = 'https://your-portal.bitrix24.ru/rest/1/your-webhook-code/';
$serviceBuilder = ServiceBuilderFactory::createServiceBuilderFromWebhook($webhookUrl);

try {
    // Подготовка параметров для вызова метода telephony.externalcall.register
    $userInnerPhoneNumber = "пример_значения";
    $b24UserId = 123;
    $phoneNumber = "пример_значения";
    $callStartDate = new \Bitrix24\SDK\Services\Telephony\ExternalCall\Service\CarbonImmutable();
    $callType = new \Bitrix24\SDK\Services\Telephony\ExternalCall\Service\CallType();
    $isShowCallCard = true;
    $isCreateCrmEntities = null;
    $lineNumber = null;
    $sourceId = null;
    $crmEntityType = null;
    $crmEntityId = null;
    $callListId = null;

    // Выполнение запроса через Scope getTelephonyScope и сервис externalcall
    $result = $serviceBuilder->getTelephonyScope()->externalcall()->register(
          $userInnerPhoneNumber,
          $b24UserId,
          $phoneNumber,
          $callStartDate,
          $callType,
          $isShowCallCard,
          $isCreateCrmEntities,
          $lineNumber,
          $sourceId,
          $crmEntityType,
          $crmEntityId,
          $callListId
      );

    // Обработка полученных данных
    print_r($result->getResponseData()->getResult());

} catch (\Throwable $exception) {
    // Обработка исключений при интеграции
    echo "Ошибка при выполнении метода telephony.externalcall.register: " . $exception->getMessage();
}

Полезные ссылки

💡 Экспертное мнение и рекомендации

Практические рекомендации:

  • При написании кастомных компонентов для «Как использовать метод SDK telephony.externalcall.register в Битрикс24» всегда разделяйте бизнес-логику и представление (шаблон).
  • Используйте отладку SQL-запросов через конструкцию $wpdb->last_query или стандартный трекер Битрикса, чтобы контролировать нагрузку.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Внедрение коробочной версии Битрикс24 (On-Premise) на сервер заказчикаВнедрение коробочной версии Битрикс24 (On-Premise) на сервер заказчика

Профессиональная настройка и внедрение Битрикс24 CRM позволяет систематизировать работу отдела продаж, исключить потерю лидов и автоматизировать ключевые бизнес-процессы компании. Услуга «Внедрение коробочной версии Битрикс24 (On-Premise) на сервер заказчика» обеспечивает развертывание

Перевод сайта на 1С-Битрикс на микросервисную архитектуруПеревод сайта на 1С-Битрикс на микросервисную архитектуру

Профессиональная поддержка, модернизация и оптимизация производительности сайта на 1С-Битрикс — это гарантия высокой конверсии, стабильности продаж и защиты от киберугроз. Услуга «Перевод сайта на 1С-Битрикс на микросервисную архитектуру» включает вынос

Получить список чат-ботов imbot.bot.listПолучить список чат-ботов imbot.bot.list

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Получить список чат-ботов imbot.bot.list». Мы подготовили подробный разбор принципов работы и развернутые примеры интеграции. Получить