Программа nhsms отправляет смс через модем (телефон), а также считывает входящие смс и выполняет USSD запросы.

Преимущества рассылки смс через модем, по сравнению с интернет шлюзами:

  • не требуется доступ к интернету,
  • смс обрабатываются операторами как обычные сообщения абонента и не подвергаются фильтрации как коммерческий трафик.

Отправленные смс оплачиваются по тарифному плану сотового оператора. К ним применимы пакеты смс, позволяющие снизить стоимость отправки сообщения.

Благодаря тому, что nhsms отправляет смс, сформированных в других приложениях, возможны такие применения, как:

  • ИТ: оповещение администраторов, обслуживающего персонала о сбоях электропитания, нарушении работы сервисов, пропадании связи с сетевыми узлами, а также запуска команд на серверах отправкой текста команды по смс.
  • Продажи: рассылки для покупателей о продукции, акциях, статусе заказов и т.д. Покупатели имеют возможность подачи запросов путем отправки смс.
  • Образовательные учреждения: информирование родителей об успеваемости учеников

Подробная информация о nhsms

Модем

Программа nhsms использует для отправки и приема смс сотовый модем или сотовый телефон (предоставляется пользователем) стандарта GSM с поддержкой AT Command Set для смс.

Программа работает со многими моделями сотовых модемов и телефонов, подключаемых по Bluetooth, RS-232C, USB, например, производства Huawei, Nokia, Siemens, Sony Ericsson, ZTE и др. Также может быть использован смартфон Android при подключении по Bluetooth, если модель поддерживает профиль Bluetooth DUN (Dial-Up Network).

Если данный модем поддерживает считывание смс, становится возможной двусторонняя связь, например, клиенты могут заказывать обратный звонок, или администратор ИТ может удалённо запускать команды.

Отправка SMS

При отправке смс программа nhsms обеспечивает возможности:

  • Поддержка стандартных и длинных смс
  • Автоматический выбор набора символов 7 bit GSM Alphabet или Unicode в зависимости от используемых в сообщении символов
  • Поддержка символов форматирования: перевод строки, табуляцию, кавычки, скобки и пр.
  • Поддержка режима Flash SMS
  • Отправка смс на короткие номера для выполнения служебных команд, таких как подключение и отключение услуг или пакетов смс, обещанный платеж или автоматическая оплата и т.п.

Сформированные сообщения могут быть переданы в программу nhsms:

  • через параметры командной строки
  • через текстовые файлы, в одном файле может быть неограниченное число sms на отправку
  • через базу данных

Результат отправки, а также идентификационный код отправленного сообщения могут быть сохранены в файле и переданы во внешние программы для обработки.

Прием SMS

Программа nhsms считывает смс сообщения:

  • Входящие сообщения с других номеров (также с сайта оператора). Длинные сообщения, состоящие из нескольких обычных, автоматически объединяются в одно.
  • Отчёты о статусе отправленных сообщений.

Все считанные сообщения передаются для обработки во внешние программы и скрипты (задается в конфигурационном файле) с подробной информацией: время отправки, номер отправителя, идентификационный номер и т.д.

Выполнение USSD запросов

Программа nhsms выполняет USSD запросы, они обычно используются для:

  • автоматического контроля и пополнения счета;
  • автоматического подключения/отключения услуг (например, льготного пакета смс).

Ответ сети сохраняется в текстовом файле и передается во внешние программы.

Загрузка, установка и запуск

Программа nhsms доступна для скачивания на странице загрузки.

Программа установки nhsms-setup включает программы с графическим интерфейсом и интерфейсом командной строки, устанавливается в профиль текущего пользователя, административные полномочия не требуются. Может быть запущено несколько копий одновременно (у каждой свой модем) с различными конфигурационными файлами.

Полный комплект файлов nhsms-binaries включает также службу nhsms, для её установки требуются административные полномочия.

Для различных задач в программе предусмотрено три варианта запуска:

  • С графическим интерфейсом nhsms.exe — отображается в виде значка на панели задач; удобно, если за компьютером работает пользователь.
  • В виде службы Windows nhsmssvc.exe — запускается при включении компьютера, не требуя входа в Windows – предпочтительно для серверов.
  • С интерфейсом командной строки nhsmscl.exe — используется для диагностики или в командных файлах

