Esempio n. 1
0
<?php

header('Content-type:text/html; charset=utf-8');
include_once dirname(__FILE__) . '/lib/iqsms_JsonGate.php';
include_once dirname(__FILE__) . '/include/library/Utility.class.php';
$gate = new iqsms_JsonGate('z1469184353311', '948621');
if (date_default_timezone_get()) {
    echo 'date_default_timezone_set: ' . date_default_timezone_get() . '<br />';
}
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),
Esempio n. 2
0
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);
}