Библиотека для отправки SMS из PHP

Скачайте класс

notisend.class.php для PHP5.4 и новее

notisend.class.php для PHP5.3

Посмотрите пример вызова функций класса с описанием.


    <?php
    // Подключение класса
    require_once 'notisend.class.php' ;
    
    // NotiSend Инициализация объекта
    // Список параметров ($project, $key, $useSSL = false, $testMode = false)
    // $project - название проекта
    // $key - ключ проекта
    // $useSSL - не обязательный параметр, если true то взаимодействие будет осуществляться по протоколу https иначе http
    // $testMode - не обязательный параметр, если true то сообщения не будут отправляться и деньги не будут списываться(используется для отладки)
    $api = new Notisend ( 'your_project_name' , 'e24a61ef07e80', false, false );
    
    // getBalance Запрос баланса, возвращает остаток на балансе в случае успеха и false в случае ошибки
    // Параметров нет
    echo 'Текущий баланс: ' . $api->getBalance (), PHP_EOL ;
    
    // sendSMS отправка SMS, возвращает true в случае успеха, false в случае ошибки
    // список параметров sendSMS($recipients, $message, $sender, $run_at = null)
    // $recipients - получатели в любом формате, пример 89121231234,9121231235
    // $message - текст сообщения в кодировке UTF-8
    // $sender - имя отправителя
    // %run_at - не обязательный параметр, дата и время кода будет отправлено сообщение, пример '03.10.2011 17:00'.
    echo 'отправка СМС/а SMS: ' . $api->sendSMS ( '89121231234' , 'api test' , 'notisend', '03.10.2011 17:00' ), PHP_EOL ;
    
    Если используется отличная от UTF-8 кодировок, $message необходимо конвертировать в UTF-8 ( в PHP можно использовать например iconv или mb_convert_encoding )
    $api->sendSMS ( '89121231234' , mb_convert_encoding("апи тест", "UTF-8") , 'notisend', '03.10.2011 17:00' );
    
    // getResponse - последний ответ от сервера
    $response = $api->getResponse ();
    // checkStatus запрос статуса сообщения, возвращает ассоциативный массив статусов, пример {"1567" : "delivered", "1568" : "accepted"} 
    // список параметров checkStatus ($messagesId)
    // $messagesId - id сообщений через запятую, пример 1567,1568 
    $result = $api->checkStatus ( $response [ 'messages_id' ]);
    foreach ( $result as $message_id => $status ) {
    echo sprintf ( 'Статус сообщения %s: %s' , $message_id , $status ), PHP_EOL ;
    }
    
    // messagePrice - запрос стоимости SMS, возвращает сумму которая спишется в случае отправки сообщения или false в случае ошибки
    // список параметров ($recipients, $message)
    // $recipients - получатели в любом формате, пример 89121231234,9121231235
    // $message - текст сообщения
    echo 'запрос стоимости SMS: ' . $api->messagePrice ( '89121231234,9121231235', 'api test' ), PHP_EOL ;
    
    
    // phoneInfo - запрос информации о номерах, возвращает массив ответов содержащий названия операторов, регион, код.
    // список параметров phoneInfo( $phones )
    // $phones - номера телефонов в любом формате, пример 89121231234,9121231235
    echo 'запрос информации о номерах: ' . $api->phoneInfo ( '89121231234,9121231235' ), PHP_EOL ;
    
    // cancelSMS отмена запланированного сообщения, возвращает ассоциативный массив статусов, пример {"1567" : "canceled", "1568" : "canceled"} 
    // список параметров cancelSMS ($messagesId)
    // $messagesId - id сообщений через запятую, пример 1567,1568 
    // $api->cancelSMS ( $response [ 'messages_id' ]);
    
    // Для отладки используйте getResponse
    // $response = $api->getResponse ();
    // var_dump($response);
    // В случае обнаружение каких либо ошибок обращайтесь в техническую поддержку sms.notisend.ru http://sms.notisend.ru/support/run
    ?>
    
Поддержка