2017 © Pedro Peláez
 

library smsc

Lib for modern integration smsc.ru service

image

zhukmax/smsc

Lib for modern integration smsc.ru service

  • Saturday, September 30, 2017
  • by ZhukMax
  • Repository
  • 1 Watchers
  • 1 Stars
  • 16 Installations
  • PHP
  • 0 Dependents
  • 0 Suggesters
  • 0 Forks
  • 0 Open issues
  • 4 Versions
  • 7 % Grown

The README.md

Smsc API

Latest Version on Packagist Software License Total Downloads, (*1)

Компонент для интеграции сервиса SMSC.RU API (smsc.ru) на сайт. Основано на версии 3.6 официального кода., (*2)

Установка

С помощью композера:, (*3)

$ composer require zhukmax/smsc

Использование

Для того, что бы правильно отлавливать Исключения желательно использовать в конструкции try\catch. Не обязательно использовать выход exit(), можно эхом вывести текст ошибки и продолжить выполнение скрипта., (*4)

<?php
try {
    $sms = new \Zhukmax\Smsc\Api(
        'test',
        '123',
        [
            'https' => true,
            'charset' => 'windows-1251',
            'from' => 'api@smsc.ru',
            'post' => true,
            'debug' => '/home/user/smsc.log'
        ]
    );
} catch (Exception $exception) {
    exit($exception->getMessage());
}

Так же можно унаследовать класс \Zhukmax\Smsc\Api и добавить собственное поведение до/после выполнения методов компонента или, даже, переназначить некоторые из них., (*5)

<?php
class Sms extends \Zhukmax\Smsc\Api
{
    public function balance()
    {
        var_dump($this->sendCmd('balance'));
    }
}

Свойства конструктора

  • логин клиента
  • пароль или MD5-хеш пароля в нижнем регистре
  • Массив с опциями:
    • protocol - использовать HTTPS протокол, любое значение кроме 'https' приравнивается использованию не защищенного протокола HTTP
    • charset - кодировка сообщения: utf-8 (по умолчанию), koi8-r или windows-1251
    • from - e-mail адрес отправителя
    • post - использовать метод POST, булев
    • debug - флаг отладки, булев

Методы

Публичные методы:

sendSms() - Функция отправки SMS, (*6)

  • обязательные параметры:, (*7)

    • $phones - список телефонов через запятую или точку с запятой
    • $message - отправляемое сообщение
  • необязательные параметры:, (*8)

    • $translit - переводить или нет в транслит (1,2 или 0)
    • $time - необходимое время доставки в виде строки (DDMMYYhhmm, h1-h2, 0ts, +m)
    • $id - идентификатор сообщения. Представляет собой 32-битное число в диапазоне от 1 до 2147483647.
    • $format - формат сообщения (0 - обычное sms, 1 - flash-sms, 2 - wap-push, 3 - hlr, 4 - bin, 5 - bin-hex, 6 - ping-sms, 7 - mms, 8 - mail, 9 - call)
    • $sender - имя отправителя (Sender ID). Для отключения Sender ID по умолчанию необходимо в качестве имени передать пустую строку или точку.
    • $query - строка дополнительных параметров, добавляемая в URL-запрос ("valid=01:00&maxsms=3&tz=2")
    • $files - массив путей к файлам для отправки mms или e-mail сообщений

возвращает массив (, <количество sms>, стоимость, баланс) в случае успешной отправки либо массив (, -<код ошибки>) в случае ошибки, (*9)

sendSmsMail() - SMTP версия функции отправки SMS, (*10)

getSmsCost() - Функция получения стоимости SMS, (*11)

  • обязательные параметры:, (*12)

    • $phones - список телефонов через запятую или точку с запятой
    • $message - отправляемое сообщение
  • необязательные параметры:, (*13)

    • $translit - переводить или нет в транслит (1,2 или 0)
    • $format - формат сообщения (0 - обычное sms, 1 - flash-sms, 2 - wap-push, 3 - hlr, 4 - bin, 5 - bin-hex, 6 - ping-sms, 7 - mms, 8 - mail, 9 - call)
    • $sender - имя отправителя (Sender ID)
    • $query - строка дополнительных параметров, добавляемая в URL-запрос ("list=79999999999:Ваш пароль: 123\n78888888888:Ваш пароль: 456")

возвращает массив (стоимость, <количество sms>) либо массив (0, -<код ошибки>) в случае ошибки, (*14)

getStatus() - Функция проверки статуса отправленного SMS или HLR-запроса, (*15)

  • $id - ID cообщения или список ID через запятую, (*16)

  • $phone - номер телефона или список номеров через запятую, (*17)

  • $all - вернуть все данные отправленного SMS, включая текст сообщения (0,1 или 2), (*18)

возвращает массив (для множественного запроса двумерный массив):, (*19)

для одиночного SMS-сообщения: (статус, <время изменения>, <код ошибки доставки>), (*20)

для HLR-запроса: (статус, <время изменения>, <код ошибки sms>, <код IMSI SIM-карты>, <номер сервис-центра>, <код страны регистрации>, <код оператора>, <название страны регистрации>, <название оператора>, <название роуминговой страны>, <название роумингового оператора>), (*21)

при $all = 1 дополнительно возвращаются элементы в конце массива: (<время отправки>, <номер телефона>, стоимость, , <название статуса>, <текст сообщения>), (*22)

при $all = 2 дополнительно возвращаются элементы страна, оператор и регион, (*23)

при множественном запросе: если $all = 0, то для каждого сообщения или HLR-запроса дополнительно возвращается и <номер телефона>, (*24)

если $all = 1 или $all = 2, то в ответ добавляется , (*25)

либо массив (0, -<код ошибки>) в случае ошибки, (*26)

getBalance() - Функция получения баланса, (*27)

возвращает баланс в виде строки или false в случае ошибки, (*28)

Внутренние методы:

sendCmd() - Функция вызова запроса. Формирует URL и делает 5 попыток чтения через разные подключения к сервису, (*29)

readUrl() - Функция чтения URL., (*30)

Для работы должно быть доступно: curl или fsockopen (только http) или включена опция allow_url_fopen для file_get_contents, (*31)

Stargazers repo roster for @ZhukMax/smsc, (*32)

Лицензия

The Apache License Version 2.0. Текст лицензии находится в файле License File., (*33)

The Versions

30/09 2017

dev-master

9999999-dev

Lib for modern integration smsc.ru service

  Sources   Download

Apache-2.0

The Requires

  • php >=5.6.0

 

by Zhuk Max

28/09 2017

1.0.0

1.0.0.0

Lib for modern integration smsc.ru service

  Sources   Download

Apache-2.0

The Requires

  • php >=5.6.0

 

by Zhuk Max

27/09 2017

1.0.0-beta.2

1.0.0.0-beta2

Lib for modern integration smsc.ru service

  Sources   Download

Apache-2.0

The Requires

  • php >=5.6.0

 

by Zhuk Max

24/09 2017

1.0.0-beta

1.0.0.0-beta

Lib for modern integration smsc.ru service

  Sources   Download

Apache-2.0

The Requires

  • php >=5.6.0

 

by Zhuk Max