This is a comment on the connection of self-written CRM.

Для отправки заявок на занятия с сайта sanlin-football.kz в CRM требуется послать в POST-запросе на URL http://football.rict.su/Request/Accept JSON следующего вида: { "token" : "d9d0c12116e16821240cb32179cdf39", "city" : "Астана", "name" : "Иван" "phone" : "111222333444" } строковые данные передаются в кодировке UTF-8 token рассчитывается следующим образом: (пример приводится ниже) 1. Берётся текущее время UTC с точностью до минут 2. Время переводится в количество секунд, прошедших с начала эпохи 3. К текстовому представлению количества секунд добавляется секретная строка 4. От полученной строки считается хэш MD5, байты хэша переводятся в вид шестнадцатеричной строки 5. token готов (регистр символов в строке не важен) Замечание. Если за время от расчёта токена до его получения CRМ произошёл переход секунд 59 -> 00, то CRM примет значение токена за прошлую минуту В ответ CRM отправляет JSON вида: { "code": 0, "message": "Нет ошибок", "result_id": 2 } если HTTP-статус 200 и параметр code == 0, то заявка успешно отправлена, поле result_id содержит её идентификатор. В противном случае code содержит внутренний код ошибки CRM, message содержит текстовое описание ошибки $secret = "DHOHkwUgPIzMm"; $timestamp = gmdate("Ymd H:i:00")." UTC"; $seconds = strtotime($timestamp); $str = $seconds.$secret; $token = md5($str); class Request { public $token; public $phone; public $name; public $city; } $new_request = new Request(); $new_request->token = $token; $new_request->name = "Сергей"; $new_request->phone = "9998889988"; $new_request->city = "Павлодар"; $data = json_encode($new_request); $url = 'http://football.rict.su/Request/Accept'; $context = stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => "Content-type: application/json; charset=utf-8\r\n"."Content-Length: ".strlen($data), 'content' => $data, 'timeout' => 30, ), )); $ret = file_get_contents($url, false, $context); print_r($ret); 

Here is a hook for contact forms.

 add_action( 'wpcf7_mail_sent', 'your_wpcf7_mail_sent_function' ); /// Хук WordPress для работы с CF7 function your_wpcf7_mail_sent_function( $contact_form ) { $title = $contact_form->title; $posted_data = $contact_form->posted_data; if ('Контактная форма 1' == $title) { $submission = WPCF7_Submission::get_instance(); $posted_data = $submission->get_posted_data(); //взяли данные из формы при отправке $name = $posted_data['text-331']; // это поля вформы $phone = $posted_data['tel-720']; $city = $posted_data['text-389']; } } 

How to transfer data to CRM from contact forms? That is, send a request with a token, as they write in the description.

Here is my code

 add_action( 'wpcf7_mail_sent', 'your_wpcf7_mail_sent_function' ); /// Хук WordPress для работы с CF7 function your_wpcf7_mail_sent_function( $contact_form ) { $title = $contact_form->title; $posted_data = $contact_form->posted_data; if ('Контактная форма 1' == $title) { $submission = WPCF7_Submission::get_instance(); $posted_data = $submission->get_posted_data(); //взяли данные из формы при отправке $name = $posted_data['text-331']; // это поля вформы $phone = $posted_data['tel-720']; $city = $posted_data['text-389']; $secret = "DHOHkwUgPIzMm"; $timestamp = gmdate("Ymd H:i:00")." UTC"; $seconds = strtotime($timestamp); $str = $seconds.$secret; $token = md5($str); class Request { public $token; public $phone; public $name; public $city; } $new_request = new Request(); $new_request->token = $token; $new_request->name = $name; $new_request->phone = $phone; $new_request->city = $city; $data = json_encode($new_request); $url = 'http://football.rict.su/Request/Accept'; $context = stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => "Content-type: application/json; charset=utf-8\r\n"."Content-Length: ".strlen($data), 'content' => $data, 'timeout' => 30, ), )); $ret = file_get_contents($url, false, $context); print_r($ret); } } 
  • Show your code, how you are trying to do it, and what you specifically fail. - KAGG Design
  • added in the application. The form didn’t send out to work - Dmitry

0