Блог Горошко Андрея Bitrix24 Сохранить сообщение в качестве быстрого ответа imopenlines.message.quick.save

Сохранить сообщение в качестве быстрого ответа imopenlines.message.quick.save

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

Сохранить сообщение в качестве быстрого ответа imopenlines.message.quick.save

> Scope: imopenlines
>
> Кто может выполнять метод: администратор или оператор открытой линии

Метод imopenlines.message.quick.save сохраняет сообщение из чата открытой линии в список быстрых ответов.

Параметры метода

Название
Тип
Описание
CHAT_ID
integer
Идентификатор чата открытой линии, из которого нужно сохранить сообщение.

Идентификатор чата можно получить с помощью метода imopenlines.dialog.get или imopenlines.session.open

MESSAGE_ID
integer
Идентификатор сообщения, которое нужно добавить в быстрые ответы.

Идентификатор сообщения можно получить с помощью метода imopenlines.session.history.get

Примеры кода

  • cURL (Webhook)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"CHAT_ID":1331,"MESSAGE_ID":83507}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webhook_here**/imopenlines.message.quick.save
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"CHAT_ID":1331,"MESSAGE_ID":83507,"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/imopenlines.message.quick.save
  • JS
    try {
      const response = await $b24.callMethod(
        'imopenlines.message.quick.save',
        {
          CHAT_ID: 1331,
          MESSAGE_ID: 83507,
        }
      );

      const { result } = response.getData();
      console.log('Saved to quick answers:', result);
    } catch (error) {
      console.error('Error saving quick answer:', error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'imopenlines.message.quick.save',
                [
                    'CHAT_ID'    => 1331,
                    'MESSAGE_ID' => 83507,
                ]
            );

        $result = $response
            ->getResponseData()
            ->getResult();

        if ($result->error()) {
            echo 'Error: ' . $result->error();
        } else {
            echo 'Saved to quick answers: ' . var_export($result->data(), true);
        }
    } catch (Throwable $exception) {
        error_log($exception->getMessage());
        echo 'Error saving quick answer: ' . $exception->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        'imopenlines.message.quick.save',
        {
            CHAT_ID: 1331,
            MESSAGE_ID: 83507,
        },
        function(result) {
            if (result.error()) {
                console.error(result.error().ex);
            } else {
                console.log(result.data());
            }
        }
    );
  • PHP CRest
    require_once('crest.php');

    $result = CRest::call(
        'imopenlines.message.quick.save',
        [
            'CHAT_ID'    => 1331,
            'MESSAGE_ID' => 83507,
        ]
    );

    if (!empty($result['error'])) {
        echo 'Error: ' . $result['error_description'];
    } else {
        echo 'Saved to quick answers: ' . var_export($result['result'], true);
    }

Обработка ответа

HTTP-код: 200

{
    "result": true,
    "time": {
        "start": 1728626400.456,
        "finish": 1728626400.539,
        "duration": 0.083,
        "processing": 0.031,
        "date_start": "2024-10-11T10:00:00+03:00",
        "date_finish": "2024-10-11T10:00:00+03:00",
        "operating": 0
    }
}

Возвращаемые данные

Название
Тип
Описание
result
boolean
Содержит true при успешном сохранении в быстрые ответы
time
time
Информация о времени выполнения запроса

Обработка ошибок

HTTP-статус: 400

{
    "error": "CANT_SAVE_QUICK_ANSWER",
    "error_description": "Ошибка сохранения быстрого ответа"
}

Возможные ошибки

КодОписание
CHAT_IDУказан некорректный идентификатор чата
CHAT_TYPEУказанный чат не является открытой линией
CANT_SAVE_QUICK_ANSWERОшибка сохранения быстрого ответа
ACCESS_DENIEDНедостаточно прав, чтобы открыть указанный чат
  • [](./imopenlines-crm-message-add)

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

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

  • При написании кастомных компонентов для «Сохранить сообщение в качестве быстрого ответа imopenlines.message.quick.save» всегда разделяйте бизнес-логику и представление (шаблон).
  • Используйте отладку SQL-запросов через конструкцию $wpdb->last_query или стандартный трекер Битрикса, чтобы контролировать нагрузку.

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

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

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

Related Post

Как использовать метод SDK sale.order.delete в Битрикс24Как использовать метод SDK sale.order.delete в Битрикс24

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Как использовать метод SDK sale.order.delete в Битрикс24». Вы узнаете экспертные методики работы с

Изменить значения параметров свойств товаров или вариаций catalog.productProp…Изменить значения параметров свойств товаров или вариаций catalog.productProp…

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Изменить значения параметров свойств товаров или вариаций catalog.productProp…». Вы узнаете экспертные методики работы

Как использовать метод SDK task.checklistitem.getmanifest в Битрикс24Как использовать метод SDK task.checklistitem.getmanifest в Битрикс24

При разработке и поддержке проектов на платформе 1С-Битрикс критически важно использовать современные стандарты D7 API. В этом руководстве мы детально изучим тему «Как использовать метод SDK task.checklistitem.getmanifest в Битрикс24», разберем