Как сделать свое активити для Битрикс24 без написания кода
В Битрикс24 вы определяете логику автоматизации с помощью бизнес-процессов, которые состоят из активити.
Есть много готовых активити, но часто их возможностей не хватает или пользоваться ими неудобно. И в этом случае возникает необходимость реализовать свое активити.
Тогда у вас есть 2 варианта:
- сделать скрипт на PHP; но даже если вы PHP-программист, вам понадобится как минимум рабочий день, чтобы в этом разобраться
- более быстрый и удобный способ - использовать приложение REST.js: Javascript-активити и Конструктор роботов в Маркете. В этом случае вам потребуется только знание Javascript. Этим способом можно внедрить активити за несколько минут. Подробнее - в этом видео: https://vk.com/video-225790930_456239022
Второй вариант эффективен, но что делать, если вы не знаете Javascript?
ChatGPT
С помощью ChatGPT можно генерировать код для автоматизации Битрикс24, а с помощью REST.js - внедрять его моментально
ChatGPT полезен для создания программ на JavaScript, даже если вы не знаете этот язык. Он может объяснять, как работает код, предоставлять примеры и помогать исправлять ошибки.
Я использую ChatGPT-4o через сервис MashaGPT. В этом же сервисе есть и бесплатная модель ChatGPT-4o-mini, но она не подходит, потому что качество генерируемого кода существенно ниже.
Контекст REST.js
Если научить ChatGPT, как работать с REST.js, то вы сможете создавать свое активити просто описав, что вам требуется.
Для этого перед формулированием задачи в ChatGPT, отправьте ему сообщение с контекстом для REST.js, который можно найти по ссылке: https://app.restjs.ru/doc/chatgpt_context.html
Далее я покажу несколько примеров задач, решенных с помощью ChatGPT.
Пример #1. Смена ответственного за сделки
Промпт:
Напиши программу, которая получает id пользователя и id второго пользователя и должна во всех сделках назначенных на первого пользователя сменить ответственного на второго.
Пример #2. Количество незакрытых задач
Промпт:
Напиши программу, которая ищет задачи, относящиеся к сделке (фильтр по UF_CRM_TASK по "D_" + id сделки) и возвращает количество незакрытых задач. Незакрытая задача - это задача в любом статусе кроме 5 ("задача завершена") и 7 ("задача отклонена"). Фильтровать статус нужно в запросе API.
Пример #3. Поиск номеров телефонов в письмах
Промпт:
Напиши программу, которая получает на вход id сделки и должна найти письма (crm.activity.list с TYPE_ID = 4), привязанные к этой сделке (связь по OWNER_ID и OWNER_TYPE_ID), затем найти в теле писем номера телефонов (формат номера - российские номера, например: +7 988 358 55-22, +7 (988) 358-55 -22, 89883585522) и вернуть их в виде массива.
Пример #4. Поиск сделок с незавершенными делами
Промпт:
Напиши программу, которая находит id сделок с незавершенными делами. Нужно найти незавершенные дела (crm.activity.list), которые относятся к сделкам (OWNER_TYPE_ID = 2), затем находить id сделок и возвращать их массив.
Пример #5. Копирование файлов из письма в сделку
Промпт:
Напиши программу, которая получает на вход id сделки и должна найти только входящие письма (crm.activity.list с TYPE_ID = 4 и DIRECTION = 1), привязанные к этой сделке. Затем скачивает из всех писем вложения и сохраняет их в пользовательское поле сделки типа Файл. Имя поля определи как константу. Если файлов в письмах нет, то поле должно быть пустым. URL файлов находятся в поле FILES[].url ответа
Вывод
С помощью ChatGPT и REST.js можно создавать активити, задавая только его описание. Однако, вам по-прежнему надо ориентироваться в REST API Битрикс24, чтобы проверять на корректность сгенерированный код.