автоматическое получение СМС

Обсуждение программы nhsms - отправка и приём СМС
Закрыто
Аалександр
Сообщения: 5
Зарегистрирован: 22 сен 2017, 11:18

автоматическое получение СМС

Сообщение Аалександр »

Добрый день
Модем huawei MegaFon M150-2
программа nhsms-v3.1.0.43-service
После запуска сервиса модем опрашивается и считываются sms
но повторного считывания через указанное в конфиге времени не происходит
как сделать чтобы модем опрашивался с нужной периодичностью?

повторное считывание sms получилось только после перезапуска сервиса
конфиг:
[Read]
ReadingTextMessages=auto
ReadMaxIntervalMs=30000
MessageStorage=
CommandLine0=scripts\save_to_text\sms-deliver.cmd

логи:
2017-09-22 11:11:26 CHI:5IO67V1ZU9DOMZB3IX4ED410A
2017-09-22 11:11:26 Ищу модем...
2017-09-22 11:11:26 Попытка 1/10...
2017-09-22 11:11:26 Открываю порт COM15... OK 115200... . . . . . . . . . . . . . . . . . . . . найден huawei MegaFon M150-2 IMEI:868757020358608 IMSI:250028258135357 отправка СМС:да считывание СМС:*уведомление,опрос области памяти:SM,ME MMTS:доступно центр обслуживания:+79282000002 лицензия:ознакомительная
2017-09-22 11:11:36 проверка сети... сеть:Мегафон (домашняя) OK
2017-09-22 11:11:37 Считываю входящие сообщения...
2017-09-22 11:11:37 считываю из 'SM'...
2017-09-22 11:11:44 входящее сообщение от 79054527007 отправлено 2017-09-22 10:40:18 'Fhhdf'
2017-09-22 11:11:44 Запускаю "scripts\save_to_text\sms-deliver.cmd"... OK
2017-09-22 11:11:44 входящее сообщение от 79054527007 отправлено 2017-09-22 10:41:46 'Test'
2017-09-22 11:11:44 Запускаю "scripts\save_to_text\sms-deliver.cmd"... OK
2017-09-22 11:11:44 входящее сообщение от 79054527007 отправлено 2017-09-22 10:54:31 'Trdfy'
2017-09-22 11:11:44 Запускаю "scripts\save_to_text\sms-deliver.cmd"... OK
2017-09-22 11:11:44 считываю из 'ME'...
2017-09-22 11:11:44 считано сообщений: 3
2017-09-22 11:14:21 Завершаюсь...

// здесь уже должны быть получены 2 смс . но нет
.. перезапуск..


2017-09-22 11:14:24 CHI:5IO67V1ZU9DOMZB3IX4ED410A
2017-09-22 11:14:24 Ищу модем...
2017-09-22 11:14:24 Попытка 1/10...
2017-09-22 11:14:24 Открываю порт COM15... OK 115200... . . . . . . . . . . . . . . . . . . . . найден huawei MegaFon M150-2 IMEI:868757020358608 IMSI:250028258135357 отправка СМС:да считывание СМС:*уведомление,опрос области памяти:SM,ME MMTS:доступно центр обслуживания:+79282000002 лицензия:ознакомительная
2017-09-22 11:14:34 проверка сети... сеть:Мегафон (домашняя) OK
2017-09-22 11:14:36 Считываю входящие сообщения...
2017-09-22 11:14:36 считываю из 'SM'...
2017-09-22 11:14:42 входящее сообщение от 79054527007 отправлено 2017-09-22 11:12:21 'Ggvv'
2017-09-22 11:14:42 Запускаю "scripts\save_to_text\sms-deliver.cmd"... OK
2017-09-22 11:14:42 входящее сообщение от 79054527007 отправлено 2017-09-22 11:14:04 'Tttttt'
2017-09-22 11:14:42 Запускаю "scripts\save_to_text\sms-deliver.cmd"... OK
2017-09-22 11:14:42 считываю из 'ME'...
2017-09-22 11:14:42 считано сообщений: 2
2017-09-22 11:19:36 проверка сети... OK
2017-09-22 11:24:37 проверка сети... OK

// здесь уже должны быть получены 2 смс . но нет
nhutils
Сообщения: 595
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: автоматическое получение СМС

Сообщение nhutils »

Добрый день,
попробуйте задать режим считывания опрос вместо авто.
В данном случае модем сообщает, что поддерживает режим уведомлений, но на самом деле передаёт только по опросу. С Huawei такое бывает.
Аналогичный случай здесь.
Аалександр
Сообщения: 5
Зарегистрирован: 22 сен 2017, 11:18

Re: автоматическое получение СМС

Сообщение Аалександр »

СПАСИБО ЗА ОТВЕТ !! помогло .. сбор СМС работает как часики


помогите разобраться с запуском CMD из скрипта sms-deliver.cmd

