Каталог решений - SMS рассылка из 1С

Описание

 

1. USB 3G-модем

При наличии USB 3G-модема для отправки SMS можно использовать внешнее приложение с поддержкой командной строки.

Тестировал отправку SMS сообщений со следующими приложениями:
Microsoft SMS Sender (http://www.microsoft.com/ru-ru/download/details.aspx?id=5552)
cmd2SMS (http://vd-soft.biz/products/CMD2SMS.htm)

В этом случае отправка SMS сообщения сводится к программному созданию и запуску пакетного или командного файла (.bat, .cmd) или скрипта (.vbs), в котором производится запуск внешнего приложения с нужными ключами, с указанием номера телефона получателя и текста сообщения.

Пример bat-файла для отправки сообщения через приложение SMS Sender:

cd "C:\Program Files (x86)\Microsoft SMS Sender\" 
smssender.exe /p:81234567890 /m:"тестовое сообщение" /u /l

Пример программного создания и запуска bat-файла:

ИмяФайла = ПолучитьИмяВременногоФайла(".bat");
Bat_Файл = Новый ЗаписьТекста (ИмяФайла, КодировкаТекста.OEM);
Bat_Файл.ЗаписатьСтроку("cd ""C:\Program Files (x86)\Microsoft SMS Sender\""");
Bat_Файл.ЗаписатьСтроку("smssender.exe /p:" +Телефон+ " /m:""" +ТекстСообщения+ """ /u /l"); 
Bat_Файл.Закрыть();
ЗапуститьПриложение(ИмяФайла);

2. Андроид смартфон

При необходимости организации SMS рассылки через имеющийся телефон (смартфон) на OS Android можно использовать функционал консольного приложения Android Debug Bridge (ADB)

Нужный дистрибутив android-sdk можно взять здесь (http://developer.android.com/sdk/index.html).

В данном случае, отправка SMS сообщения сводится к выполнению команды оболочки андроид-устройства.
При этом SMS сообщения будут формироваться непосредственно в самом телефоне.

Пример:

//---- создаем BAT-файл для Android Debug Bridge
ИмяФайла = ПолучитьИмяВременногоФайла(".bat");
Bat_Файл = Новый ЗаписьТекста (ИмяФайла, КодировкаТекста.Системная);
Bat_Файл.ЗаписатьСтроку("cd C:\ADB\platform-tools\");
Bat_Файл.ЗаписатьСтроку("adb.exe shell am start -a android.intent.action.SENDTO -d sms:" +Телефон+ " --es sms_body " +ТекстСообщения+ " --ez exit_on_sent true");
Bat_Файл.ЗаписатьСтроку("adb.exe shell sleep 1");
Bat_Файл.ЗаписатьСтроку("adb.exe shell input keyevent 22");
Bat_Файл.ЗаписатьСтроку("adb.exe shell sleep 1");
Bat_Файл.ЗаписатьСтроку("adb.exe shell input keyevent 66");
Bat_Файл.Закрыть();
//---- запускаем BAT-файл
ЗапуститьПриложение(ИмяФайла);

3. Отправка SMS через SMTP

Организации, имеющие корпоративную сотовую связь, могут воспользоваться SMS сервисом своего провайдера связи.

Тестировал функцию отправки сообщений через SMTP протокол SMS-сервиса Билайна:
— подробнее о сервисе — здесь (http://beeline.amega-inform.ru — демо доступ)
— о протоколе отправки через SMTP (http://beeline.amega-inform.ru/support/protocol_smtp.php)

Провайдер предоставляет вам логин и пароль к вашему SMS-сервису. Дальше, для отправки SMS сообщения вам достаточно отправить сообщение электронной почты с нужными реквизитами, с указанием номера телефона получателя и текста SMS сообщения.
При этом в качестве имени отправителя можно использовать короткий номер, обычный номер или псевдоним (наименование отправителя).

Пример отправки SMS:

// профиль почты
Профиль = Новый ИнтернетПочтовыйПрофиль; 
Профиль.АдресСервераSMTP = "beeline.amega-inform.ru"; 
Профиль.ПортSMTP = 256; 
Профиль.АутентификацияSMTP = СпособSMTPАутентификации.Login;
Профиль.ПользовательSMTP = "логин"; 
Профиль.ПарольSMTP = "пароль";

// создать сообщение 
Сообщение = Новый ИнтернетПочтовоеСообщение; 
Сообщение.ИмяОтправителя = "Псевдоним";
Сообщение.Получатели.Добавить(Телефон + "@sms.beeline.amega-inform.ru");
Сообщение.Отправитель.Адрес = "Псевдоним@domain"; 
Сообщение.Тема = ""; 
Сообщение.Тексты.Добавить(ТекстСообщения);

// подключить профиль
Почта = Новый ИнтернетПочта;
Попытка
 Почта.Подключиться(Профиль);
Исключение
 Предупреждение (ОписаниеОшибки());
КонецПопытки;

// отправить почту
Попытка
 Почта.Послать(Сообщение); 
 Почта.Отключиться();
Исключение
 Предупреждение (ОписаниеОшибки());
КонецПопытки;

4. Отправка SMS через http запрос.

В наши дни существует большое количество провайдеров SMS-рассылок, организующих массовую отправку смс-сообщений через свои интернет-шлюзы. Самым удобным и простым способом работы с такими сервисами является отправка смс-сообщений http-запросами.

Тестировал смс-рассылку через сервис SMS.ru:
— подробнее о сервисе — здесь (http://sms.ru)
— информация об API сервиса — здесь (http://sms.ru/api).

После регистрации личного кабинета провайдер предоставляет вам ключ API-ID и дальше отправка смс-сообщений сводится к формированию http-запроса следующего вида:

https://sms.ru/sms/send?api_id=[api_id]&to=79281234567&msg=’текст сообщения’&json=1

Пример отправки SMS запросом http:

Попытка
   HTTPСоединение = Новый HTTPСоединение(АдресСервера);
   HTTPЗапрос = Новый HTTPЗапрос("https://sms.ru/sms/send?api_id="+API_ID+"&to="+
           Телефон+"&msg="+ТекстСообщения+"&json=0");
   HTTPОтвет = HTTPСоединение.Получить(HTTPЗапрос);    
   ТекстОтвета = HTTPОтвет.ПолучитьТелоКакСтроку();
   
   Отправлено = ?(HTTPОтвет.КодСостояния = "200", Истина, Ложь);      
Исключение
   Отправлено = Ложь;
КонецПопытки;

Скачать конфигурацию для смс-рассылки через SMS.ru можно здесь (//sale.itcity.ru/public/663813/)

has been added to your cart:
Оформление заказа