<?php
/* ==========================================================================
Функция создает новый лид в Bitrix24
=============================================================================*/
function _sendRestBitrix($title = "", $name = "", $sourse_desc = "", $text = "", $phone = "", $email = "", $add = array()){
// Данные для соединения с CRM
define('CRM_HOST', '****');
define('CRM_PORT', '443');
define('CRM_PATH', '/crm/configs/import/lead.php');
// Данные для авторизации в CRM
define('CRM_LOGIN', '****');
define('CRM_PASSWORD', '****');
/********************************************************************************************/
$postData = array(
'TITLE' => $title, //Название лида
'STATUS_ID' => 'NEW',
'NAME' => $name,
'LAST_NAME' => isset($add['LAST_NAME'])? $add['LAST_NAME'] : '',
'SOURCE_ID' => 'мирадом.рф',
'SOURCE_DESCRIPTION' => $sourse_desc,
'COMMENTS' => $text,
'PHONE_MOBILE' => $phone,
'EMAIL_HOME' => $email,
'ASSIGNED_BY_ID' => 1,
);
// append authorization data
if (defined('CRM_AUTH')) {
$postData['AUTH'] = CRM_AUTH;
} else {
$postData['LOGIN'] = CRM_LOGIN;
$postData['PASSWORD'] = CRM_PASSWORD;
}
// open socket to CRM
$fp = fsockopen("ssl://".CRM_HOST, CRM_PORT, $errno, $errstr, 30);
if ($fp) {
// prepare POST data
$strPostData = '';
foreach ($postData as $key => $value)
$strPostData .= ($strPostData == '' ? '' : '&').$key.'='.urlencode($value);
// prepare POST headers
$str = "POST ".CRM_PATH." HTTP/1.0\r\n";
$str .= "Host: ".CRM_HOST."\r\n";
$str .= "Content-Type: application/x-www-form-urlencoded\r\n";
$str .= "Content-Length: ".strlen($strPostData)."\r\n";
$str .= "Connection: close\r\n\r\n";
$str .= $strPostData;
// send POST to CRM
fwrite($fp, $str);
// get CRM headers
$result = '';
while (!feof($fp))
{
$result .= fgets($fp, 128);
}
fclose($fp);
// cut response headers
$response = explode("\r\n\r\n", $result);
$output = '<pre>'.print_r($response[1], 1).'</pre>';
return $output;
} else {
return 'Connection Failed! '.$errstr.' ('.$errno.')';
}
}