Процедура рассылки смс через API портала sms.ru
Для рассылки необходим API_ID, который можно получить при регистрации на портале sms.ru
Функция ОтправитьСМС(СтруктСМС)
СтруктОтвет = Новый Структура;
СтруктОтвет.Вставить("Статус", "Отправка");
СтруктОтвет.Вставить("ID", "");
API = "xxx";
ВременныйФайл = ПолучитьИмяВременногоФайла();
Отправка=Новый HTTPСоединение("sms.ru",,,,);
Отправка.Получить(
"http://sms.ru/sms/send?api_id=" + API +
"&to=" + СтруктСМС.Получатель +
"&text=" + СтруктСМС.Текст +
"&from=" + СтруктСМС.Отправитель +
"&partner_id=3818", ВременныйФайл);
Ответ = Новый ЧтениеТекста(ВременныйФайл);
ПерваяСтрока = Ответ.ПрочитатьСтроку();
Если ПерваяСтрока="100" Тогда СтруктОтвет.ID = Ответ.ПрочитатьСтроку();
ИначеЕсли ПерваяСтрока="200" Тогда СтруктОтвет.Статус = "Неправильный api_id (СМС Ключ)";
ИначеЕсли ПерваяСтрока="201" Тогда СтруктОтвет.Статус = "Не хватает средств на лицевом счету";
ИначеЕсли ПерваяСтрока="202" Тогда СтруктОтвет.Статус = "Неправильно указан получатель";
ИначеЕсли ПерваяСтрока="203" Тогда СтруктОтвет.Статус = "Нет текста сообщения";
ИначеЕсли ПерваяСтрока="204" Тогда СтруктОтвет.Статус = "Имя отправителя не согласовано с администрацией (sms.ru)";
ИначеЕсли ПерваяСтрока="205" Тогда СтруктОтвет.Статус = "Сообщение слишком длинное (превышает 5 СМС)";
ИначеЕсли ПерваяСтрока="206" Тогда СтруктОтвет.Статус = "Превышен дневной лимит на отправку сообщений";
ИначеЕсли ПерваяСтрока="207" Тогда СтруктОтвет.Статус = "На этот номер нельзя отправлять сообщения";
ИначеЕсли ПерваяСтрока="208" Тогда СтруктОтвет.Статус = "Параметр time указан неправильно";
ИначеЕсли ПерваяСтрока="209" Тогда СтруктОтвет.Статус = "Вы добавили этот номер в стоп-лист";
ИначеЕсли ПерваяСтрока="210" Тогда СтруктОтвет.Статус = "Используется GET, где необходимо использовать POST";
ИначеЕсли ПерваяСтрока="211" Тогда СтруктОтвет.Статус = "Метод не найден";
ИначеЕсли ПерваяСтрока="220" Тогда СтруктОтвет.Статус = "Сервис временно недоступен, попробуйте чуть позже.";
ИначеЕсли ПерваяСтрока="300" Тогда СтруктОтвет.Статус = "Неправильный token (возможно истек срок действия, либо ваш IP изменился)";
ИначеЕсли ПерваяСтрока="301" Тогда СтруктОтвет.Статус = "Неправильный пароль, либо пользователь не найден";
ИначеЕсли ПерваяСтрока="302" Тогда СтруктОтвет.Статус = "Пользователь авторизован, но аккаунт не подтвержден (пользователь не ввел код, присланный в регистрационной смс)";
Иначе СтруктОтвет.Статус = "Неизвестная ошибка отправки СМС.";
КонецЕсли;
Ответ.Закрыть();
Возврат СтруктОтвет;
КонецФункции
