454 lines
18 KiB
PHP
454 lines
18 KiB
PHP
<?php
|
||
|
||
require_once($_SERVER['DOCUMENT_ROOT']."/config.php");
|
||
header('Content-Type: application/json');
|
||
//ini_set('memory_limit', '8192M');
|
||
error_reporting(E_ALL | E_STRICT);
|
||
ini_set('display_errors', 1);
|
||
|
||
$pdo = new MysqlPdo(hst, ndb, user, pass);
|
||
$sql = "SET NAMES 'utf8'";
|
||
$pdo->query($sql);
|
||
|
||
|
||
$agency_id = 5238;
|
||
|
||
$user = new User();
|
||
$user->get($agency_id);
|
||
//$user->getNewUserPackages();
|
||
|
||
/*curl -X POST "https://platform-api.max.ru/subscriptions" \
|
||
-H "Authorization: {access_token}" \
|
||
-H "Content-Type: application/json" \
|
||
-d '{
|
||
"url": "https://your-domain.com/webhook",
|
||
"update_types": ["message_created", "bot_started"],
|
||
"secret": "your_secret"
|
||
}'*/
|
||
|
||
|
||
/* $attachments = [
|
||
array(
|
||
'type'=>'inline_keyboard',
|
||
'payload' => array(
|
||
'buttons' => [
|
||
[
|
||
[
|
||
"type" => "callback",
|
||
'text' => 'Прочитано',
|
||
'payload' => serialize(array('action'=>5,'id'=>331688))
|
||
|
||
],
|
||
[
|
||
"type" => "callback",
|
||
'text' => 'Ответить',
|
||
'payload' => serialize(array('action'=>4,'id'=>331688))
|
||
|
||
]
|
||
],
|
||
[
|
||
[
|
||
"type" => "callback",
|
||
'text' => 'Создать заявку',
|
||
'payload' => serialize(array('action'=>6,'id'=>331688))
|
||
|
||
]
|
||
]
|
||
]
|
||
)
|
||
)
|
||
];
|
||
|
||
$bot = new MaxClass();
|
||
$res1 = $bot->send_messages_to_user(18529338, "dsfdsfds", $attachments);
|
||
var_dump($res1)
|
||
/*$update_types = [
|
||
'message_created',
|
||
'message_callback',
|
||
'user_removed',
|
||
'bot_started',
|
||
'bot_stopped'
|
||
];
|
||
//$res1 = $bot->set_subscription('https://tgbsrv.joywork.ru/max_bot.php', $update_types);
|
||
//$res = $bot->get_subscriptions();
|
||
|
||
$keyboardArr = [
|
||
[
|
||
[
|
||
'text' => 'Отметить выполненной',
|
||
'callback_data' => serialize(array('action'=>13,'id'=>$ev['id']))
|
||
|
||
]
|
||
],
|
||
[
|
||
|
||
[
|
||
'text' => 'Отметить выполненной и написать комментарий',
|
||
'callback_data' => serialize(array('action'=>14,'id'=>$ev['id']))
|
||
]
|
||
|
||
]
|
||
];
|
||
|
||
$payload = serialize(array('action'=>14,'id'=>19999));
|
||
var_dump($payload);
|
||
|
||
json_decode('[
|
||
{
|
||
"type": "inline_keyboard",
|
||
"payload": {
|
||
"buttons": [
|
||
[
|
||
{
|
||
"type": "callback",
|
||
"text": "Отметить выполненной",
|
||
"payload": "a:2:{s:6:\"action\";i:14;s:2:\"id\";i:19999;}"
|
||
}
|
||
]
|
||
[
|
||
{
|
||
"type": "callback",
|
||
"text": "Отметить выполненной и написать комментарий",
|
||
"payload": "11"
|
||
}
|
||
]
|
||
]
|
||
}
|
||
}
|
||
]');
|
||
$attachments = [
|
||
array(
|
||
'type'=>'inline_keyboard',
|
||
'payload' => array(
|
||
'buttons' => array(
|
||
array(
|
||
array(
|
||
"type" => "callback",
|
||
"text"=> "Отметить выполненной",
|
||
"payload"=> $payload
|
||
)
|
||
),
|
||
array(
|
||
array(
|
||
"type" => "callback",
|
||
"text"=> "Отметить выполненной и написать комментарий",
|
||
"payload"=> "a:2:{s:6:'action';i:14;s:2:'id';i:19999;}"
|
||
)
|
||
)
|
||
)
|
||
)
|
||
)
|
||
];
|
||
|
||
var_dump($attachments);
|
||
$res = $bot->send_messages_to_user(18529338, "<i>Ntrdfds</i> sdfdsfds", $attachments);
|
||
//$res = $bot->get_members(18529338);
|
||
var_dump($res);
|
||
//$res1 = $bot->me();
|
||
//var_dump($res1);
|
||
|
||
|
||
*/
|
||
|
||
/*$dataWhook = array('action'=>'object_update', 'object_id'=>91818517, 'section'=>'object', 'user_id'=>5238, 'agency_id'=>$agency_id);
|
||
//{"action":"object_archive","object_id":"91467885","section":"object","user_id":"5238","agency_id":"5238","reason":"Объект перенесен в Архив по причине: Отказ работать с компанией<br\/>Комментарий: 23263"}
|
||
|
||
$w_in = new WebHookIn(null, $agency_id);
|
||
$w_in->check_send($dataWhook);
|
||
|
||
//$w_in->save_temp_object(91818517);
|
||
//$w_s = new WebHookSend()
|
||
/*$sql_u = "SELECT * FROM users WHERE id in (select id from users where id=$agency_id or id_manager=$agency_id or id_manager in
|
||
(select id from users where id_manager=$agency_id or id_manager in
|
||
(select id from users where id_manager=$agency_id)))";
|
||
//echo $sql_u."\n";
|
||
|
||
$q_u = $pdo->query($sql_u);
|
||
while($r_u = $pdo->fetch_assoc($q_u)){
|
||
$allUsers[$r_u['phone']] = $r_u;
|
||
$usersIds[] = (int)$r_u['id'];
|
||
}
|
||
|
||
echo json_encode($usersIds);
|
||
$sql = "SELECT * FROM `events_clients` where user_id in (".implode(',', $usersIds).") AND `dop_text` like 'Переведена в активные по звонку%' AND date > '2026-01-19 00:00:00'";
|
||
$q = $pdo->query($sql);
|
||
|
||
echo $pdo->num_rows($q);
|
||
$reqs = [];
|
||
while($r = $pdo->fetch_assoc($q)){
|
||
$date = date('Y-m-d', strtotime(str_replace('Переведена в активные по звонку ', '', $r['dop_text'])));
|
||
if($date != '2026-01-19' && $date != '2026-01-20'){
|
||
echo "\n".$date;
|
||
echo " -- ".$r['dop_text'];
|
||
$reqs[] = (int)$r['req_id'];
|
||
}
|
||
|
||
}*/
|
||
|
||
//var_dump($reqs);
|
||
|
||
/*$sql_del = "UPDATE `requisitions` SET `deleted` = '1' WHERE id in (".implode(',', $reqs).")";
|
||
echo "\n".$sql_del;*/
|
||
|
||
|
||
/* $start = microtime(true);
|
||
$tel = new Telegram(false, $pdo);
|
||
//{"chat_id":7024940778,"text":"Получено новое сообщение из чата АВИТО\nпо объекту ID 89970688 Краснодарский край, Калининский р-н, хутор Лебеди, ул Набережная, д 28\n\nОтправитель Фаузия Смирнова\nЗдравствуйте! Любовь, здравствуйте! Мой номер телефона +79183296157 моё имя Физа. Вчера удачно получилось посмотреть, проезжали мимо хутора. Для принятия окончательного решения ориентировочно 8-го планируем подъехать. Сын работает, зависим от него. Благодарю за понимание с уважением Физа. С Рождеством Христовым вас! Здоровья вам, вашим близким и родным.\n\nОтветить на сообщение можно в чатах JoyWork","parse_mode":"HTML","reply_markup":"{\"inline_keyboard\":[[{\"text\":\"Прочитано\",\"callback_data\":\"a:2:{s:6:\\\"action\\\";i:2;s:2:\\\"id\\\";s:7:\\\"1685894\\\";}\"},{\"text\":\"Ответить\",\"callback_data\":\"a:2:{s:6:\\\"action\\\";i:1;s:2:\\\"id\\\";s:7:\\\"1685894\\\";}\"}],[{\"text\":\"Создать заявку\",\"callback_data\":\"a:2:{s:6:\\\"action\\\";i:3;s:2:\\\"id\\\";s:7:\\\"1685894\\\";}\"}]]}"}
|
||
|
||
|
||
/*require_once $_SERVER['DOCUMENT_ROOT'] . "/telegramm/vendor/autoload.php";
|
||
$bot = new \TelegramBot\Api\BotApi('793676666:AAGFo66CjsmO2KxZVRwQbH8pLTvenpsHiHI');*/
|
||
|
||
/*$keyboardArr= [
|
||
[
|
||
[
|
||
'text' => 'Отметить выполненной',
|
||
'callback_data' => serialize(array('action'=>10,'id'=>9040378))
|
||
|
||
],
|
||
[
|
||
'text' => 'Отметить выполненной и написать комментарий',
|
||
'callback_data' => serialize(array('action'=>11,'id'=>9040378))
|
||
],
|
||
|
||
]
|
||
];
|
||
|
||
|
||
|
||
$text = "Получено новое сообщение из чата АВИТО\nпо объекту ID 89970688 Краснодарский край, Калининский р-н, хутор Лебеди, ул Набережная, д 28\n\nОтправитель Фаузия Смирнова\nЗдравствуйте! Любовь, здравствуйте! Мой номер телефона +79183296157 моё имя Физа. Вчера удачно получилось посмотреть, проезжали мимо хутора. Для принятия окончательного решения ориентировочно 8-го планируем подъехать. Сын работает, зависим от него. Благодарю за понимание с уважением Физа. С Рождеством Христовым вас! Здоровья вам, вашим близким и родным.\n\nОтветить на сообщение можно в чатах JoyWork";
|
||
echo mb_strlen($text, 'UTF-8')."\n";
|
||
|
||
|
||
//$res = $tel->send($text, 689521489,null, $keyboardArr);
|
||
|
||
//var_dump($res);
|
||
echo 'Время выполнения скрипта 1: '.round(microtime(true) - $start, 4).' сек.'."\n";
|
||
/*$keyboard = new \TelegramBot\Api\Types\Inline\InlineKeyboardMarkup($keyboardArr);
|
||
$bot->sendMessage(689521489, $text);*/
|
||
|
||
/* $keyboardArr= [
|
||
[
|
||
[
|
||
'text' => 'Отметить выполненной',
|
||
'callback_data' => serialize(array('action'=>10,'id'=>9040378))
|
||
|
||
],
|
||
[
|
||
'text' => 'Отметить выполненной и написать комментарий',
|
||
'callback_data' => serialize(array('action'=>11,'id'=>9040378))
|
||
],
|
||
|
||
]
|
||
]; */
|
||
|
||
|
||
|
||
|
||
/*$token = '793676666:AAGFo66CjsmO2KxZVRwQbH8pLTvenpsHiHI'; // Замените на ваш токен
|
||
$chat_id = 689521489; // Замените на ID чата
|
||
$text = 'Напоминание (время создания 05.12.2025 13:06)
|
||
Звонок по заявке Спрос по нашему объекту для Ntcn ID: 1539197
|
||
Клиент: Ntcn тел. +7(123)651-22-22
|
||
05 декабря 2025 в 13:03'; // Текст сообщения
|
||
|
||
$getQuery = [
|
||
'chat_id' => $chat_id,
|
||
'text' => $text,
|
||
'parse_mode' => 'HTML', // Или 'MarkdownV2', если нужно форматирование
|
||
'reply_markup' => json_encode(array(
|
||
'inline_keyboard' => $keyboardArr,
|
||
)
|
||
),
|
||
];
|
||
|
||
// Формируем URL с GET-параметрами
|
||
$url = "https://api.telegram.org/bot{$token}/sendMessage";
|
||
|
||
// Инициализация cURL
|
||
$ch = curl_init();
|
||
curl_setopt($ch, CURLOPT_URL, $url); // Устанавливаем URL
|
||
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // Возвращать результат в виде строки
|
||
// Если отправляем через POST (часто предпочтительнее для больших данных или JSON):
|
||
curl_setopt($ch, CURLOPT_POST, 1);
|
||
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($getQuery));
|
||
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
|
||
|
||
// Выполнение запроса
|
||
$result = curl_exec($ch);
|
||
|
||
// Проверка на ошибки
|
||
if (curl_errno($ch)) {
|
||
echo 'Ошибка cURL: ' . curl_error($ch);
|
||
} else {
|
||
// Обработка ответа
|
||
$response = json_decode($result);
|
||
if ($response->ok) {
|
||
echo "Сообщение отправлено успешно!";
|
||
} else {
|
||
echo "Ошибка отправки: " . $response->description;
|
||
}
|
||
}
|
||
|
||
// Закрытие сессии cURL
|
||
curl_close($ch);*/
|
||
|
||
|
||
|
||
|
||
|
||
//var_dump($_POST);
|
||
/*if(isset($_POST['event_id'])){
|
||
//var_dump($_POST['event_id']);
|
||
$result = [];
|
||
|
||
$res = json_decode($_POST['event_id'], true);
|
||
//var_dump($res);
|
||
if(!empty($res)){
|
||
$sql = "SELECT id FROM user_client_events WHERE id in (".implode(',',$res).")";
|
||
$q=mysql_query($sql);
|
||
while($r = mysql_fetch_assoc($q)){
|
||
$ids[] = (int)$r['id'];
|
||
}
|
||
|
||
|
||
|
||
foreach($res as $id){
|
||
if(!in_array($id, $ids)){
|
||
$result[] = $id;
|
||
}
|
||
}
|
||
}
|
||
echo json_encode($result);
|
||
//$id = (int)$_POST['event_id'];
|
||
/*$sql = "SELECT * FROM user_client_events WHERE id = {$id}";
|
||
$q = mysql_query($sql);
|
||
echo mysql_num_rows($q);*/
|
||
/*}
|
||
|
||
//$w = new WebHookIn();
|
||
//$userIds = $w->getAllUserAgency(5238);
|
||
|
||
/*$dbpg = new MysqlPdo(hstpg, ndbpg, userpg, passpg, false, '5432', true);
|
||
|
||
$sql = "SELECT * FROM rule_route";
|
||
|
||
$q = $dbpg->query($sql);
|
||
|
||
*/
|
||
|
||
//$beeline = new BeelineApiClass('9a2e2d26-e463-4a35-9539-b6d170f5f262');
|
||
|
||
/*while($r = $dbpg->fetch_assoc($q)){
|
||
echo $r['phone'].' - '.$r['extension']."\n";
|
||
//$rez = $beeline->put_route($r['phone'], $r['extension']);
|
||
|
||
//var_dump($rez);
|
||
}*/
|
||
|
||
//$res=$beeline->getRoute();
|
||
|
||
//var_dump($res);
|
||
|
||
/*$sql = "SELECT * FROM advertising_sources_tag";
|
||
//$q=mysql_query($sql);
|
||
while($r = mysql_fetch_assoc($q)){
|
||
$sql_in = "INSERT INTO advertising_sources_domain (tag, adv_id, agency_id) VALUES ('{$r['tag']}', '{$r['adv_id']}', 19895)";
|
||
//mysql_query($sql_in);
|
||
}*/
|
||
|
||
/*$call = json_decode('{
|
||
"startDate": 1752130117000,
|
||
"department": "SIP07",
|
||
"abonent": {
|
||
"userId": "SIP02E2CU00K16@ip.beeline.ru",
|
||
"phone": "+79206085530",
|
||
"firstName": "Ирина",
|
||
"lastName": "Серова",
|
||
"email": "Arinabisss@gmail.com",
|
||
"department": "SIP07",
|
||
"extension": "263"
|
||
},
|
||
"direction": "OUTBOUND",
|
||
"phone": "+79206085530",
|
||
"duration": 12920,
|
||
"status": "PLACED"
|
||
}');
|
||
|
||
var_dump($call);
|
||
$beeline->checkRoute($call);
|
||
/*$pdopg = new MysqlPdo(hstpg, ndbpg, userpg, passpg, false, '5432', true);*/
|
||
|
||
/*$sql = "SELECT * FROM mango_calls WHERE operator_id = 2";
|
||
$q = $pdopg->query($sql);
|
||
//echo $pdopg->num_rows($q);
|
||
$num = 0;
|
||
while($r = $pdopg->fetch_assoc($q)){
|
||
if(strpos($r['from_number'], '@ip.beeline.ru') !== false && empty($r['from_extension'])){
|
||
$sql_e = "UPDATE mango_calls SET from_extension = '{$r['from_number']}' WHERE id = {$r['id']}";
|
||
// $pdopg->query($sql_e);
|
||
$num++;
|
||
}
|
||
}
|
||
echo $num;*/
|
||
|
||
|
||
|
||
|
||
/*try {
|
||
ParseMailForClients::parseStats($mdb, [
|
||
'id_agent' => 13154, // АН КВС
|
||
'client_funnel_id' => 0, // Воронка: Общий список клиентов
|
||
'req_funnel_id' => 0, // Воронка:
|
||
'req_type_id' => 2, // Тип заявки:
|
||
'source_name' => 'САЙТ', // Источник (словами)
|
||
'tag_name' => null, // Тег (словами)
|
||
'who_work_id' => null, // Ответственный:
|
||
//'telegram_id' => 13583, // Отправить уведомление: Дежурный АН КВС
|
||
'mailbox' => [
|
||
'imap' => '{imap.yandex.ru:993/imap/ssl}INBOX',
|
||
'login' => "joywork.1c@yandex.ru",
|
||
'password' => "bnqiiyqmhfsgfmyh", // joyworkKVS
|
||
'encoding' => "UTF-8",
|
||
],
|
||
'track_code' => 'last_checked_mail12_id', // ID для отслеживания в БД
|
||
'debug'=> 1
|
||
]);
|
||
} catch (Exception $ex) {
|
||
error_log("ParseMailForClients() / joywork.1c@yandex.ru / ID: 13154 / " . $ex->getMessage());
|
||
}*/
|
||
|
||
/*$sql = "SELECT * FROM ( SELECT COUNT(*) as dup_count, req_id FROM user_client_events WHERE req_id <> 0 AND type = 'call' and `beeline` = 1 AND old_req_id = 0 group by req_id, user_id, create_date ) AS sub WHERE dup_count > 1";
|
||
$q = mysql_query($sql);
|
||
while($r = mysql_fetch_assoc($q)){
|
||
//$i=0;
|
||
$ids = [];
|
||
$event = array('user_id'=>0, 'create_date'=>'', 'req_id'=>0);
|
||
|
||
$sql_r = "SELECT * FROM user_client_events WHERE req_id = {$r['req_id']} AND `beeline` = 1 order by create_date";
|
||
//echo $sql_r."\n";
|
||
$q_r = mysql_query($sql_r);
|
||
while($r_r = mysql_fetch_assoc($q_r)){
|
||
|
||
if($event['user_id'] == $r_r['user_id'] && $event['create_date'] == $r_r['create_date'] && $event['req_id'] == $r_r['req_id']){
|
||
$ids[] = (int)$r_r['id'];
|
||
|
||
} else {
|
||
$event = $r_r;
|
||
|
||
}
|
||
//$i++;
|
||
}
|
||
if(!empty($ids)){
|
||
$sql_del = "DELETE FROM user_client_events WHERE id in (".implode(',', $ids).")";
|
||
echo $sql_del."\n";
|
||
//mysql_query($sql_del);
|
||
}
|
||
|
||
}*/
|
||
|
||
|
||
?>
|
||
|
||
|