Лицензирование

Лицензия nhsms требуется для работы с максимальным числом смс.

При приобретении лицензии покупатель получает лицензионный код, который необходимо скопировать в конфигурационный файл.

Имеется три варианта лицензии: на модем, на сим карту и на компьютер.

Приобрести лицензию можно в магазине Allsoft. Это надёжный магазин, работающий с 2004 года, поддерживает большое количество форм оплаты, оформляет документы, необходимые для юридических лиц, работает в странах: Россия, Казахстан, Украина, Белоруссия.

Если не требуется оформление документов, лицензию можно приобрести по упрощенной схеме, с размещением заказа через онлайн-форму и оплатой переводом на карту. Скидка 30% на все лицензии.

Лицензия на модем

Особенности лицензии на модем:

  • При приобретении лицензии необходимо указать идентификатор модема (IMEI код). IMEI код отоображается в окне графического приложения nhsms, а также в протоколе программы.
  • При подключении к модему с указанным IMEI кодом программа работает с максимальной скоростью отправки.
  • При подключении к модему с другим IMEI кодом программа работает в ознакомительном режиме.
  • Максимальная скорость отправки сохраняется при смене сим карты или при переносе на другой компьютер.
  • Нет ограничения на срок действия лицензии.
  • Нет ограничения на версию программы: лицензия применима к текущей и к будущим версиям программы.
  • Нет ограничения на режим запуска: лицензия работает в графическом приложении nhsms, консольном приложении nhsmscl, службе nhsmssvc.

Преимущества лицензии на модем:

  • Невысокая стоимость при отсутствии зависимости от компьютера.

Купить лицензию на модем

В связи с возможными проблемами совместимости перед приобретением лицензии на модем рекомендуется проверить работу необходимых функций именно этого модема в ознакомительном режиме.

Лицензия на сим карту

Особенности лицензии на сим карту:

  • При приобретении лицензии необходимо указать идентификатор сим карты (IMSI код). IMSI код состоит из 15 цифр и отображается в окне графического приложения nhsms, а также в протоколе программы.
  • При обнаружении сим карты с указанным IMSI кодом программа работает с максимальной скоростью отправки.
  • При обнаружении сим карты с другим IMSI кодом или при недоступности IMSI кода программа работает в ознакомительном режиме.
  • Максимальная скорость отправки сохраняется при смене моедма или при переносе на другой компьютер.
  • Нет ограничения на срок действия лицензии.
  • Нет ограничения на версию программы: лицензия применима к текущей и к будущим версиям программы.
  • Нет ограничения на режим запуска: лицензия работает в графическом приложении nhsms, консольном приложении nhsmscl, службе nhsmssvc.

Преимущества лицензии на сим карту:

  • Невысокая стоимость при отсутствии зависимости от компьютера или модема.

Купить лицензию на сим карту

Лицензия на компьютер

Особенности лицензии на компьютер:

  • При приобретении лицензии необходимо указать идентификатор компьютера (CHI, Computer Hardware Identity). CHI код отображается в Редакторе конфигурации на странице Лицензия, а также в протоколе.
  • Идентификатор CHI определяется по аппаратным компонентам компьютера – материнской плате и процессорам. Изменения в дисковой системе или сетевой конфигурации, обновление Windows не приводят к изменению CHI кода. Замена материнской платы или процессоров, а также изменение настроек, влияющих на их идентификацию, приводят к изменению CHI кода и переходу в ознакомительный режим.
  • При запуске на компьютере с указанным CHI кодом программа работает с максимальной скоростью отправки.
  • При запуске на компьютере с другим CHI кодом программа работает в ознакомительном режиме.
  • Максимальная скорость отправки сохраняется при смене модемов или сим карт.
  • Нет ограничения лицензии на число одновременно запущенных копий nhsms/nhsmscl/nhsmssvc.
  • Нет ограничения на срок действия лицензии.
  • Нет ограничения на версию программы: лицензия применима к текущей и к будущим версиям программы.
  • Нет ограничения на режим запуска: лицензия работает в графическом приложении nhsms, консольном приложении nhsmscl, службе nhsmssvc.

