CRM роботы 2.0 + AI (300+ роботов)

Создать комментарий таймлайна с файлами по ключу операции

Добавляет текст и подготовленные файлы в карточку с защитой от повторной отправки.

Настройки робота «Создать комментарий таймлайна с файлами по ключу операции» в Битрикс24

Видимая часть формы настройки в Битрикс24. Скриншот показывает поля действия; он не подтверждает выполнение учебного примера.

Для кого и какую проблему решает

Робот полезен для менеджера, который фиксирует итог этапа в таймлайне CRM. При повторной доставке события один комментарий может появиться несколько раз. Робот добавляет текст и подготовленные вложения с постоянным ключом операции и возвращает сохранённый результат при подтверждённом повторе.

Что делает и когда применять

Добавляет текст и подготовленные файлы в карточку с защитой от повторной отправки.

Принимает тип и ID карточки, текст, уникальный REQUEST_KEY и PREPARED_FILES: массив до пяти объектов name, contentBase64, allowedFormats. Максимальный общий размер 5 МиБ; поддержаны pdf/png/jpeg/gif/webp/zip. Вложения создаются из переданных данных; готовые ID Диска не принимаются. Возвращает ID комментария и файлов, признак сохранённого результата. Повтор проверяет текущий доступ, автора, карточку, текст и имена/размеры файлов; содержимое независимо не скачивается. Неизвестный результат блокирует повторную отправку до ручной сверки.

Что подготовить

Нужен установленный робот из приложения «CRM роботы 2.0 + AI» и право на настройку автоматизации нужной CRM-воронки или шаблона бизнес-процесса. Пользователю, от имени которого работает приложение, должны быть доступны выбранные CRM-элементы и нужное действие с ними.

Определите тип и ID карточки и один ключ для конкретного события. Для повторной проверки этого события используйте тот же ключ; для нового комментария создайте другой.

Как настроить и использовать

  1. Откройте автоматизацию нужной сущности и выберите стадию, на которой нужен робот «Создать комментарий таймлайна с файлами по ключу операции». В шаблоне бизнес-процесса добавьте одноимённое действие.
  2. Определите тип и ID карточки и один ключ для конкретного события. Для повторной проверки этого события используйте тот же ключ; для нового комментария создайте другой.
  3. Заполните Тип карточки CRM, ID карточки CRM, Текст комментария, Подготовленные файлы: JSON, Уникальный ключ операции. Для рабочего сценария подставьте значения полей документа или результаты предыдущих действий вместо учебных данных ниже.
  4. Проверьте обязательные поля и варианты выбора в таблице настроек. Сохраните действие и свяжите его результаты с дальнейшими условиями процесса.
  5. Выполните пробный запуск на отдельном учебном элементе. Сначала проверьте статус и пояснение ошибки, затем содержательный результат и ветку, выбранную следующим действием.

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

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

Поле в настройках Что передать Обязательность и исходное значение
Тип карточки CRM (OWNER_TYPE_ID) Формат: целое число. Обязательно. Значение по умолчанию в настройках не задано
ID карточки CRM (OWNER_ID) Формат: целое число. Обязательно. Значение по умолчанию в настройках не задано
Текст комментария (TEXT) Формат: текст. Обязательно. Значение по умолчанию в настройках не задано
Подготовленные файлы: JSON (PREPARED_FILES) Формат: текст. Необязательно. По умолчанию: []
Уникальный ключ операции (REQUEST_KEY) Формат: строка. Обязательно. Значение по умолчанию в настройках не задано

Учебный пример

Пример показывает способ настройки на вымышленных данных и ожидаемый смысл результата; это не отчёт о запуске на вашем портале.

  • Тип карточки CRM (OWNER_TYPE_ID): 2.
  • ID карточки CRM (OWNER_ID): 501.
  • Текст комментария (TEXT): Состав заказа согласован..
  • Подготовленные файлы: JSON (PREPARED_FILES): [].
  • Уникальный ключ операции (REQUEST_KEY): deal-501-approved-v1.

Подготовленные файлы: JSON (PREPARED_FILES)

Копируйте в это поле только содержимое блока, без названия поля и внешней обёртки со всеми настройками. Здесь нужен JSON-массив в квадратных скобках. Пустой массив [] означает отсутствие элементов; объект {} его не заменяет. Каждый файл задаётся объектом с name (имя с расширением), contentBase64 (полное содержимое файла в Base64 строкой) и allowedFormats (массив разрешённых форматов). Допустимы pdf, png, jpeg, gif, webp, zip; максимум пять файлов и 5 МиБ суммарно. [] создаёт комментарий без файлов. ID Диска и ссылка на файл не заменяют contentBase64.

[]

Вариант с одним маленьким учебным PNG показывает полный объект файла. Для рабочего вложения передайте собственные имя, полное содержимое и разрешённый формат; не вставляйте в contentBase64 адрес файла или путь на компьютере.

[
  {
    "name": "sample.png",
    "contentBase64": "iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR4nGNg+A8AAQIBAEK+vGgAAAAASUVORK5CYII=",
    "allowedFormats": [
      "png"
    ]
  }
]

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

Какие данные возвращает и что делать дальше

Результат Какое значение получает следующий шаг
ID комментария (commentId) целое число
ID файлов комментария (fileIds) целое число, несколько значений
Получен сохранённый результат (replayed) да/нет
Статус выполнения (status) да/нет
Пояснение ошибки (error) строка

Сохраните «ID комментария» для дальнейшей связи с событием. Для обновления используйте отдельного робота изменения собственного комментария. Вложения передавайте подготовленными данными, а не готовыми ID Диска.

Ошибки и ограничения

Проверяйте результат действия до следующего изменения карточки. Ошибка доступа, неверный идентификатор и отсутствие найденного элемента требуют разных веток процесса. Не подставляйте нулевой или пустой результат как идентификатор существующего документа.