Файловый менеджер - Редактировать - /home/lmsyaran/public_html/joomla3/plugins/chat/send_by_bale/classes/cron.php
Назад
<?php define('_JEXEC', 1); define('JPATH_BASE', dirname(dirname(dirname(dirname(dirname(__FILE__))))) . '/'); include_once JPATH_BASE . 'includes/defines.php'; include_once JPATH_BASE . 'includes/framework.php'; require_once dirname(dirname(dirname(dirname(__FILE__)))) . '/chat/send_by_bale/classes/send.php'; $CALLS_PER_MIN = 3; $channel_id = '4572939105'; $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('*'); $query->from($db->quoteName('call')); $query->where($db->quoteName('status') . ' = ' . $db->quote(0)); // $query->where($db->quoteName('id') . ' = ' . $db->quote(1)); $query->setLimit($CALLS_PER_MIN);; $db->setQuery($query); $calls = $db->loadAssocList(); $errorcodes = array( 10 => "مشکل در یکی از پارامترهای درخواست (10)", 11 => "مشکل در یکی از پارامترهای درخواست (11)", 12 => "مشکل در یکی از پارامترهای درخواست (12)", 13 => "مشکل در یکی از پارامترهای درخواست (13)", 14 => "مشکل در یکی از پارامترهای درخواست (14)", 15 => "مشکل در یکی از پارامترهای درخواست (15)", 16 => "مشکل در یکی از پارامترهای درخواست (16)", 17 => "مشکل در یکی از پارامترهای درخواست (17)", 18 => "مشکل در یکی از پارامترهای درخواست (18)", 19 => "مشکل در یکی از پارامترهای درخواست (19)", 20 => "مشکل در یکی از پارامترهای درخواست (20)", 21 => "زمان پلن به پایان رسیده است", 22 => "یکی از طرفین رد تماس زده، در درسترس نبوده یا پاسخ نداده است", ); // print_r($calls);die(); $filename = __DIR__ . "/log2.txt"; foreach($calls as $call) { // $bale_id = $call['bale_id']; // print_r($call); // echo PHP_EOL; $call['status'] = 1; $db = JFactory::getDbo(); $url = ''; if($call['by'] == 'userid') $url = 'https://reclist.lmskaran.com/makePrivateCallBy'; else if($call['by'] == 'num') { $url = 'https://reclist.lmskaran.com/makePrivateCall'; unset($call['by']); } if(!$call['bale_id']) unset($call['bale_id']); $curl = curl_init(); curl_setopt_array($curl, array( CURLOPT_URL => $url, CURLOPT_RETURNTRANSFER => true, CURLOPT_CUSTOMREQUEST => 'POST', CURLOPT_POSTFIELDS => $call, // CURLOPT_TIMEOUT_MS => 10000, CURLOPT_TIMEOUT => 0, /* CURLOPT_CONNECTTIMEOUT_MS => 5000, */ )); $response = curl_exec($curl); $error = curl_error($curl); $errno = curl_errno($curl); file_put_contents($filename, "response = " . print_r($response, true)."\n", FILE_APPEND); file_put_contents($filename, "errno = " . print_r($errno, true)."\n", FILE_APPEND); file_put_contents($filename, "error = " . print_r($error, true)."\n", FILE_APPEND); $jsonres = json_decode($response); $data = array(); $id1 = $call['endpoint1']; $id2 = $call['endpoint2']; if($call['by'] == 'userid') { $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('*'); $query->from($db->quoteName('#__users')); $query->where($db->quoteName('id') . ' = ' . $db->quote($id1)); $db->setQuery($query); $user1 = $db->loadObject(); $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('*'); $query->from($db->quoteName('#__users')); $query->where($db->quoteName('id') . ' = ' . $db->quote($id2)); $db->setQuery($query); $user2 = $db->loadObject(); } else { $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('*'); $query->from($db->quoteName('#__users')); $query->where($db->quoteName('username') . ' = ' . $db->quote($id1), 'or'); $query->where($db->quoteName('username') . ' = SHA("' . $id1 . '")'); $db->setQuery($query); $user1 = $db->loadObject(); $db = JFactory::getDbo(); $query = $db->getQuery(true); $query->select('*'); $query->from($db->quoteName('#__users')); $query->where($db->quoteName('username') . ' = ' . $db->quote($id2), 'or'); $query->where($db->quoteName('username') . ' = SHA("' . $id2 . '")'); $db->setQuery($query); $user2 = $db->loadObject(); } if($user1) { $name1 = $user1->name; $userid1 = $user1->id; $user1 = "$name1 ($userid1)"; } else { $user1 = $id1; } if($user2) { $name2 = $user2->name; $userid2 = $user2->id; $user2 = "$name2 ($userid2)"; } else { $user2 = $id2; } if($jsonres->status) { $text = "تماس تلفنی بین 2 کاربر $user1 و $user2 برقرار شد"; } else { $reason = $errorcodes[$jsonres->errorcode]; $reason = $reason ? $reason : "اشکالات فنی خطوط آسیاتک"; $text = "تلاش برای برقراری ارتباط بین $user1 و $user2 ناموفق بود. دلایل: $reason"; } // if($jsonres->status or $jsonres->errorcode != 22) // { $obj = (object)$call; $db->updateObject('call', $obj, 'id'); // } $data[] = [ 'chat_id' => $channel_id, 'text' => $text ]; send::send_bale_message($data); curl_close($curl); if(!$error) { $object = new stdClass(); $object->id = $call['session_id']; $object->checked = 1; $result = JFactory::getDbo()->updateObject('#__reservation_session', $object, 'id', true); } // print_r($db->getErrorMsg()); file_put_contents($filename, "url = ".print_r($url, true)."\n", FILE_APPEND); file_put_contents($filename, "call = ".print_r($call, true)."\n", FILE_APPEND); file_put_contents($filename, "response = ".print_r($response, true)."\n", FILE_APPEND); file_put_contents($filename, "error = ".print_r($error, true)."\n", FILE_APPEND); }
| ver. 1.4 |
Github
|
.
| PHP 8.1.33 | Генерация страницы: 0 |
proxy
|
phpinfo
|
Настройка