Преимущества лицензии на компьютер:

  • Возможность применения различных модемов и сим карт.
  • Возможность запуска нескольких копий программы.

Купить лицензию на компьютер

Ознакомительный режим

Без лицензии программа nhsms работает в ознакомительном режиме:

  • Число отправляемых SMS сообщений и USSD запросов не более 3 в минуту.
  • Время работы программы в ознакомительном режиме не ограничено.
  • Содержание SMS сообщений в ознакомительном режиме не изменяется.

Скидки

Хотите приобрести лицензию дешевле? Воспользуйтесь регулярно проходящими акциями и приобретите лицензию со скидкой!

Искать акции на лицензии nhsms

Примеры использования программы nhsms

В этом разделе приведены примеры запуска программы nhsms для отправки и приема смс сообщений: отправка смс из командной строки, отправка смс из файла, прием смс, прием смс с сохранением в базу данных.

Также примеры использования имеются на форуме поддержки: Как отправить СМС, Как считать СМС, Как отправить USSD запрос и обработать ответ.

Отправка смс из командной строки

Этот пример показывает, как отправить одно СМС сообщение, указав номер телефона и текст сообщения в командной строке.

Пример: отправка СМС из двух строк СБОЙ СВЯЗИ и Отсутствует связь с интернетом на номер +79161234567 через подключенный к COM1 сотовый телефон:

nhsms -com:1 -phone:79161234567 СБОЙ СВЯЗИ\nОтсутствует связь с интернетом

Параметр COM задает последовательный порт, к которому подключен модем. Программа будет пытаться найти модем, перебирая все возможные скорости, начиная со 115200 бод и заканчивая 110 бод. Если модем не соединяется на 115200, то время поиска будет довольно большим. Его можно уменьшить, указав скорость в файле syncmodem.ini (см. справку nhsms).

Параметр PHONE задает номер телефона. Номер должен быть указан в международном формате, без плюса. Можно указать несколько номеров через запятую.

Далее в командной строке указан текст сообщения, сочетание \n задаёт перевод строки в отправляемом СМС.

Отправка СМС из командной строки осуществляется просто, но при отправке нескольких СМС происходит медленно, так как для каждого сообщения тратится время на установление связи с модемом. Поэтому при отправке нескольких СМС рекомендуется использовать отправку из файла.

Отправка смс из файла

Режим отправки СМС из файла позволяет отправить неограниченное число СМС за один сеанс работы программы. При этом потребуется настроить конфигурационный файл и подготовить файл с исходящими СМС.

В конфигурационном файле NHSMS.INI в разделе Parameters необходимо задать: однократное выполнение или непрерывная работа (параметр RunMode), файлы с исходящими СМС (параметр SmsFile), действие над обработанными файлами СМС (параметр SmsFileOnComplete).

Пример конфигурационного файла, задающего однократный режим работы программы, расположение файлов с исходящими СМС в папке C:\Outgoing\, а также удаление обработанных файлов.

[Connection]
com=1
[Parameters]
Runmode=once
SmsFile=C:\Outgoing\*.*
SmsFileOnComplete=delete

Пример файла с двумя исходящими СМС, причём первое будет отправлено как Alert-SMS/Flash-SMS, а второе — обычным образом (необходимо поместить файл в C:\Outgoing\):

[СМС1]
phone=79161111111
text=Внимание! Сбой электропитания.
alert=1
[СМС2]
phone=79162222222
text=Внимание! Сбой электропитания.

Далее необходимо запустить программу NHSMS или NHSMSCL без параметров, программа считает параметры работы из конфигурационного файла, найдёт и загрузит файл с СМС, отправит СМС, затем удалит исходный файл и завершит свою работу.

Прием смс

Для приема СМС конфигурационный файл NHSMS.INI должен содержать раздел [Read] с хотя бы одним параметром CommandLine:

[Read]
commandline=process_sms.cmd "%sms_sender%" "%sms_messagetext%"

