-
Notifications
You must be signed in to change notification settings - Fork 0
/
make_leads.php
89 lines (77 loc) · 6.24 KB
/
make_leads.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
#!/usr/bin/php
<?php
// Первая строка является шебангом (от англ. Shebang)
// Включение строго-типизированного режима
declare(strict_types=1);
// Требование подключения файла autoload.php
require_once __DIR__ . '/vendor/autoload.php';
// Импорт классов
use Monolog\Handler\StreamHandler;
use Monolog\Logger;
use Symfony\Component\HttpClient\HttpClient;
// Указание файла, в который будут записываться логи (журнал)
$log = new Logger('name');
$log->pushHandler(new StreamHandler('/var/log/b24-api-client-debug.log', Logger::DEBUG));
// Авторизация по WebHook без проверки сертификатов домена и TLS
$client = HttpClient::create(["verify_peer"=>false, "verify_host"=>false]);
// Получение ключа REST API из файла
$key = str_replace("\n", "", fgets(fopen('/var/rest/rest_api_key.txt', 'r')));
// Определение полномочий по ключу REST API
$credentials = new \Bitrix24\SDK\Core\Credentials\Credentials(
new \Bitrix24\SDK\Core\Credentials\WebhookUrl($key),
null,
null,
null
);
// Инициализация API клиента
$apiClient = new \Bitrix24\SDK\Core\ApiClient($credentials, $client, $log);
// Функция генерации случайного имени
function rand_name() {
$set = array("Адам", "Адриан", "Аким", "Александр", "Алексей", "Альберт", "Анатолий", "Андрей",
"Антип", "Антон", "Аркадий", "Артем", "Артур", "Афанасий", "Борис", "Вадим", "Валентин", "Валерий",
"Василий", "Вениамин", "Виктор", "Владимир", "Виссарион", "Виталий", "Владислав", "Вячеслав",
"Геннадий", "Георгий", "Григорий", "Даниил", "Денис", "Дмитрий", "Евгений", "Егор", "Елисей",
"Захар", "Иван", "Игорь", "Игнат", "Казимир", "Кирилл", "Леонид", "Леонард", "Макар", "Максим",
"Мирон", "Митрофан", "Михаил", "Николай", "Олег", "Родион", "Роман", "Ростислав", "Светозар",
"Святослав", "Серафим", "Семен", "Степан", "Станислав", "Стефан", "Тимофей", "Тарас", "Федор",
"Филипп", "Эдуард", "Юлий", "Юрий", "Ярослав");
return $set[array_rand($set, 1)];
}
// Функция генерации случайного отчества
function rand_second_name() {
$set = array("Адамович", "Адрианович", "Акимович", "Александрович", "Алексеевич", "Альбертович",
"Анатольевич", "Андреевич", "Антипович", "Антонович", "Аркадьевич", "Артемович", "Артурович",
"Афанасьевич", "Борисович", "Вадимович", "Валентинович", "Валерьевич", "Васильевич", "Вениаминович",
"Викторович", "Владимирович", "Виссарионович", "Витальевич", "Владиславович", "Вячеславович",
"Геннадьевич", "Георгиевич", "Даниилович", "Денисович", "Дмитриевич", "Евгеньевич", "Егорович",
"Елисеевич", "Захарович", "Иванович", "Казимирович", "Леонидович", "Леонардович", "Макарович",
"Максимович", "Миронович", "Митрофанович", "Михайлович", "Николаевич", "Родионович", "Романович",
"Ростиславович", "Светозарович", "Святославович", "Серафимович", "Семенович", "Степанович",
"Станиславович", "Стефанович", "Тимофеевич", "Тарасович", "Федорович", "Филиппович", "Эдуардович",
"Юльевич", "Юрьевич", "Ярославович");
return $set[array_rand($set, 1)];
}
// Функция генерации случайной фамилии
function rand_last_name() {
$set = array("Иванов", "Смирнов", "Кузнецов", "Попов", "Васильев", "Петров", "Петров", "Соколов",
"Михайлов", "Новиков", "Федоров", "Морозов", "Волков", "Алексеев", "Лебедев", "Семенов", "Егоров",
"Павлов", "Козлов", "Степанов", "Николаев", "Орлов", "Андреев", "Макаров", "Никитин", "Захаров",
"Зайцев", "Соловьев", "Тирон", "Глава", "Андрианов", "Умаров", "Перов", "Кростылев", "Чиндарев",
"Кузьмин", "Гусев", "Фролов", "Сергеев", "Белов", "Медведев", "Путин", "Поляков", "Насыров",
"Самойленко", "Столбов", "Булаев", "Ковалев", "Жамбалдоржиев", "Нагзибеков", "Кочагов", "Загребин",
"Ли", "Осипов", "Жуков", "Серов", "Демин");
return $set[array_rand($set, 1)];
}
// Цикл, который будет 50 раз создавать лидов со случайными значениями параметров
for ($i = 0; $i < 50; $i++) {
// Определение параметров
$name = rand_name();
$second_name = rand_second_name();
$last_name = rand_last_name();
// Объединение параметров в массив полей
$fields = array("NAME"=>$name, "SECOND_NAME"=>$second_name, "LAST_NAME"=>$last_name,
"STATUS_ID"=>"NEW", "UF_CRM_1671268270567"=>0);
// UF_CRM_1671268270567 – пользовательское поле, которое означает процент завершения
// Запрос на создание лида с определёнными выше параметрами
$apiClient->getResponse('crm.lead.add', ["fields"=>$fields]);
}