Общие сведения

Events - система событий, позволяющая выполнить сторонний код или отправить запрос во внешний скрипт (посредством GET или POST запросов) в зависимости от происходящих в системе событий (например, Добавление нового клиента). Доступна только для коробочного варианта поставки.

Подключить свои обработчики на те или иные события можно с помощью файла "developer/events.php", поставлемого с открытым исходным кодом в коробочном варианте. Файл содержит перечень поддерживаемых событий, а также некоторые примеры использования.

Файл "events.php" содержит подробные комментарии, но ниже мы подробнее рассмотрим каждое событие и получаемые при этом параметры.

Внимание

система Events дополнена системой Webhook, которая позволяет подключаться к событиям без необходимости включений в код

Зарегистрированные события

Для клиентов

client.import

Получаемые аргументы:

  • array clids - массив clid новых записей клиентов
  • array pids - массив pid новых записей клонтактов
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

client.expressadd

Событие, срабатывающее при добавлении Клиента/Контакта через Экспресс-форму, через обработчик лидов

Получаемые аргументы:

  • integer pid - pid новой записи клонтакта
  • integer clid - clid новой записи клиента
  • nteger autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

client.add

Событие, срабатывающее при добавлении Клиента через обычную-форму, через обращения

Получаемые аргументы:

  • integer clid - clid новой записи клиента
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

client.edit

Событие, срабатывающее при изменении Клиента

Получаемые аргументы:

  • integer clid - clid новой записи клиента
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника
  • array newparam - массив измененных параметров

client.delete

Событие, срабатывающее при удалении Клиента

Получаемые аргументы:

  • integer clid - clid новой записи клиента
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

client.change.recv

Событие, срабатывающее при изменении реквизитов Клиента

Получаемые аргументы:

  • integer clid - clid новой записи клиента
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

client.change.user

Событие, срабатывающее при изменении Ответственного за Клиента

Получаемые аргументы:

  • integer clid - clid новой записи клиента
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

Для контактов

person.add

Событие, срабатывающее при добавлении Контакта через обычную-форму, через обращения

Получаемые аргументы:

  • string pid - pid новой записи клонтакта
  • string autor - id сотрудника, выполнившего действие
  • string user - id ответственного сотрудника

person.edit

Событие, срабатывающее при изменении Контакта

Получаемые аргументы:

  • integer pid - pid записи контакта
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

person.delete

Событие, срабатывающее при удалении Контакта

Получаемые аргументы:

  • integer pid - pid записи контакта
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

person.change.user

Событие, срабатывающее при изменении Ответственного за Контакт

Получаемые аргументы:

  • integer pid - pid записи контакта
  • integer autor - id сотрудника, выполнившего действие
  • integer user - id ответственного сотрудника

Для сделок

deal.add

Событие, срабатывающее при добавлении новой сделки

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • string userUID - UID ответственного сотрудника во внешней системе

deal.edit

Событие, срабатывающее при изменении основной информации сделки

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • array newparam - массив измененных параметров

deal.delete

Событие, срабатывающее при удалении сделки

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие

deal.change.user

Событие, срабатывающее при изменении ответственного за сделку

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • integer olduser - id предыдущего сотрудника, ответственного за сделку
  • integer newuser - id нового сотрудника, ответственного за сделку
  • string comment - комментарий внесения изменений

deal.change.step

Событие, срабатывающее при изменении ответственного за сделку

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • integer stepOld - название предыдущего этапа (например 10)
  • integer stepNew - название нового этапа (например 20)

deal.close

Событие, срабатывающее при закрытии сделки

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • string summa - сумма закрытия сделки (фактическая, например - 10340.00)
  • string status - статус закрытия (например Победа)

invoice.add

Событие, срабатывающее при добавлении нового счета

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • string user - id ответственного сотрудника
  • string userUID - UID ответственного сотрудника во внешней системе
  • string summa - сумма счета (например - 10340.00) * string invoice - номер счета

invoice.edit

Событие, срабатывающее при внесении изменений в счет

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • string user - id ответственного сотрудника
  • string userUID - UID ответственного сотрудника во внешней системе
  • string summa - сумма счета (например - 10340.00) * string invoice - номер счета

invoice.doit

Событие, срабатывающее при отметке счета оплаченным

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • string userUID - UID ответственного сотрудника во внешней системе
  • string invoice - номер счета
  • string summa - сумма платежа (например - 10340.00), может быть частичной
  • string summaNew - сумма созданного платежа (например - 10340.00), вычисляется как разница сумм по счету и суммы платежа

invoice.expressadd

Событие, срабатывающее при внесении платежа без выставления счета

Получаемые аргументы:

  • integer did - did записи сделки
  • integer autor - id сотрудника, выполнившего действие
  • string userUID - UID ответственного сотрудника во внешней системе
  • string invoice - номер счета
  • string summa - сумма платежа (например - 10340.00), может быть частичной
  • string summaNew - сумма созданного платежа (например - 10340.00), вычисляется как разница сумм по счету и суммы платежа

Для напоминаний

task.add

Событие, срабатывающее при добавлении напоминания

  • integer id - id записи напоминания
  • integer autor - id сотрудника, выполнившего действие

task.edit

Событие, срабатывающее при изменении напоминания

  • integer id - id записи напоминания
  • integer autor - id сотрудника, выполнившего действие

task.doit

Событие, срабатывающее при выполнении напоминания

  • integer id - id записи напоминания
  • integer autor - id сотрудника, выполнившего действие

Для истории активностей

history.add

Событие, срабатывающее при добавлении записи в Историю

  • integer id - id записи напоминания
  • integer autor - id сотрудника, выполнившего действие

history.edit

Событие, срабатывающее при изменении записи в Историю

  • integer id - id записи
  • integer autor - id сотрудника, выполнившего действие

history.doit

Событие, срабатывающее при выполнении напоминания

  • integer id - id записи напоминания
  • integer autor - id сотрудника, выполнившего действие

Для заявок

lead.do

Событие, срабатывающее при обработке заявки

Внимание

при обработке заявки другие события не вызываются

  • integer id - id записи
  • integer autor - id сотрудника, выполнившего действие
  • integer clid - id записи клиента, если добавлен новый клиент
  • integer pid - id записи контакта, если добавлен новый контакт
  • integer did - id записи сделки, если добавлена

Для обращений

entry.add

Событие, срабатывающее при добавлении обращения

  • integer id - id записи обращения
  • integer clid - id записи клиента
  • integer pid - id записи контакта
  • integer did - id записи сделки, если добавлена
  • integer autor - id сотрудника, выполнившего действие

entry.status

Событие, срабатывающее при отмене обращения

  • integer id - id обращения
  • integer autor - id сотрудника, выполнившего действие
  • integer status = 2 ['0' => 'Новое', '1' => 'Обработано', '2' => 'Отменено'];