Функция отправки смс PHP скриптом 2 декабря 2015

advertisement
Функция отправки смс PHP скриптом
v 3 от 29.10.2013
Содержание
1
стр.2
1
Введение
стр.2
1
Защищенное соединение (SSL)
стр.3
2
PHP скрипт
стр.4
3
Передаваемые параметры
WEBSMS предоставляет возможность осуществлять рассылки, используя доступ к сервисам через PHP
запросы. Это позволяет автоматизировать процесс рассылки при помощи вызова скриптов на сервере
WEBSMS из клиентских программ и веб-форм на сайтах.
WEBSMS гарантирует безопасность обмена запросами с клиентскими приложениями.
В случае выявления ошибок в документации или возникновения необходимости доработки функционала
обращайтесь в технический отдел по адресу support@websms.ru
Для обеспечения безопасности Вы можете использовать защищенное соединение (SSL).
Для этого необходимо вызывать страницу отправки, заменив протокол http на https.
При открытии страниц по протоколу https в браузере будет показан запрос на просмотр в защищенном
режиме, там же можно посмотреть информацию о сертификате, выданных для этого соединения:
Для продолжения работы по протоколу PHP Вам необходимо согласится принять сертификат.
2
PHP-интерфейс расположен по адресу:
для кодировки windows 1251 http://cab.websms.ru/http_in5.asp
для кодировки UTF-8 http://cab.websms.ru/http_in6.asp
Все параметры передаются методом POST или GET
Пример 1 (с записью возвращаемых результатов)
<?php
$to="номер_ получателя";
$msg="текст_сообщения";
$login = "логин";
$password="пароль";
$r = new HttpRequest('http://cab.websms.ru/http_in5.asp', HttpRequest::METH_GET);
$r->addQueryData(array('Http_username' => urlencode($login), 'Http_password' =>urlencode($password), 'Phone_list' => $to,
'Message' => urlencode($msg)));
try {
$r->send();
if ($r->getResponseCode() == 200) {
file_put_contents('myresults.log', $r->getResponseBody());
}
} catch (HttpException $ex) {
echo $ex;
}
?>
Пример 2 (без записи возвращаемых результатов)
# @to - номер получателя, например: 79221111111
# @msg - сообщение в кодировке windows-1251
# @login - логин на веб-сервисе websms.ru
# @password - пароль на веб-сервисе websms.ru
function send_sms($to, $msg, $login, $password)
{
$u = 'http://www.websms.ru/http_in5.asp';
$ch = curl_init();
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_TIMEOUT, 10);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,
'Http_username='.urlencode($login).'&Http_password='.urlencode($password).'&Phone_list='.$to.'&Message='.urlenc
ode($msg));
curl_setopt($ch, CURLOPT_URL, $u);
$u = trim(curl_exec($ch));
curl_close($ch);
preg_match("/message_id\s*=\s*[0-9]+/i", $u, $arr_id );
$id = preg_replace("/message_id\s*=\s*/i", "", @strval($arr_id[0]) );
return $id;
}
3
параметр
значимость
тип
значение
описание
http_username
обязательный
string
Логин пользователя
http_password
обязательный
string
Пароль пользователя
(задается в Персональных настройках Личного кабинета в
разделе безопасность. По умолчанию пароль тот же, что
для входа в кабинет )
message
обязательный
string
Текст сообщения
Формат текста сообщения описан в разделе 11 стр.19
phone_list
обязательный
string
packet_id
не
обязательный
integer
message_id
не
обязательный
integer
group
не
обязательный
integer
send_on
не
обязательный
string
Номера телефонов
Разделитель запятая
Обязательный параметр если параметр Group не
используется
Уникальный номер (ID пакета)
Если параметр не задан, то ID пакета будет автоматически
назначен системой.
(Пакет может содержать множество адресатов в параметре
phone_list)
Уникальный номер (ID сообщения)
Если параметр не задан, то ID сообщения будет
автоматически назначен системой.
(Пакет не может содержать множество адресатов в
параметре phone_list)
Включение или выключение проверки уникальности ID
сообщения) производится в Личном кабинете в разделе
«Персональные» настройки - Безопасность» .
ID группы, абонентам которой будет произведена рассылка.
Обязательный параметр если параметр Phone_list не
используется
(Группы формируются через web-интерфейс). Номера групп
можно получить при обращении к странице http_Group.asp
Дата и время отправки (если не задан - текущее время)
Формат dd.mm.yyyy hh:nn
0
UseReceiverGMT
не
обязательный
Время отправки сообщений абонентам будет производится с
учетом часового пояса абонента
integer
1
translit
не
обязательный
0
integer
1
fromPhone
не
обязательный
string
nosplit
не
обязательный
integer
4
Время отправки сообщений абонентам будет производится с
учетом часового пояса инициатора рассылки
0
Доставка сообщений происходит в интервале с 9:00 до 21:00
часов по их местному времени. Если рассылка активирована
на текущий день, но по местному времени уже более 21:00
часа, то доставка автоматически отложится до назначенного
времени следующего дня
Принудительной транслитерации сообщения не будет (по
умолчанию)
Принудительная транслитерация сообщения
Имя отправителя.
Имена необходимо предварительно резервировать в
личном кабинете в «Персональных настройках» - «Имя
отправителя».
Внимание! Допускаются только латинские буквы и
цифры, не более 11 символов.
При гостевом уровне доступа имя отправителя
назначается системой
Длинное сообщение будет разбиваться на части (по
умолчанию)
не
обязательный
test
birthday
не
обязательный
не
обязательный
gmt
1
Длинное сообщение не будет разбиваться на части и будет
обрезано до одной части
0
Сообщение будет отправлено (по умолчанию)
1
Сообщение не будет отправлено
Вернется результат в том виде, в каком он был бы при
отправке. Предназначено для отладки
0
Время рассылки будет определяется параметром Send_on
(по умолчанию)
1
Время рассылки будет определяется значением поля
«Дата» в телефонной книге
0
Использовать часовую зону из настроек.
По умолчанию +4 (Москова)
integer
integer
integer
+12..-12
format
valid_period
не
обязательный
не
обязательный
Часовая зона абонента
txt
Формат вывода результатов в текстовом формате
(по умолчанию txt)
xml
Формат вывода результатов в формате xml
string
integer
10-1440
Время жизни смс-сообщения в минутах
Дополнительные опции:
1 Включение ограничения рассылок по ценовым зонам производится через веб-интерфейс cab.websms.ru в разделе
«Персональные настройки – Безопасность»
2 Включение системной проверки на уникальность назначенного пользователем packet_id (ID пакета) производится через
веб-интерфейс cab.websms.ru в разделе «Персональные настройки – Безопасность»
3 Для рассылок смс-сообщений на других языках (иероглифы, арабская вязь, санскрит и т.д.) используйте скриптовую
страницу http_in6.asp , которая принимает кодировку UTF-8
5
Download