Тогда программа NHSMS будет считывать СМС из памяти телефона и СИМ карты и для каждого сообщения выполнит команду, заданную параметром commandline.

Для перезагрузки или выключения компьютера можно написать такой командный файл process_sms.cmd:

if not %sms_sender%==79161234567 exit /b 0
if "%sms_messagetext%"=="restart" nhss /r
if "%sms_messagetext%"=="shutdown" nhss /sd

где nhss — программа выключения компьютера.

Прием смс с сохранением в базу данных

Этот пример показывает сохранение входящих сообщений в базу данных. Для взаимодействия с базой данных используются, кроме nhsms, программы nhdbt — NH DataBase Terminal и nhreplace — замена текста в файлах.

Необходимо указать командный файл в INI файле:

[Read] 
commandline=sms2db.cmd

Пакетный файл sms2db.cmd сохраняет текст сообщения в файл %messagetext_file%, исправляет формат, затем формирует SQL запрос в %sql_file% и выполняет его:

if not "%sms_type%"=="SMS-DELIVER" exit /b 0
set sql_file=%sms_sender%-%sms_senttime_year%%sms_senttime_month%^
%sms_senttime_day%%sms_senttime_hour%%sms_senttime_min%%sms_senttime_sec%.sql
set messagetext_file=%sms_sender%-%sms_senttime_year%%sms_senttime_month%^
%sms_senttime_day%%sms_senttime_hour%%sms_senttime_min%%sms_senttime_sec%.msg
echo %sms_messagetext% >%messagetext_file%
nhrplc -s:' -t:'' %messagetext_file%
nhrplc -s:"\\n" -t:'+CHR(10)+' %messagetext_file%
nhrplc -s:"\\r" -t:'+CHR(13)+' %messagetext_file%
nhrplc -s:"\\t" -t:'+CHR(9)+' %messagetext_file%
echo insert into IncomingSms (SenderPhone,SentTime,MessageText) values ^
('%sms_sender%','%sms_senttime%','sms_messagetext'); >%sql_file%
nhrplc -s:sms_messagetext -f:%messagetext_file% %sql_file%
nhdbt "Microsoft dBase driver (*.dbf)" "DBQ=." %sql_file%
del %sql_file% & del %messagetext_file%

Параметры базы данных задаются в вызове nhdbt.

Узнать больше

Скачать новую версию nhsms

Начало работы с nhsms

Использование nhsms

Справка nhsms

