Внешние обработчики ключевого слова


     В  файле  T-Mail.ctl   можно  описать  внешние программы,  которые будут
запускаться в  случае приема соответствующей посылки  или ключевого слова в
то  время, пока  T-Mail ожидает   начала handshake.  Вот как  эти программы
(External Mailers) определяются в файле  T-Mail.ctl :

     Extern_Mail [[addr list]] login word command [parameters]

     Например:
     ~~~~~~~~~
     Extern_Mail  UUрc  c:\uupc\uu.bat
     Extern_Mail  Guest c:\bbs\dobbs.bat 1 2400
     Extern_Mail  [5030/124 5030/15.*]  keysign  pro.bat
     Extern_Mail  [.999]                login    uupc.bat Out Direct

     При  ответе на  звонок, если  будет предъявлено  описанное как  login
word слово  (без пробелов), будет  запущена программа или  командный файл,
соответствующий этому слову. Всего можно описать до 16 External mailers.

     Среди parameters могут  встречаться особые конструкции-макросимволы,
начинающиеся  с  символа  '*'.  Вместо  них  при  запуске будут подставлены
следующие значения:

  Макросимвол:                  Что будет подставлено:
------------------------------------------------------------------
    *P                       Номер COM-порта (1 для COM1 и т.д.)
    *B                       Скорость соединения (baud)
    *T                       Номер задачи T-Mail (task_number)
    *L                       Если COM-порт зафиксирован, то будет передано
                             значение lock_speed, иначе - 0
    *N                       Номер по порядку (начиная с 1)
                             соответствующего описания Extern_Mail
                             в файле  t-mail.ctl 
    *O       (для OS/2)      Handle открытого COM-порта

     Пример:
     ~~~~~~~
     Extern_Mail  UUрc  c:\uupc\uu.bat *P *B *N

     Для COM3 и 2400 bрs будет запущено c:\uupc\uu.bat 3 2400 1

     Если  запуск  внешнего  мэйлера  осуществляется  при исходящем звонке,
имеет значение  код завершения (errorlevel),  с которым заканчивает  работу
заданная программа. Если errorlevel равен 0, то T-Mail уничтожает служебные
письма,  сформированные  для  системы,  на  которую  был  этот  звонок. Это
делается  для   того,  чтобы  избежать  вечного   опроса  системы,  которая
заставляет  T-Mail  запустить  внешний  обработчик.  Вы можете организовать
работу  с несовместимыми  с FTN  системами, придерживаясь  схемы "фиктивных
адресов".

     Кроме  того, при  исходящих звонках  можно использовать  addr list -
список  систем,  при  звонке  на  которые  активизируется Extern_Mail. Если
система,  на  которую  T-Mail  звонит,  не  входит  в  addr  list, то при
установлении  сессии  внешние  мэйлеры  не  будут  активизироваться в любом
случае.

     Пример для UUCP-системы:
     ~~~~~~~~~~~~~~~~~~~~~~~~
     ( t-mail.ctl )
     Extern_Mail [.999] login  uucico.exe -F

     ( subst.lst )
     .999  time CM phone 123-4567

     ( events.ctl )
     Poll  .999  5:00

    Согласно  этому примеру  в 5  часов для  адреса .999  сформируется Poll
письмо  как  для  обычной  FTN  системы.  При  звонке  на эту систему будет
получено  слово login  и вызовется  программа uucico,  а после ее успешного
завершения Poll  письмо удалится и адрес  .999 будет убран из  очереди. При
звонках  на другие  системы внешний  мэйлер uucico.exe  по ключевому  слову
LOGIN активизироваться не будет.