Что нового

Изменение даты и времени в xml файле

srg777

Новичок
Сообщения
21
Репутация
1
Версия AutoIt: 3.

Описание:
Добрый день!
Есть запрос для выгрузки запрещенных сайтов zapros.xml на диске c:\.
Текст запроса такой:
<?xml version="1.0" encoding="windows-1251"?>
<request>
<requestTime>2014-06-23T09:00:00.000+04:00</requestTime>
<operatorName>ЗАО ОПЕРАТОР</operatorName>
<inn>7718111111</inn>
<ogrn>5062122332122</ogrn>
<email>[email protected]</email>
</request>


Перед выгрузкой запрещенных сайтов, необходимо каждый раз менять параметр requestTime на текущее время и дату, после этого заново подписывать данный файл и делать запрос реестра запрещенных сайтов.
Соответственно, каждый день в 9:00, 12:00 и 21:00 необходимо в запросе менять дату на текущую, и время на текущее, после этого запускать bat-файл от имени администратора для подписи xml-запроса и все. Сейчас мне настроили автоматическую выгрузку, но она происходит на основе подписанного xml-запроса со старой датой и временем. Вроде как сейчас Роскомнадзор не проверяет параметр RequestTime. А если начнет проверять? И снова оштрафуют на 30 000 рублей. Как-то не хочется.

Скажу честно, с autoit никогда не работал и в скриптах вообще ничего не понимаю. Поэтому я даже не представляю, как лучше здесь организовать. Как я понимаю, нужен скрипт на изменение текущей даты и времени, который нужно запускать 3 раза в день через планировщик windows? Или можно и autoit настроить на запуск скрипта в определенное время каждый день?
Можете помочь сделать скрипт? Выражусь более прямо. Можете ли сделать такой скрипт для меня?

То есть задача у меня такая:
в вышеуказанном скрипте изменять в параметре requestTime дату и время на текущие каждый день в 9,12 и 21 час ровно
и после этого запускать файл c:\podpis.bat от имени администратора (запустится командная строка с командой на подпись xml-запроса)

Заранее очень благодарен!
 

Z_Lenar

Продвинутый
Сообщения
209
Репутация
52
Код:
#RequireAdmin
$buff = FileRead('C:\zapros.xml')
$buff = StringRegExpReplace($buff, '(?i)\d{4}-\d{2}-\d{2}T\d{2}:\d{2}:\d{2}', StringFormat('%s-%s-%sT%s:%s:%s', @YEAR, @MON, @MDAY, @HOUR, @MIN, @SEC))
FileMove('C:\zapros.xml', 'C:\_zapros.xml', 1) ; Резервное копирование в файл _zapros.xml
FileWrite('C:\zapros.xml', $buff)
Run('c:\podpis.bat')
 
Автор
S

srg777

Новичок
Сообщения
21
Репутация
1
Спасибо большое! Отрабатывает как нужно.


А может еще поможете, если это возможно, конечно.
После отработки файла podpis.bat, а именно после подписания электронной подписью xml файла в командной строке появляется сообщение о наличии ошибок:
[ErrorCode: 0x00000000] если файл подписан и ошибок нет. Ну и если вместо нулей есть какие-то другие цифры, значит какие-то ошибки есть и файл подписи не пройдет проверку на сайте Госуслуг.

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

Может я много прошу и это невозможно. Но я хотя бы помечтал ;D

В любом случае Вам спасибо за скрипт!!!!!!!!!!!!!!!!!!!


Добавлено:
Сообщение автоматически объединено:

И еще вопрос. А как можно репутацию улучшить отвечающему? Не нашел. Плохо смотрел? Или новичкам нельзя?
 

Z_Lenar

Продвинутый
Сообщения
209
Репутация
52
srg777 [?]
А может еще поможете, если это возможно, конечно... (много букав)
Возможно. Но в одной теме по одной задаче/проблеме.

И еще вопрос. А как можно репутацию улучшить отвечающему? Не нашел. Плохо смотрел? Или новичкам нельзя?
Внизу у каждого сообщениея, кроме собственных, зеленая иконка с большим пальцем поднятым наверх.
 
Автор
S

srg777

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

Нет у меня подобных иконок. Подозреваю, что как новичок я не могу изменять репутацию? Сделайте скриншот, пожалуйста, если не сложно. Где точно кнопка улучшения репутации? У меня ее нет. Все обсмотрел. Может впритык не вижу? Хочется поблагодарить человека ведь.
 

alex33

Скриптер
Сообщения
1,457
Репутация
186
srg777,
Нет у меня подобных иконок.
Есть, просто она очень мелкая.
Вот такая
kdm_up.png
иконка должна быть.

Подозреваю, что как новичок я не могу изменять репутацию?
На сколько я знаю, репутацию могут изменять все пользователи.

Сделайте скриншот, пожалуйста, если не сложно.
Вот скриншот кнопки:


И скриншот твоего сообщения под которым есть эта иконка:
 
Верх