ЭТО ЛОГ
2017-09-26 12:55:56 Считываю входящие сообщения...
2017-09-26 12:55:56 считываю из 'ME'...
2017-09-26 12:55:56 считываю из 'MT'...
2017-09-26 12:55:56 считываю из 'SM'...
2017-09-26 12:56:03 входящее сообщение от xxxxxx отправлено 2017-09-26 12:55:46 'Test'
2017-09-26 12:56:03 Запускаю "scripts\save_to_text\sms-deliver.cmd"... OK
2017-09-26 12:56:03 считываю из 'SR'...

конструкция фильтрации номера в скрипте sms-deliver.cmd работает !!
find "%sms_sender%" scripts/phones.txt >nul
if errorlevel 1 exit /b 0


ЭТО ЛОГ полученного сообщения
2017-09-26 12:55:46 XXXXXXXXXXXXX "Test"


не могу после обработки номера открыть на выполнение CMD

применяю
if "%sms_messagetext%" == "Test" call "C:\Windows\System32\cmd.exe /c" "c:\Windows\tester.cmd"
if "%sms_messagetext%" == "Test" call "c:\Program Files\nhsms\tester.cmd"
if "%sms_messagetext%" == "Test" call "c:\tester.cmd"


мои права на компе административные

подскажите где поковырять.?
Аалександр
Сообщения: 5
Зарегистрирован: 22 сен 2017, 11:18

Re: автоматическое получение СМС

Сообщение Аалександр »

Странно ! при запуске не службы а приложения вдруг скрипт sms-deliver.cmd отрабатывает до конца вызывая результирующий CMD
Также уверенно отрабатывает запуск результирующего скрипта консольный nhsmscl.exe


служба не дорабатывает ! почему ? прав не хватает ? так я админ а служба запускается с Системной учетной записью
nhutils
Сообщения: 595
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: автоматическое получение СМС

Сообщение nhutils »

Аалександр писал(а):не могу после обработки номера открыть на выполнение CMD

мои права на компе административные

подскажите где поковырять.?
А как определяете, что не выполняется CMD?

Например, здесь случай, когда CMD запускался, но не работало сохранение в файл: Входящие смс

Потом в команде
Аалександр писал(а):if "%sms_messagetext%" == "Test" call "C:\Windows\System32\cmd.exe /c" "c:\Windows\tester.cmd"
call для exe - зачем?
путь "C:\Windows\System32\cmd.exe /c" - неправильно
Аалександр
Сообщения: 5
Зарегистрирован: 22 сен 2017, 11:18

Re: автоматическое получение СМС

Сообщение Аалександр »

Q. А как определяете, что не выполняется CMD?
A. целевой cmd выводит на экран слово тест.

из программы с GUI интерфейсом работает, из консольной программы работает, из службы не работает


if "%sms_messagetext%" == "Test" call "C:\Windows\System32\cmd.exe /c" "c:\Windows\tester.cmd" эта строка безусловно неправильна
nhutils
Сообщения: 595
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: автоматическое получение СМС

Сообщение nhutils »

Аалександр писал(а):Q. А как определяете, что не выполняется CMD?
A. целевой cmd выводит на экран слово тест.
Я бы не ориентировался на этот критерий, у служб есть ограничения, и по умолчанию взаимодействие с рабочим столом не разрешено.
Я проверяю, например, через запись в файл в папку %allusersprofile%\nhsms\, она же C:\ProgramData\nhsms\.
Аалександр
Сообщения: 5
Зарегистрирован: 22 сен 2017, 11:18

Re: автоматическое получение СМС

Сообщение Аалександр »

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

мне нужно лишь одно запустить в конце обработки скрипта sms-deliver запустить определенный CMD на исполнение

@echo off
if not "%sms_type%" == "SMS-DELIVER" exit /b 0
rem Пример: фильтрация отправителя
find "%sms_sender%" scripts/phones.txt >nul
if errorlevel 1 exit /b 0
set filename=%1
if "%filename%" == "" set filename=sms-deliver.txt
echo %sms_senttime% %sms_sender% %sms_messagetext% >> "%filename%"

rem if "%sms_messagetext%" == ""down"" call "c:\down.cmd"
rem if "%sms_messagetext%" == "Down" call "c:\down.cmd"
rem if "%sms_messagetext%" == "test" call "c:\tester.cmd"
rem if "%sms_messagetext%" == "тест" call "c:\tester.cmd"

if "%sms_messagetext%" == "Test" goto ProcessCMD
:ProcessCMD
cd c:\
start c:\tester.cmd
exit /b 0

а можно каким то образом вывести в файл и просмотреть логи службы - кроме основного лога nhsms.out???
nhutils
Сообщения: 595
Зарегистрирован: 09 дек 2009, 18:08
Контактная информация:

Re: автоматическое получение СМС

Сообщение nhutils »

Не понял, а чем nhsms.out не подходит?

насчёт запуска start c:\tester.cmd не уверен, я бы запускал как-то так:

Код: Выделить всё

start %systemroot%\system32\cmd.exe /c c:\tester.cmd
Закрыто