Примеры отправки/рассылки SMS (СМС) сообщений при помощи PHP через API
- Пример отправки СМС через API сервиса SMSЦентр
- Пример отправки СМС через API сервиса SendPulse
- Пример отправки СМС через API сервиса SMS Aero
Пример отправки СМС через API сервиса SMSЦентр
В примере используется библиотека smsc_api.php.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
<?php /** * Параметры для доступа к API задаются в константах библиотеки smsc_api.php * define("SMSC_LOGIN", "login"); // логин клиента * define("SMSC_PASSWORD", "password"); // пароль * define("SMSC_POST", 0); // использовать метод POST * define("SMSC_HTTPS", 0); // использовать HTTPS протокол * define("SMSC_CHARSET", "windows-1251"); // кодировка сообщения: utf-8, koi8-r или windows-1251 (по умолчанию) * define("SMSC_DEBUG", 0); // флаг отладки */ // Подключаем библиотеку require_once "smsc_api.php"; // Отправляем сообщения list($sms_id, $sms_cnt, $cost, $balance) = send_sms("79999999999", "Ваш пароль: 123", 1); list( $sms_id, // id смс $sms_cnt, // количество смс $cost, // стоимость $balance // баланс ) = send_sms( "79999999999", // список телефонов через запятую или точку с запятой "http://smsc.ru\nSMSC.RU", // отправляемое сообщение 0, // переводить или нет в транслит (1,2 или 0) 0, // необходимое время доставки в виде строки (DDMMYYhhmm, h1-h2, 0ts, +m) 0, // идентификатор сообщения. Представляет собой 32-битное число в диапазоне от 1 до 2147483647. 0, // формат сообщения (0 - обычное sms, 1 - flash-sms, 2 - wap-push, 3 - hlr, 4 - bin, 5 - bin-hex, 6 - ping-sms, 7 - mms, 8 - mail, 9 - call, 10 - viber, 11 - soc) false, // имя отправителя (Sender ID). "maxsms=3" // строка дополнительных параметров, добавляемая в URL-запрос ("valid=01:00&maxsms=3&tz=2") ); // Получение информации о стоимости смс list( $cost, // стоимость $sms_cnt // количество смс ) = get_sms_cost( "79999999999", // список телефонов через запятую или точку с запятой "Вы успешно зарегистрированы!" // отправляемое сообщение ); // Проверка статуса отправленного SMS list( $status, $time ) = get_status( $sms_id, // ID cообщения или список ID через запятую "79999999999" // номер телефона или список номеров через запятую ); // Получаем баланс $balance = get_balance(); // отправка SMS через e-mail send_sms_mail("79999999999", "Ваш пароль: 123"); ?> |
Пример отправки СМС через API сервиса SendPulse
В примере используется библиотека sendpulse/rest-api.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
<?php use Sendpulse\RestApi\ApiClient; use Sendpulse\RestApi\Storage\FileStorage; define('API_USER_ID', ''); // ID пользователя define('API_SECRET', ''); // SECRET пользователя define('PATH_TO_ATTACH_FILE', __FILE__); $SPApiClient = new ApiClient(API_USER_ID, API_SECRET, new FileStorage()); /** * Отправка SMS * BOOK_ID - идентификатор адресной книги (int) */ // Добавляем номер телефона в адресную книгу var_dump($SPApiClient->addPhones(BOOK_ID, ['111111111111'])); // Добавляем список переменных по телефонному номеру $data = [ '111111111111' => [ [ [ 'name' => 'var_value', 'type' => 'string', 'value' => 'variable value', ] ] ] ]; var_dump($SPApiClient->addPhonesWithVariables(BOOK_ID, $data)); // Создаём кампанию для рассылки сообщений по адресной книге $params = [ 'sender' => 'testsender', // Отправитель 'body' => 'test', // Текст сообщения 'date' => '2019-05-01 12:12:12' // дата рассылки в формате Y-m-d H:i:s ]; $additionalParams = [ 'transliterate' => 0 // 1 или 0 , транслитерация тела ]; var_dump($SPApiClient->sendSmsByBook(BOOK_ID, $params, $additionalParams)); ?> |
Пример отправки СМС через API сервиса SMS Aero
В примере используется класс SmsaeroApiClassV2.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
<?php require_once 'SmsaeroApiV2.class.php'; use SmsaeroApiV2\SmsaeroApiV2; $smsaero_api = new SmsaeroApiV2('email', 'api_key', 'SIGN'); // api_key из личного кабинета var_dump($smsaero_api->send(['70000000000','70000000001'],'Тестовая отправка', 'DIGITAL')); // Отправка сообщений var_dump($smsaero_api->check_send(123456)); // Проверка статуса SMS сообщения var_dump($smsaero_api->sms_list(null,'тест',3)); //Получение списка отправленных sms сообщений var_dump($smsaero_api->balance()); // Запрос баланса var_dump($smsaero_api->auth()); // Тестовый метод для проверки авторизации var_dump($smsaero_api->cards()); // Получение списка платёжных карт var_dump($smsaero_api->addbalance(100, 12345)); // Пополнение баланса var_dump($smsaero_api->tariffs()); // Запрос тарифа var_dump($smsaero_api->sign_add('new sign')); // Добавление подписи var_dump($smsaero_api->sign_list()); // Получить список подписей var_dump($smsaero_api->group_add('new_group_name')); //Добавление группы var_dump($smsaero_api->group_list()); // Получение списка групп var_dump($smsaero_api->group_delete(123)); // Удаление группы var_dump($smsaero_api->contact_add('70000000000', null, null, 'male', 'name', 'surname', null, 'param example')); // Добавление контакта var_dump($smsaero_api->contact_delete(123)); // Удаление контакта var_dump($smsaero_api->contact_list()); // Список контактов var_dump($smsaero_api->blacklist_add(123)); // Добавление в чёрный список var_dump($smsaero_api->blacklist_delete(123)); // Удаление из чёрного списка var_dump($smsaero_api->blacklist_list()); // Список контактов в черном списке var_dump($smsaero_api->hlr_check('70000000000')); // Создание запроса на проверку HLR var_dump($smsaero_api->hlr_status(474664)); // Получение статуса HLR var_dump($smsaero_api->number_operator('79136535500')); // Определение оператора var_dump($smsaero_api->viber_send('70000000000', null, 'Bonus', 'INFO','Тестовое сообщение')); // Отправка Viber-рассылок var_dump($smsaero_api->viber_statistic(1636)); // Статистика по Viber-рассылке var_dump($smsaero_api->viber_list()); // Список Viber-рассылок var_dump($smsaero_api->viber_sign_list()); // Список доступных подписей для Viber-рассылок ?> |