Указатель периодического события


     Зачастую приходится определять события, с помощью которых одни и те же
действия  происходят постоянно  через равные  промежутки времени (например,
анализ   работоспособности   системы,   инициализация   модема,   обработка
log-файлов,  выполнение  команды  Drop  и  т.д.).  При  этом вместо задания
нескольких  однотипных описателей  событий имеет  смысл определить  событие
лишь  однажды, используя  указатель периодического  события. Этот указатель
задается вместо time period и имеет следующий вид (к примеру):

          P.01:00

     Символ 'P'  вместо дня недели  означает, что событие  периодическое, а
время после точки задает  интервал периодичности выполнения события. Отсчет
интервала  начинается с  того момента,  когда после  внесения описания (или
корректировки) этого  интервала в  events.ctl  впервые  будет запущен T-Mail.
Продолжительность интервала  может находиться в пределах  00:01 ... 255:00.
Указатель  периодического  события  можно  использовать  в файле  events.ctl 
только для директив Poll, Send, Post, Freq, UpdFreq, Drop, Set, Exec, Exit,
Repack.  При  этом  следует  учесть,  что  директивы  Poll  и Drop в случае
многозадачной  работы  выполняются  только  задачей  Master. Поясним работу
данного указателя на примере ( events.ctl ):

     [2]Exec !load.bat P.01:00

Время  -  13:15.  Тогда  это  событие  (запуск  командного  файла load.bat)
выполнится (задачей  номер 2) сначала  сразу после запуска,  затем в 14:15,
затем в  15:15 и так  далее через каждый  час. Если T-Mail  в момент, когда
событие  должно  быть  выполнено,  был   чем-то  занят,  то  событие  будет
выполнено, как только это станет возможным. Однако, "накопления" событий не
происходит.  Продолжим наш  пример: допустим,  что с  16:10 до 17:30 T-Mail
обслуживал  длительный  сеанс  связи.  Таким  образом,  было  пропущено два
момента для выполнения события. В  этом случае наше событие будет выполнено
в 17:30  сразу  после  окончания  этого  сеанса  связи,  и ЛИШЬ ОДНОКРАТНО.
Следующее событие будет выполнено в 18:15 (опять же, по мере возможности) и
так далее.

        Пример файла  events.ctl  :
        ~~~~~~~~~~~~~~~~~~~~~~~~~
       ;======This is EVENTS list for T-Mail system for 2:5030/15==========
       ;
       ;
       Exit 99         8:30
       Exec daily.bat  6:15
       Exec Weekly.bat 0.0:10
       ;
       RePack 6:01
       Poll 5030/2  18:10
       Poll 5030/6  17:00-20:00
       Poll 5020/35 4:00
       RestoreOut 5030/* !5030/2 !5030/29 0:00-23:59
       ;
       Hold    All 11:00-23:00
       MailOnly All !/100 5:00-7:00
       Direct 5030/6.*
       Mail   5030/7 5030/6
       Mail   *:*/*.*   5030/2
       Files  *:*/*.*   5030/2
       ;
       ;       Вот примеры синтаксически "сложных" конструкций:
       ;
       ;Mail 5040/* !5040/3.3  5030/* !/*.4    5030/7 1.0:00-5:23:59
       ;Mail @nodelist\r50.net 5030/3
       ;Direct 5030/*.* !/2 !/3 !/5
       ;Boss * !/2 !/4 .1  3:00-4:00
       ;
       ;======================= End of file  events.ctl  ====================

                               *  *  *