16 мыслей о “nhsms

  • 06.02.2022 в 12:55
    Постоянная ссылка

    Здравствуйте.
    Было бы очень удобно иметь программу для любого модема
    способную звонить и отправлять смс, сейчас китайцы
    продают различные 4G модемы, но у них не включены
    функции голосового вызова, хотя в диспетчере устройств
    в портах он обнаруживается, а в программе модема нет указанных
    пунктов.
    Может уже есть готовая, а мы не знаем? )

    Ответ
    • 08.02.2022 в 03:56
      Постоянная ссылка

      Здравствуйте, а какая необходимость звонить с компьютера через 4G модем – можно же позвонить по телефону, хотя сейчас больше звонят через мессенджеры. Или это для роботов по обзвону?

      Ответ
      • 10.02.2022 в 11:48
        Постоянная ссылка

        В то время когда модем подключен к компу и идет интернет трафик,
        что бы не прерывать процесс удобнее разговаривать с компьютера через модем нежели отключать а затем переставлять симку в смартфон, загрузить смартфон, затем только позвонить, а во время разговора нужно будет использовать интернет что бы что то объяснить, а он получается отключен. Да и просто иметь про запас устройство что бы звонить, если смартфон не исправен. Мессенджеры, нужно что бы у приемной стороны тоже был мессенджер, а там стационарный простой телефон.

        Ответ
          • 13.02.2022 в 07:24
            Постоянная ссылка

            Можете более универсальную программу разработать,
            что бы могла смс рассылать и через нее звонить
            через модем, не прерывая интернет трафик?
            Иногда бывает удобно печатать на клавиатуре
            и разговаривать через гарнитуру с абонентом, одновременно находясь в интернете. Так поступаю с 3G модемом fm626, скорость передачи очень низкая для современного web, приобрел 4G модем, но у него нет отправки смс и звонков, хотя в диспетчере задач присутствует порт голосовой связи. С программы nhsms отправлял через него смс.

  • 09.12.2019 в 08:42
    Постоянная ссылка

    А как отправить смс из скрипта если программа запущена службой? Через nhsmscl.exe пишет что порты модема и БД проги заняты. Через nhsmssvc.exe не происходит ничего, даже никаких сообщений не выводится просто проскакивает команда и все.

    Ответ
  • 11.07.2019 в 13:13
    Постоянная ссылка

    Подскажите еще, пожалуйста, как сделать, чтоб nhsms.out писался в utf-8?
    Иначе не получается лог-агентом считать из него информацию об ошибке.

    Ответ
    • 12.07.2019 в 07:50
      Постоянная ссылка

      Сейчас в коде прописано UCS2 LE с BOM и в настройках программы это не меняется. Предполагалось, что UCS2 подойдет всем.
      Поэтому, может как-то внешними средствами копировать в другой файл с преобразованием кодировки для вашего агента?
      И еще смотря какие ошибки. Для отправляемых смс можно выполнять произвольный скрипт https://nhutils.ru/blog/nhsms/help/config_editor/#outgoing_commands, например, создавая нужный файл для агента.

      Ответ
  • 31.05.2019 в 12:07
    Постоянная ссылка

    Добрый день!

    Есть вопрос по лицензированию программы nhsms на два модема.
    К компьютеру подключены два модема. На сайте Allsofl при выборе двух лицензий на модем можно вставить только один IMEI код. В настройках лицензии программы так же можно вставить только один лицензионный код.

    Вопрос: как лицензировать программу на два модема?

    Ответ
    • 31.05.2019 в 18:41
      Постоянная ссылка

      Здравствуйте, если используется несколько модемов на одном компьютере, то для каждого модема надо будет запустить свою копию программы со своим файлом конфигурации и со своим лицензионным кодом. На каждый IMEI будет свой лицензионный код. Allsoft даёт ввести два IMEI через запятую?

      Ответ
  • 28.03.2019 в 14:21
    Постоянная ссылка

    На каком-то этапе (при установке или изменении конфигурации) была обрезана системная переменная PATH, полагаю, скриптами «system_path_remove», «system_path_add».

    Пример, что было и что стало:

    Old ‘Path’ value: C:\PROGRA~1\CA\SERVIC~1\bin;C:\PROGRA~1\CA\SHARED~1\CCS\ETPKI\lib;C:\Program Files\CA\BrightStor High Availability;C:\Program Files\IBM\WebSphere MQ\Java\lib;C:\Program Files\CA\Advantage Ingres [ET]\ingres\bin;C:\Program Files\CA\Advantage Ingres [ET]\ingres\utility;C:\PROGRA~1\CA\SERVIC~1\bin;C:\Program Files\CA\SC\CORA\;C:\Program Files\CA\SC\CAWIN\;C:\Program Files\CA\CA_APPSW\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\PROGRA~1\CA\CA_APPSW;C:\PROGRA~1\CA\SHARED~1\CCS\CAM\bin;C:\PROGRA~1\CA\SHARED~1\Dylan\bin;C:\PROGRA~1\CA\SHARED~1\CCS\PDA;c:\progra~1\ca\shared~1\ccs\ais\framew~1\bin;C:\PROGRA~1\CA\SHARED~1\CCS\WVEM\Bin;C:\PROGRA~1\CA\SHARED~1\CCS\AT\services\bin;C:\PROGRA~1\CA\SHARED~1\CCS\AT\agents\bin;C:\PROGRA~1\CA\SHARED~1\CCS\DISCOV~1\bin;C:\Program Files\CA\DSM\bin;C:\PROGRA~1\CA\UNICEN~1\bin;C:\Program Files\CA\eTrust Directory\dxserver\bin;C:\Program Files\IBM\WebSphere MQ\bin;C:\Program Files\IBM\WebSphere MQ\tools\c\samples\bin;C:\PROGRA~1\CA\UNICEN~2\MQMANA~1\Bin;C:\PROGRA~1\CA\UNICEN~2\Experts\Bin;C:\Program Files\Microsoft SQL Server\80\Tools\Binn\;C:\Program Files\Microsoft SQL Server\90\Tools\binn\;C:\Program Files\Microsoft SQL Server\90\DTS\Binn\;C:\Program Files\Microsoft SQL Server\90\Tools\Binn\VSShell\Common7\IDE\;C:\Program Files\SlyMQMessager;C:\WINDOWS\system32\WindowsPowerShell\v1.0;C:\PROGRA~1\CA\SHARED~1\CCS\AIS\FRAMEW~1\bin;C:\Program Files\BTC\Bin

    New ‘Path’ value: C:\PROGRA~1\CA\SERVIC~1\bin;C:\PROGRA~1\CA\SHARED~1\CCS\ETPKI\lib;C:\Program Files\CA\BrightStor High Availability;C:\Program Files\IBM\WebSphere MQ\Java\lib;C:\Program Files\CA\Advantage Ingres [ET]\ingres\bin;C:\Program Files\CA\Advantage Ingres [ET]\ingres\utility;C:\PROGRA~1\CA\SERVIC~1\bin;C:\Program Files\CA\SC\CORA\;C:\Program Files\CA\SC\CAWIN\;C:\Program Files\CA\CA_APPSW\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;C:\PROGRA~1\CA\CA_APPSW;C:\PROGRA~1\CA\SHARED~1\CCS\CAM\bin;C:\PROGRA~1\CA\SHARED~1\Dylan\bin;C:\PROGRA~1\CA\SHARED~1\CCS\PDA;c:\progra~1\ca\shared~1\ccs\ais\framew~1\bin;C:\PROGRA~1\CA\SHARED~1\CCS\WVEM\Bin;C:\PROGRA~1\CA\SHARED~1\CCS\AT\services\bin;C:\PROGRA~1\CA\SHARED~1\CCS\AT\agents\bin;C:\PROGRA~1\CA\SHARED~1\CCS\DISCOV~1\bin;C:\Program Files\CA\DSM\bin;C:\PROGRA~1\CA\UNICEN~1\bin;C:\Program Files\CA\eTrust Directory\dxserver\bin;C:\Program Files\IBM\WebSphere MQ\bin;C:\Program Files\IBM\WebSphere MQ\tools\c\samples\bin;C:\PROGRA~1\CA\UNICEN~2\MQMANA~1\Bin;C:\PROGRA~1\C

    Проверьте их логику работы.

    Ответ
    • 31.03.2019 в 17:09
      Постоянная ссылка

      Да, эти скрипты корректируют значение PATH. Особой логики там нет, изменение переменной делается через setx. В любом случае, посмотрим.

      Ответ
  • 03.12.2017 в 11:26
    Постоянная ссылка

    Возможно ли установить/изменить кодировку для создаваемых файлов (входящих смс и исходящих смс)
    Требуется содержимое файла в кодировке utf-8. Сейчас кодировка ucs-2 LE

    Ответ
    • 03.12.2017 в 22:01
      Постоянная ссылка

      Да, поскольку эти файлы смс сохраняются батниками, то в соответствующий bat файл можно вставить команду на изменение кодировки с помощью программы nhrt.
      Например, файл sms-deliver.cmd имеет команду сохранения каждого смс в отдельный файл, по дате/времени и номеру:

      echo %sms_messagetext% > "%sms_senttime_year%-%sms_senttime_month%-%sms_senttime_day% %sms_senttime_hour%-%sms_senttime_min%-%sms_senttime_sec% %sms_sender%.txt"

      Если вставить после неё строку:

      nhrt.exe -cp:auto,utf8 "%sms_senttime_year%-%sms_senttime_month%-%sms_senttime_day% %sms_senttime_hour%-%sms_senttime_min%-%sms_senttime_sec% %sms_sender%.txt"

      то созданный файл будет преобразован в UTF-8.
      Потребуется скачать программу nhrt и добавить команды в используемые bat файлы.

      Ответ

Добавить комментарий

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