Блог Горошко Андрея Bitrix24 Вызов методов с подтверждением

Вызов методов с подтверждением

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Вызов методов с подтверждением», проанализируем лучшие практики и покажем, как правильно использовать вызов методов в реальных задачах.

Вызов методов с подтверждением

Некоторые методы требуют разрешения администратора портала на вызов. При вызове приложением такого метода администратор портала получит уведомление с предложением разрешить или запретить вызов, а приложение получит ошибку.

Разрешение или запрет даются конкретному авторизационному токену, с которым происходит вызов метода. То есть разрешение действует на время жизни токена, и при получении следующего токена нужно получать новое разрешение.

GET https://portal.bitrix24.ru/rest/voximplant.user.get?auth=fkp963yuv1ggkfbs5z3f5hy8lilm0iw6&USER_ID=1
HTTP/1.1 401 Unauthorized
{
    "error": "METHOD_CONFIRM_WAITING", 
    "error_description": "Waiting for confirmation"
}

!Подтверждение

Вызов метода до получения подтверждения или ответа даст тот же ответ, но без запроса повторного подтверждения.

При подтверждении администратором разрешения или отказа произойдет вызов обработчика события OnAppMethodConfirm с передачей ему результата подтверждения, а также токена, которому было выдано это разрешение:

array (
    'event' => 'ONAPPMETHODCONFIRM',
    'data' => 
    array (
        'TOKEN' => 'fkp963yuv1ggkfbs5z3f5hy8lilm0iw6',
        'METHOD' => 'voximplant.user.get',
        'CONFIRMED' => '1',
        'LANGUAGE_ID' => 'ru',
        ),
    'ts' => '1478790852',
    'auth' => 
    array (
        'domain' => 'portal.bitrix24.ru',
        'client_endpoint' => 'https://portal.bitrix24.ru/rest/',
        'server_andpoint' => 'https://oauth.bitrix24.tech/rest/',
        'member_id' => '74ef8a46a75104de55d5d4a61b98ab6d',
        'application_token' => 'c289487163b58658eae5e8b42eaf11b8',
	),

Если администратор разрешил действие, приложение может использовать тот же самый авторизационный токен для работы с запрошенным методом:

GET https://portal.bitrix24.ru/rest/voximplant.user.get?auth=fkp963yuv1ggkfbs5z3f5hy8lilm0iw6&USER_ID=1
HTTP/1.1 200 OK
{
    "result": [
        {
            "DEFAULT_LINE": null, 
            "ID": "1", 
            "INNER_NUMBER": null, 
            "PHONE_ENABLED": "Y", 
            "SIP_LOGIN": "****", 
            "SIP_PASSWORD": "*****", 
            "SIP_SERVER": "*****"
        }
    ]
}

В случае запрета вернется соответствующая ошибка:

GET https://portal.bitrix24.ru/rest/voximplant.user.get?auth=fkp963yuv1ggkfbs5z3f5hy8lilm0iw6&USER_ID=1
HTTP/1.1 403 Forbidden
{
    "error": "METHOD_CONFIRM_DENIED", 
    "error_description": "Method call denied"
}

Список методов, требующих подтверждения

  • [](../../api-reference/telephony/voximplant/users/voximplant-user-get)

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

Советы эксперта по интеграции:

  • Всегда используйте кэширование при частых запросах к вызов методов, чтобы разгрузить базу данных.
  • Соблюдайте стандарты PSR при написании обработчиков для «Вызов методов с подтверждением».
  • Регулярно проводите аудит производительности системы с помощью встроенного монитора 1С-Битрикс.

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

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

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

Related Post

Дополнительные возможности встройки CRM_XXX_DETAIL_ACTIVITY, CRM_DYNAMIC_XXX_…Дополнительные возможности встройки CRM_XXX_DETAIL_ACTIVITY, CRM_DYNAMIC_XXX_…

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

Получить текущий статус SIP-Коннектора voximplant.sip.connector.statusПолучить текущий статус SIP-Коннектора voximplant.sip.connector.status

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Получить текущий статус SIP-Коннектора voximplant.sip.connector.status», разберем архитектурные особенности

Удалить файл из папки чата im.disk.file.deleteУдалить файл из папки чата im.disk.file.delete

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Удалить файл из папки чата im.disk.file.delete». Мы подготовили подробный разбор принципов работы и развернутые примеры