Files
erv-clientright/debug_crm_responses.php

194 lines
8.0 KiB
PHP
Raw Permalink Normal View History

2026-03-13 10:42:01 +03:00
<?php
// Скрипт для отладки ответов от CRM
// Файл: debug_crm_responses.php
echo "<h2>🔍 ОТЛАДКА ОТВЕТОВ ОТ CRM</h2>";
echo "<p><strong>Время:</strong> " . date('Y-m-d H:i:s') . "</p>";
echo "<hr>";
// Тестируем создание клиента напрямую
echo "<h3>1. Тест создания клиента напрямую в CRM:</h3>";
$client_data = [
'operation' => 'CreateContact',
'sessionName' => 'TEST_SESSION', // Будет заменен реальным
'firstname' => 'Александра',
'secondname' => 'Алексеевна',
'lastname' => 'Козлова',
'mobile' => '921 862-69-44',
'email' => 'sashyliakoz@gmail.com',
'birthday' => '1996-09-04',
'mailingstreet' => 'Индекс 188300, Ленинградская область, г. Гатчина, ул. Изотова, д.12, к.2, кв. 38',
'inn' => '470519373754',
'code' => '1'
];
echo "<p><strong>Данные клиента:</strong></p>";
echo "<pre>" . json_encode($client_data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
// Сначала получаем sessionName
echo "<h3>2. Получение sessionName:</h3>";
$challenge_data = [
'operation' => 'getchallenge',
'username' => 'api'
];
echo "<p><strong>Данные getchallenge:</strong></p>";
echo "<pre>" . json_encode($challenge_data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
$url = 'https://crm.clientright.ru/webservice.php?operation=getchallenge&username=api';
echo "<p><strong>URL getchallenge:</strong> " . $url . "</p>";
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_SSL_VERIFYHOST => 2,
CURLOPT_TIMEOUT => 30
]);
$challenge_response = curl_exec($curl);
curl_close($curl);
echo "<p><strong>Ответ getchallenge:</strong></p>";
echo "<pre>" . htmlspecialchars($challenge_response) . "</pre>";
$challenge_result = json_decode($challenge_response, true);
if ($challenge_result && isset($challenge_result['result']['token'])) {
$token = $challenge_result['result']['token'];
echo "<p style='color: green;'>✅ Получен token: " . substr($token, 0, 20) . "...</p>";
// Логинимся
echo "<h3>3. Авторизация:</h3>";
$generatedKey = md5($token . '4r9ANex8PT2IuRV');
$login_data = [
'operation' => 'login',
'username' => 'api',
'accessKey' => $generatedKey
];
echo "<p><strong>Данные login:</strong></p>";
echo "<pre>" . json_encode($login_data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
echo "<p><strong>Сгенерированный ключ:</strong> " . $generatedKey . "</p>";
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://crm.clientright.ru/webservice.php',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $login_data,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT => 30
]);
$login_response = curl_exec($curl);
curl_close($curl);
echo "<p><strong>Ответ login:</strong></p>";
echo "<pre>" . htmlspecialchars($login_response) . "</pre>";
$login_result = json_decode($login_response, true);
if ($login_result && isset($login_result['result']['sessionName'])) {
$sessionName = $login_result['result']['sessionName'];
echo "<p style='color: green;'>✅ Получен sessionName: " . $sessionName . "</p>";
// Теперь тестируем создание клиента
echo "<h3>4. Тест создания клиента:</h3>";
$client_data['sessionName'] = $sessionName;
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://crm.clientright.ru/webservice.php',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $client_data,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT => 30
]);
$client_response = curl_exec($curl);
curl_close($curl);
echo "<p><strong>Ответ CreateContact:</strong></p>";
echo "<pre>" . htmlspecialchars($client_response) . "</pre>";
$client_result = json_decode($client_response, true);
if ($client_result) {
if (isset($client_result['result'])) {
echo "<p style='color: green;'>✅ Клиент создан с ID: " . $client_result['result'] . "</p>";
} else {
echo "<p style='color: red;'>❌ Ошибка создания клиента:</p>";
echo "<pre>" . json_encode($client_result, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
}
}
// Тестируем создание контрагента
echo "<h3>5. Тест создания контрагента:</h3>";
$contractor_data = [
'operation' => 'CreateAccount',
'sessionName' => $sessionName,
'inn' => '7714312079',
'ogrn' => '1037714037426',
'accountname' => 'Филиал ООО РСО ЕВРОИНС Туристическое',
'address' => '119049 Москва, 4-й Добрынинский пер., д.8, помещ. С 14-I, ком. 21-26',
'email' => 'info@erv.ru',
'phone' => '84956265800',
'website' => 'https://www.erv.ru/'
];
echo "<p><strong>Данные контрагента:</strong></p>";
echo "<pre>" . json_encode($contractor_data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => 'https://crm.clientright.ru/webservice.php',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POST => true,
CURLOPT_POSTFIELDS => $contractor_data,
CURLOPT_SSL_VERIFYPEER => false,
CURLOPT_TIMEOUT => 30
]);
$contractor_response = curl_exec($curl);
curl_close($curl);
echo "<p><strong>Ответ CreateAccount:</strong></p>";
echo "<pre>" . htmlspecialchars($contractor_response) . "</pre>";
$contractor_result = json_decode($contractor_response, true);
if ($contractor_result) {
if (isset($contractor_result['result'])) {
echo "<p style='color: green;'>✅ Контрагент создан с ID: " . $contractor_result['result'] . "</p>";
} else {
echo "<p style='color: red;'>❌ Ошибка создания контрагента:</p>";
echo "<pre>" . json_encode($contractor_result, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
}
}
} else {
echo "<p style='color: red;'>❌ Не удалось получить sessionName</p>";
}
} else {
echo "<p style='color: red;'>❌ Не удалось получить token</p>";
}
echo "<hr>";
echo "<h3>6. Сравнение с успешным логом:</h3>";
echo "<p><strong>Успешный лог (2025-09-10):</strong></p>";
echo "<pre>";
echo '{"operation":"CreateContact","sessionName":"61c825a768c1dd749ca62","mobile":"7 (953) 167-38-19","lastname":"Кулагин ","firstname":"Андрей ","secondname":"Викторович ","mailingstreet":"Ленинградская обл...","birthday":"11-05-1967","birthplace":"г Ростов-на-Дону ","inn":"780700202965","requisites":"Реквизиты...","email":"kulaginandrey110567@gmail.com","code":"438138"}';
echo "</pre>";
echo "<p><strong>Наши данные:</strong></p>";
echo "<pre>" . json_encode($client_data, JSON_UNESCAPED_UNICODE | JSON_PRETTY_PRINT) . "</pre>";
echo "<hr>";
echo "<p><strong>Отладка завершена!</strong></p>";
?>