Введение

Формат офлайн-читателя почты QWK — это файловый формат для автономного чтения почты, который был популярен среди пользователей систем досок объявлений (BBS), особенно пользователей FidoNet и других сетей, генерировавших большие объемы почты. QWK был первоначально разработан Марком "Спарки" Херрингом в 1987 году для систем, работающих на популярной BBS PCBoard, но впоследствии был адаптирован для других платформ. Херринг скончался от сердечного приступа в 2020 году в результате розыгрыша с вызовом экстренных служб. В период наибольшей популярности BBS несколько десятков автономных почтовых читателей поддерживали формат QWK.

Описание

Как и другие автономные читатели, QWK собирал сообщения для конкретного пользователя с помощью программного обеспечения QWK на стороне BBS, сжимал их с помощью приложения, такого как PKZIP, и затем передавал их пользователю. Это обычно осуществлялось через программу "BBS door", работающую на BBS-системе. В случае QWK сообщения помещались в один большой файл, который затем объединялся с несколькими управляющими файлами и сжимался в единый архив с расширением файла, а в качестве базового имени файла обычно использовалось "id" BBS в формате Файл обычно отправлялся пользователю автоматически благодаря функции автозапуска протокола ZModem, хотя большинство QWK-дверей позволяли выбрать и другие протоколы. После получения файла пользователем, процесс разворачивался: файлы извлекались из архива и открывались в клиенте. Эти отдельные шаги обычно автоматизированы, то есть пользователю нужно было лишь запустить программу двери на BBS, дождаться завершения загрузки и затем запустить клиент. Все промежуточные этапы были автоматизированы. Изначально QWK не поддерживал загрузку ответов, но эта функция была быстро добавлена с ростом популярности QWK. QWK помещал ответы в файл (также обычно с именем, содержащим "id" BBS), который автоматически обменивался при следующем подключении пользователя. Клиенты QWK значительно различались по функциональности, но все они обеспечивали базовую поддержку электронной почты и публичных форумов. До появления QWK и подобных систем пользователи с большим объемом сообщений часто настраивали собственный узел FidoNet для быстрого получения почты, но QWK значительно упростил настройку и увеличил число пользователей офлайн-почты.

Архитектура

Поскольку QWK изначально был разработан для работы с PCBoard, система сохраняет многие особенности структуры PCBoard для файлов сообщений и форумов. Например, QWK использует один файл для хранения сообщений, а другой – для индексации их заголовков. По сути, QWK представлял собой способ извлекать сообщения из внутренних файлов PCBoard и переупаковывать их в единый файл. Позже QWK был модифицирован для включения расширенных полей, которые преодолевали исходные ограничения PCBoard. Новый формат, известный как Extended QWK, но записываемый как QWKE (произносится как "квик-и"), добавил серию "костыльных" строк после строки заголовка сообщения, позволяющих использовать текст в произвольной форме. Например, если заголовок "ТЕМА" превышал 25 символов, он обрезался до 25 символов в заголовке и затем повторялся в полном виде в теле сообщения. Программное обеспечение для чтения QWKE распознавало эти "костыльные" поля и отображало их в заголовке, а неподдерживающее программное обеспечение просто оставляло текст в теле сообщения. Кроме того, были внесены незначительные изменения, включающие небольшие информационные пакеты, передаваемые между BBS и пользователем.