Отправка СМС из 1С 8.3 через USB-модем + Доп. утилита SendSMS.exe





Имеем USB-модем и потребность в отправке смс?
А смс русскими буквами?

Все просто:

1. Подключаем модем — устанавливаем драйверы

2. Запускаем 1С — открываем обработку

3. Заполняем всё как надо — нажимаем кнопку

4. Читаем смс на телефоне.

5. 😉

Программа автоматом находит модем. Если их несколько — выберет первый в списке оборудования. Тестировалось на модеме -том, что на фотках, других у нас в организации не выдают ;-). 

Внимание! модем должен поддерживать отправку сообщений в PDU формате.

Внимание! СМС сообщения в формате флэш после прочтения и нажатия на кнопку «ок» в сообщениях на телефоне не сохраняются!

Обновление от 21 апреля 2024:

Добавлена утилита командной строки.

Функционал тот же, но есть улучшения:

Теперь модем не обязательно должен поддеживать отправку смс в PDU формате. Программа автоматически определяет наличие кирилических символов в сообщении и опрашивает модем на предмет поддержки формата PDU. Если модем не поддерживает отправку «кирилических» смс, а смс содержит хотя бы один русский символ, то сообщение транслитеруется в латиницу и отправится в тестовом формате. Все это запишется в журнал и отобразится на интерактивном экране.

Удалена возможность отправки Flash-смс (или, говоря языком 1С — «модальное» смс) из утилиты, в библиотеке этот функционал оставлен. 

Синтасис простейший:

SendSMS.exe 1234567890 message to send (with or no quotes)

Состав утилиты: 

SendSMS.dll — библиотека

SendSMS.exe — утилита

SendSMS.log — файл журнала (создаётся/дописывается при запуске)

Написана на дотнете.

16 Comments

  1. bashirov.rs

    ddens, интересная вещь, есть возможность массовой рассылки? И возможно не только через usb-модем? На фотке модема убери эмблему оператора связи — если не реклама

    Reply
  2. ddens

    (1) bashirov.rs,

    массовую рассылку — да легко! номера абонентов где брать? внешний файл? справочник контрагентов/сотрудников? внешняя БД? тут нужно определиться и плясать дальше. 😉

    хотел отправить через свой мобильник, подключенный к компу как модем, но мой смартфон отказывается работать как модем — доберусь, перепрошью, а пока проверить не на чем, к сожалению…

    Reply
  3. CSiER

    CDMA поддерживает?

    Reply
  4. ddens

    (3) CSiER, Если вы с этого модема можете отправить СМС и Windows его видит в устройствах как «модем» тогда поддерживает.

    Reply
  5. palsergeich

    1) время отсылки 1 сообщения через модем около 4х сек, те 900 в час, не особо массовая рассылка, да и при таком объеме дешевле и удобнее пользоваться СМС шлюзами (передавать туда номера и тексты можно огромным количеством способов, вплоть до встраиваемой внешней стронней обработки, которую даже настраивать не надо, а просто ставить галочки)

    2) Нет логирования.

    3) для рассылки сразу 2-3 абонентам придется открывать соответствующее количество окон, заполнять их. Неудобно, не автоматизированно.

    4) если есть корп симка с безлимитными СМС и объем смс не настолько большой, то есть готовые недорогие сторонние решения (сам внедрил на днях такой вариант, стоимость стороннего софта 3000), пишется обрабока в несколько строк, и она из почтыфайла на диске сама делает рассылку, и нет ограничения на 70 символов в русской раскладке…

    Вывод: вещь нужная когда количество рассылаемых смс единичное, но как решение для автоматизации совершенно непригодно.

    Reply
  6. ddens

    (5) palsergeich, можете делать любые выводы, но не забывайте приписывать в них «для меня» или «ИМХО», ок? 😉

    1. обработка не задумывалась для массовой рассылки. (продолжайте пользоваться СМС-шлюзами)

    2. есть логирование. (так же неаргументировано)

    3. см. п.1

    4. есть, несомненно есть, много чего есть, и есть дорого, есть бесплатно… но этот факт не лишает эту обработку права на существование, да?

    да и ограничение в 70 символов — обходится в пол-плевка, (просто в данный момент — без нужды)

    Согласен в первой частью вывода. единичная рассылка, оповещение о завершении какой либо задачи, да мало-ли чего… а что вы понимаете под автоматизацией? не массовость ли?

    З.Ы. разработка продолжается, и замечания (только по делу) будут учтены…

    Reply
  7. ddens

    (1) bashirov.rs, нашел сегодня на работе старенький телефончик samsung c3300i, подключил его как модем — через него ушло, НО только латиницей. это ограничение телефона, тк он не понимает цифрового формата СМС.

    Reply
  8. palsergeich

    (6) Это скорее был ответ на первый комментарий, что в данном виде она не способна это выполнять, я не говорил, что она плохая,не стоит так все близко к сердцу принимать)

    Лог то есть но он не удобен.

    Автоматизация — уменьшение трудоёмкости выполняемых операций со стороны пользователя.

    Удачи в дальнейшей разработке.

    Reply
  9. ddens

    (8) palsergeich, а! понял про массовость.. 😉 да, никаких «сердец», что вы!! критику принимаю, но только аргументированно, с деталями. Что с логом-то? чего добавить в логирование? Если каждый «чих» писать в лог, то время работы незначительно увеличится… да, кстати, через модем что на фотках время отправки смс-ки меньше секунды, это видно и по логам…

    время отправки зависит от модема и от длины самой смс-ки

    удача нужна, спасибо 😉

    Reply
  10. asved.ru

    Как реализовано взаимодействие с модемом? Код 1С, ВК на NativeAPI, COM-объект (свой или системный)?

    Reply
  11. ddens

    (10) asved.ru, пока системный СОМОбъект, но в планах написать свою длл-ку, её же и для чтения смс… + минимум кода на 1С 😉

    Reply
  12. oleg_km

    Странно, мы пробовали использовать билайновый модем, он работал только со своей программой раздачи интернета. Просто регулярно запрашивал нестандартной командой от программы ключ и если его не получал, то отключал сеть. А так вполне работоспособно. Тоже уже больше 2-х лет пользуем GSM-модем для отправки и получения СМС. Только мой код завязан на использование .NET

    Reply
  13. ddens

    (12) oleg_km, да, на дотнете все гораздо проще и красивее, в разы 😉

    буквально год назад в конторе перешли на «пчелайн», и все старые модемы изъяли. а там был «огород» из скайлинков…

    Reply
  14. e-lexa

    У меня не работает, в логах пишет что отправлено но смс не доходит

    Reply
  15. ddens

    (15) e-lexa, в лог что пишет? модем правильно определился? что-за модем?

    Reply
  16. Funtik90

    выдает ошибку, можете подсказать в чем проблема? {ВнешняяОбработка.РассылкаСМС.Форма.Форма.Форма(106)}: Ошибка при вызове метода контекста (CreateTextFile)

    ввод = фсо.CreateTextFile(КОМПортМодема + «:», Истина);

    по причине:

    Произошла исключительная ситуация (0x800a0034)

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *