Коробов Алексей | Генеральный директор | ООО "Корус Баланс"

«Управление бизнес-процессами предприятия и организация работы сотрудников»

Общие вопросы * Проблемы при автоматизации бизнес-процессов. * Проблемы при эксплуатации бизнес-процессов. * Человеческий фактор или может ли лень стать стимулом для внедрения и развития системы управления. * Как охватить весь спектр проблем предприятия и не захлебнуться. Взгляд на проблему со стороны разработчиков * Проблемы разработчиков при эксплуатации сложных гибко настраиваемых систем. Разработка в режиме предприятия? Возможно? Зачем? * Коллективная разработка ключ к развитию. * Проблемы оптимизации и скорости работы при универсальном подходе разработки. Программа автоматизации как живой организм. Сколько сил нужно чтобы вдохнуть в него жизнь? * Общее описание получившейся системы и взаимодействия ее подсистем. Описание потенциала подобных систем. Будут озвучены проблемы и вопросы автоматизации бизнес-процессов предприятия по каждому из тезисов, с которыми пришлось столкнуться на личном опыте. Описаны удачные способы решения или обходы проблем, примененные у клиентов.

SMS рассылка из 1С

Обмен - SMS рассылки

Четыре простых способа отправить 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 можно здесь (//infostart.ru/public/663813/)

См. также

Комментарии
Сортировка: Древо
1. molodoi1sneg 15 20.11.14 13:24 Сейчас в теме
Спасибо, взял на заметку.
2. kwazi 220 20.11.14 15:22 Сейчас в теме
3. sdn-1 130 20.11.14 15:30 Сейчас в теме
(2) kwazi, ок, спасибо за информацию, посмотрю обязательно
4. kwazi 220 20.11.14 15:32 Сейчас в теме
тот же Билайн проще пост запросом отправлять чем через почту.
5. OrsoBear 21.11.14 11:38 Сейчас в теме
При объеме рассылки 100000 смс в месяц справится ли модем.
Иногда массово рассылаю задания по сотрудникам.
Недавно появилась заморочка, у Мегафона проходят смс, отправленные только через их пулл. (для третьего способа)

Также минус в том, что нельзя указать псевдоним для первых двух способов, от которого приходят смс.
К примеру у меня уведомления об ошибках в отгрузках приходят от одного псевдонима,
а задания от другого.

6. V_V_V 22.11.14 23:30 Сейчас в теме
Плотно использую специализированный сервис рассылки, ввиду смешных цен и дружелюбного API, но для альтернативных вариантов статья вполне годная. Спасибо автору за проделанную работу.
chizh.84; SinglCOOLer; gradi; +3 Ответить
8. maXon777 97 26.11.14 12:41 Сейчас в теме
(6) V_V_V, а подскажите сервис, если не сложно!
10. DanilaDru 240 27.11.14 11:52 Сейчас в теме
(8) maXon777, к примеру мы используем http://danila.sms.ru/ (реферальная)
27. user631161_rollerdrom18 28.10.16 09:52 Сейчас в теме
7. makaorel 54 26.11.14 10:54 Сейчас в теме
отличная идея, спасибо автору
9. CSiER 18 26.11.14 14:43 Сейчас в теме
Ещё как подпункт для первого способа - установить в сети модем с web API (например, модель "Huawei - E303") - отправка смс / получение статистики через post/get.
11. delete 216 27.11.14 18:56 Сейчас в теме
Неплохая статья)
Жаль, что рассмотрена только отправка, без чтения.
Не знаю как сейчас, раньше для отправки по smtp требовалось включить опцию получения таких сообщений на целевом номере (как способ защиты от спама)
12. agressor 117 28.11.14 09:45 Сейчас в теме
13. premier 159 28.11.14 10:30 Сейчас в теме
Есть ещё способ отправки СМС через оператора сотовой связи посредством GSM модема.
Посмотреть можно здесь: http://infostart.ru/public/84802/
14. bashirov.rs 15 01.12.14 07:47 Сейчас в теме
Интересная статейка. Беру на заметку. Спасибо за код)
16. mazahaka29 10.12.14 13:11 Сейчас в теме
а можно это сделать через сайт? (в интернете ведь есть много сайтов для бесплатного СМС)
17. sdn-1 130 10.12.14 13:32 Сейчас в теме
(16) mazahaka29, можно - есть готовые решения на инфостарте:
http://infostart.ru/public/169628/
http://infostart.ru/public/187886/
19. ToJIuK 04.01.15 13:14 Сейчас в теме
Здравствуйте. Попробовал второй способ отправки смс через Andriod 4.1.2 (Galaxy tab 2). но при попытке отсылки смс выходит ошибка(во вложении). с этой программой сталкиваюсь первый раз, кто нибудь победил данную задачу?
Отсылаю не через 1с, а из Сформированного вручную CMD файла.
Прикрепленные файлы:
28. Nizikov 12.12.16 22:36 Сейчас в теме
(19) Анатолий, у Вас пробел перед номером лишний, вообще беда в том, что текст сообщения не терпит пробелов, никак не могу победить это, кавычки не помогают.
20. Diversus 1767 10.02.15 15:10 Сейчас в теме
Все таки рассылка через смс через интернет шлюзы гораздо удобнее, чем описанный способ, если речь, конечно, идет о массовых рассылках.
Могу порекомендовать так же и свое решение:
Мульти рассылка СМС из 1С для типовых и не типовых конфигураций, на управляемых и обычных формах
22. echo77 833 27.07.15 17:44 Сейчас в теме
У кого-нибудь патч для Microsoft SMS sender есть, который делает так, что окно после отправки сообщения не появляется и не висит?

UPD: только что сделал
UzhaninSG; +1 Ответить
24. maksa2005 136 04.10.15 10:16 Сейчас в теме
(22) echo77, Этот не виснет.
Прикрепленные файлы:
SMSSender.exe
23. maksa2005 136 04.10.15 10:15 Сейчас в теме
1. USB 3G-модем. САМЫЙ ДЕШЕВЫЙ СПОСОБ РЕАЛИЗАЦИИ.
Реализовал механизм на 1с:Розница (Авто).
Респект автору!
25. Lesha1C 238 19.10.15 16:38 Сейчас в теме
если делать отправку через SMTP получается актуально только для версии 8.3 так как ssl в 8.2 не поддерживается?
26. flesh611 09.12.15 15:20 Сейчас в теме
Подскажите, как можно получить статус сообщения при отправке по SMTP через Билайн? В описании сказано, что это возможно с помощью STATUS <smsid>, а где вызвать этот статус не понятно
29. Diversus 1767 31.01.17 11:58 Сейчас в теме
Не знаю, не знаю... Лучше использовать специальные сервисы по отправке смс.
Так будет и быстрее гораздо и эффективней.
Мы сделали такой инструмент Мульти рассылка СМС из 1С поддерживает кучу всего среди которых можно выбрать.
Оставьте свое сообщение