File:  [Local Repository] / processmail / README
Revision 2.4: download - view: text, annotated - select for diffs - revision graph
Sun Feb 20 03:24:43 2005 UTC (19 years, 3 months ago) by boris
CVS tags: Version_3
Wrote readme

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

Комплекс программ Интернет-Клуба ``Что? Где? Когда'' поможет вам.

1. УСТАНОВКА И НАСТРОЙКА ПРОГРАММ

А. Зайдите на http://internet.chgk.info/boris/processmail и
скачайте файл processmail.tgz. Распакуйте этот
файл на Вашм компьютере. Вы найдете:

 - README -- этот файл
 - processmail.pl, createtable.pl, reminder.pl, collection.pl --
     скрипты для обработки почты.
 - subroutines.pl -- вспомогательный файл, используемый прочими
     скриптами 
 - parameters.pl -- файл, содержащий настраиваемые параметры программ
 - process.tex, process.pdf -- техническая документация к программам
     (если Вы не собираетесь ``влезать вовнутрь'', Вам она не
     понадобится )

Б. В каждом из файлов processmail.pl, createtable.pl, reminder.pl,
collection.pl замените первую строку (#!/usr/local/bin/perl) на ссылку
на положение перла в Вашей системе. Сделайте эти файлы выполняемыми (в
Юниксе это делает chmod a+x *.pl)

В. Посмотрите внимательно файл parameters.pl. В нем Вы можете захотеть
изменить ряд параметров:

Вот эти параметры задать ОБЯЗАТЕЛЬНО:
 
 $NAME[1] и $NAME[2] -- названия зачетов
 $MINQUEST[1], $MAXQUEST[1],  $MINQUEST[2], $MAXQUEST[2] -- номера
      первого и последнего вопросов в каждом зачете
 $FILES[1], $FILES[2] -- названия файлов, куда вы складываете письма
      с ответами в каждом зачете.  Э

Вот эти параметры нужны для программы reminder:

 $fromaddress задает Ваш обратный адрес
 $DK задает название Вашей команды
 $date -- системная процедура, которая выдает московское время
    (если Вы не можете его вычислить, напишите просто $date="";)
 процедуры printheader и printfooter печатают заголовок Вашего
   письма-напоминания на лист z-info

2. РАБОТА С ПРОГРАММАМИ

А. Просмотрите каждое письмо с ответами -- соблюден ли в нем
формат. Вот пример правильно оформленных ответов:
*** "Марсиане", 343
#1. Дедка
#2. Бабка
#3. Внучка
#4. Жучка, кошка
и мышка
***

ПОМНИТЕ: если команда прислала несколько писем, написание названия
команды в них должно быть одинаковым.

Если у команды еще нет регистрационного номера, поле ``номер'' может
быть пропущено. Программа присвоит такой команде регистрационный номер
0. Напомните капитану такой команды, чтобы он срочно связался с
Секретарем клуба.

Б. Складывайте все ответы на данный зачет в один файл, например,
sprint.mail и stayer.mail. Если от команды пришло несколько писем,
бросайте туда ВСЕ. Проверьте, что более поздние письма следуют за
более ранними.

В. Время от времени запускайте 
reminder.pl -r номер_зачета  

Например,
reminder.pl -r 1
или
reminder.pl -r 2

Это пошлет на лист z-info сводку о командах, чьи ответы получены. Но
не злоупотребляйте сводками, дабы не рассердить Почтмейстера.

Г. Когда ответов скопится достаточно, запустите
processmail.pl  -o scores
Тогда у Вас получится файл scores примерно такого типа:

#1. Frequency: 1. Score: ?
  Хам
#1. Frequency: 2. Score: ?
  Bog
....

Замените "?" на "+" и "-" и запишите файл. Если придут новые письма,
бросьте их все в тот же файл (НЕ УБИРАЯ СТАРЫХ!!!).  Команда
processmail.pl -t scores  -o scores
добавит в файл scores ответы, которых Вы еще не оценили.

Примечания:
-----------
(1) Если файла scores еще не существует, команда
processmail.pl -t scores  -o scores
выдает ошибку. Используйте
processmail.pl   -o scores
(2) НЕ используйте команду типа
processmail.pl -t scores > scores
Это приведет к уничтожению ваших старых оценок.

Д. Когда срок приема ответов истечет, ПРОВЕРЬТЕ ваши оценки. Неприятно
наталкиваться на собственную небрежность, правда?

Команда
createtable.pl  -t scores -o table
создаст файл table с таблицей результатов, а команда
collection.pl  -t scores -o collection
создаст файл collecton с собранием сочинений.

Если вопросов много, формат вывода команды createtable.pl может
оказаться неудобным.  В этом случае используйте формат
createtable.pl -s  -t scores -o table
Ключ -s (от Short) выводит ответы в "сжатом" формате.


Перед посылкой на общий лист просмотрите файлы еще раз -- а вдруг
ошиблись Вы или я?

Вот и все!

3. РАЗНЫЕ РАЗНОСТИ

В файле process.tex хранится техническая документация к
программaм. Если Вы хотите разобраться, как именно работает система,
этот файл для Вас.

Все программы позволяют при вызове указать ключ -d (debug). С этим
ключом программы печатают массу всякой дополнительной информации --
полезной и не очень...

4. АВТОР

Борис Вейцман, borisv@lk.net

Я благодарен Якову Зайдельману, Льву Горенштейну, Алексу Покрасу и
Дмитрию Рубинштейну за помощь в разработке этой программы.

$Id: README,v 2.4 2005/02/20 03:24:43 boris Exp $

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>