Как создать разный сценарий создания лида в зависимости от почты?

Для создания разных сценариев создания лида в зависимости от почты в Битрикс24 вам понадобится использовать обработчик события.

1. Начните с создания нового обработчика события. Для этого зайдите в раздел "Настройки" -> "Настройки продукта" -> "Обработчики событий". Нажмите на кнопку "Добавить" и выберите тип обработчика "Событие создание нового входящего письма".

2. Задайте условия для определения, какой сценарий использовать в зависимости от почты. В коде обработчика события вы можете использовать функцию preg_match для проверки e-mail адреса с помощью регулярного выражения. Определите шаблон адреса, который соответствует одному из сценариев. Например, если адрес [email protected] соответствует сценарию "Продажи", а [email protected] - сценарию "Техническая поддержка", используйте следующий код:

$email = $arFields['EMAIL'];
if (preg_match("/[email protected]$/i", $email)) {
  $scenario = "Продажи";
} elseif (preg_match("/[email protected]$/i", $email)) {
  $scenario = "Техническая поддержка";
} else {
  $scenario = "Общий сценарий";
}

3. В зависимости от сценария выполните необходимые действия. Например, создайте новый лида или измените его параметры. Для создания лида вы можете использовать функцию CrmLeadTable::add:

use BitrixCrm;
 
$leadFields = array(
  'TITLE' => 'Новый лид',
  'NAME' => $arFields['NAME'],
  'LAST_NAME' => $arFields['LAST_NAME'],
  'PHONE' => array(array("VALUE" => $arFields['PHONE'], "VALUE_TYPE" => "WORK")),
  'EMAIL' => array(array("VALUE" => $arFields['EMAIL'], "VALUE_TYPE" => "WORK")),
  'STATUS_ID' => 'NEW',
  'SOURCE_ID' => 'EMAIL',
);
$leadId = CrmLeadTable::add($leadFields)->getId();

4. Сохраните изменения обработчика события.

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