Содержание

Удаленный запуск Бизнес-Процессов с помощью HTTP Обработчика

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

Вы можете выполнять один Бизнес-Процесс, указав его ID или выбрать несколько Бизнес-Процессов, которые будут контролироваться триггером настроек

Случаи использования

  • Замена вебсервиса на создание записи, например, замена форм на целые страницы для генерации Обращений
  • like Forms on Webpage for Lead collection
  • Выполнять специальные действия со страницы (Внешнее администрирование) если ID записи контрагента известно (создание КП и т.п.) execute special processes from webpage (External Administrations) if the record ID of organization is known (generation of quotes, …)

Установка и настройка

Доступ к обработчику HTTP-запросов запрещен по умолчанию для всех IP-адресов.
Если вы хотите использовать подобного рода обработчик, вы должны иметь абсолютный доступ с любого IP-адреса, чтобы выполнить Бизнес-Процесс.

Это можно настроить в “Settings HTTP Handler”.

Нажмите “new permission” или “изменить” и увидите специальную форму.

Выбор Бизнес-Процесса

To configure the Workflow/Trigger you want to execute, use the following GET Variables:

Пример
Вы хотите выполнить определенный Бизнес-Процесс без связанной записи (например, создать нового лида), тогда используйте следующий код:

?record_id=0&workflow_id=<IDofWorkflow>

Отправка переменных

Для того, чтобы отправить переменные базы данных Бизнес-Процессу, вы должны использовать только метод POST.
Значения могут быть использованы в выполненных Бизнес-Процессах в переменной $env variable.

Например если вы отправляете в переменной фамилию, вы должны дать переменной доступ к каждой Задаче этого Бизнес-Процесса с помощью:

$env[“lastname”]

.

Примеры

PHP пример

$url = '<urlofvtigerCRM>/<shorturl>?<ExecutionConfiguration>';
 
$fields = array(
   'firstname' => "Firstname",
   'lastname' => "Lastname",
   'street' => "streetname 123"
);
 
foreach($fields as $key=>$value) {
  $fields_string .= $key.'='.urlencode($value).'&';
}
rtrim($fields_string, '&');
 
$ch = curl_init();
 
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$result = curl_exec($ch);
curl_close($ch);

Вы хотите выполнить Бизнес-Процесс с ID 77 для записи 852, тогда вам нужно написать следующее:

$url = '<urlofvtigerCRM>/<shorturl>?record_id=852&workflow_id=77';
 
$fields = array(
   'firstname' => "Firstname",
   'lastname' => "Lastname",
   'street' => "streetname 123"
);
 
foreach($fields as $key=>$value) {
  $fields_string .= $key.'='.urlencode($value).'&';
}
rtrim($fields_string, '&');
 
$ch = curl_init();
 
curl_setopt($ch,CURLOPT_URL, $url);
curl_setopt($ch,CURLOPT_POST, count($fields));
curl_setopt($ch,CURLOPT_POSTFIELDS, $fields_string);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);
$result = curl_exec($ch);
curl_close($ch);