if (ini_get('date.timezone')) { echo 'date.timezone: ' . ini_get('date.timezone') . '<br />'; } $now = date("Y-m-d H:i:s"); echo "<p>дата - {$now}</p>"; $dateTime = new DateTime("now", new DateTimeZone('GMT')); $mysqldate = $dateTime->format("Y-m-d H:i:s"); echo "<p>дата для mysql - {$mysqldate}</p>"; echo '<p>узнаем текущий баланс JSON</p>'; var_dump($gate->credits()); // узнаем текущий баланс echo '<p>узнаем текущий баланс REST</p>'; $rest_credits = Utility::HttpRequest('http://api.iqsms.ru/messages/v2/balance/', array('login' => 'z1469184353311', 'password' => '948621')); $rest_credits = explode(';', $rest_credits); var_dump($rest_credits); echo '<p>получаем список доступных подписей</p>'; var_dump($gate->senders()); // получаем список доступных подписей $messages = array(array("clientId" => "1", "phone" => "79222605250", "text" => "Тестовое сообщение")); //var_dump($gate->send($messages, 'testQueue')); // отправляем пакет sms /*$messages = array( array("clientId"=>"1","smscId"=>1885654369), // array("clientId"=>"2","smscId"=>11255143), // array("clientId"=>"3","smscId"=>11255144), );*/ echo '<p>получаем статусы для пакета sms</p>'; var_dump($gate->status($messages)); // получаем статусы для пакета sms echo '<p>получаем статусы из очереди testQueue</p>'; var_dump($gate->statusQueue('testQueue', 100)); // получаем статусы из очереди 'testQueue'
function check_sms_msg_status($order_id = 0) { $packet_msg_count = 200; $settings = get_settings(); if ($settings['sms_api_username'] == '' || $settings['sms_api_password'] == '') { echo '<p>Не указаны параметры для отправки СМС !</p>'; return false; } $query = "SELECT * FROM `iqsms_msg` WHERE id_status IN (1,9,12)"; if ($order_id > 0) { $query .= " AND order_id = " . $order_id; } // Получим список отправленных СМС $sms_sended = DB::GetQueryResult($query, false); if (!$sms_sended) { return false; } $gate = new iqsms_JsonGate($settings['sms_api_username'], $settings['sms_api_password']); // узнаем текущий баланс //$gate_credits = $gate->credits(); $gate_credits = check_balans_rest(); // Проверим текущий баланс //if ($gate_credits['credits'] == 0) { if ($gate_credits === false || $gate_credits == 0) { //echo '<p>Для отправки СМС необходимо пополнить баланс !</p>'; //return false; } else { if ($gate_credits <= (int) $settings['sms_api_min_balance']) { prepare_sms_admin(0, 'Баланс в сервисе IQSMS достиг минимума, пополните баланс.', 6); } } // получаем список доступных подписей /*$gate_senders = $gate->senders(); // Проверим доступность подписи из настроек if ($settings['sms_api_phone'] != '') { if (!in_array($settings['sms_api_phone'], $gate_senders['senders'])) { echo '<p>Неверная (незарегистрированная) подпись отправителя !</p>'; return false; } }*/ // Проверим статус отправленных сообщений $messages = array(); $message_count = 0; foreach ($sms_sended as $one) { $messages[] = array("clientId" => $one['id'], "smscId" => $one['smscid']); $message_count++; if ($message_count == $packet_msg_count) { $ret_messages = $gate->status($messages); //var_dump($ret_messages); set_sms_msg_status($ret_messages); $messages = array(); $message_count = 0; } } $ret_messages = $gate->status($messages); //var_dump($ret_messages); set_sms_msg_status($ret_messages); }