[Feature request] RTS to remember "Idle Time"

Discuss new features and functions
The_Joker
Posts: 6
Joined: 29 Oct 2019

Post by The_Joker

Hallo,

RTS always starts with an idle time of 10 seconds even if it was changed in the previous run.

It would be nice if it could remember the idle time set in the last run when it is started newly.

xCSxXenon
Posts: 351
Joined: 11 Jun 2019

Post by xCSxXenon

A default option could be nice

User avatar
Plerry
Posts: 904
Joined: 22 Aug 2012

Post by Plerry

When you save an RTS monitoring job (as an *.ffs_real-file),
the idle time setting is saved with it and is effective when opening that job.
But (obviously) it does not change the default idle time of any new RTS jobs.
Last edited by Plerry on 25 Nov 2019, 12:12, edited 1 time in total.

The_Joker
Posts: 6
Joined: 29 Oct 2019

Post by The_Joker

Thanks for the tip @Plerry !

The_Joker
Posts: 6
Joined: 29 Oct 2019

Post by The_Joker

When you save an RTS monitoring job (as an *.ffs_real-file),
the idle time setting is saved with it and is effective when opening that job. Plerry, 21 Nov 2019, 07:58
Well maybe it should do so, but it does not. I have set the idle time setting to 60 seconds and saved it as *.ffs_real file, but it has no effect, idle time is still 10 seconds, I checked it with the stopwatch.

For me this is an disadvantage, don't know what others think.

User avatar
Plerry
Posts: 904
Joined: 22 Aug 2012

Post by Plerry

If you examin the *.ffs_real file with a text-editor (e.g. Notepad++),
it should contain (and in my case does contain ...) the XML line
<Delay>60</Delay>
(assuming you changed the idle time from 10 into 60 seconds).
If you run that RTS job and look at its settings (the Configure option of the RTS task in the task-tray), it also shows the 60 seconds rather than the default 10 seconds idle time.
When making a change to the monitored folder, the action also only takes place after 60 seconds idle time.
(RTS build 09/17/19 - Unicode x64, running on Win 10, version 1903)

Are you sure you invoke RTS passing the stored *.ffs_real file?
Look at the purple background text in the RTS Manual Section.
It seems you are using the second option, i.e. passing an *.ffs_batch file (the 3rd bullet), instead of passing your *.ffs_real file (the 2nd bullet).

The_Joker
Posts: 6
Joined: 29 Oct 2019

Post by The_Joker

Just checked it once more and yes I am using the *.ffs_real file.
As well I checked the XML file and it contained following
<Errors Ignore="true" Retry="1" Delay="60"/>
(RTS build 11/19/19 - Unicode x64, running on Win 10, version 1909)

I made some experiment and found some inconsistency between FreeFileSync.exe and RealTimeSync.exe.
I removed in the XML file Delay="60" from
<Errors Ignore="true" Retry="1" Delay="60"/>
and moved it to a single line in the format stated in your post (without the ").

Now RealTimeSync.exe would accept the XML file and set the idle time correctly to 60.
However if I load the file in FreeFileSync.exe it breaks with a warning
Configuration file "....\BatchRun.ffs_real" is incomplete. The missing elements will be set to their default values.

The following XML elements could not be read:

<FreeFileSync> <Errors> @Delay
IMHO this should be corrected.

User avatar
Plerry
Posts: 904
Joined: 22 Aug 2012

Post by Plerry

It seems you are still mixing up the *.ffs_real file and the *.ffs_batch file.
Your line
<Errors Ignore="true" Retry="1" Delay="60"/>
is a line from your *.ffs_batch XML file, not from your *.ffs_real file, and relates to something completely different than the RTS idle time. It is the FFS retry time if a folder can not (yet) be reached. That Delay should not be deleted, as also reported by FFS.

As stated in my earlier reply, the line
<Delay>60</Delay>
is in the *.ffs_real XML file and sets the RTS Idle-time.

As also stated before, you should invoke RTS passing the *.ffs_real file as an argument.
This should (and in my experience: does) properly set the RTS idle-time to the value specified by the Delay declaration.
The *.ffs_real file should also contain an XML line
<Commandline HideConsole="false">[Full path to your  *.ffs_batch-file]</Commandline>
, which tells RTS to launch FFS and run the specified *ffs_batch sync job after RTS has detected a relevant change in the monitored folder(s) and the Idle-time has passed.