Что такое OPDS?
OPDS — это то, как приложение для чтения разговаривает с книжным каталогом. Вы встречаете его каждый раз, когда открываете каталог в Fablum, обычно не замечая.
OPDS расшифровывается как Open Publication Distribution System. Это открытый стандарт публикации книжного каталога в виде, который может прочитать другая программа: лента записей, у каждой — название, автор, язык, обложка и ссылка на сам файл. Приложение для чтения забирает эту ленту и рисует её списком книг. Ничто в ней не принадлежит одному магазину или одному приложению.
В этом вся идея. Веб-страница о книге написана для человека; каталог OPDS написан для программы. Раз формат зафиксирован, приложение умеет то, чего не позволяет страница: искать внутри каталога, фильтровать его, показывать обложки сеткой и отдавать скачанное прямо в вашу библиотеку, а не в папку загрузок браузера.
Чем он отличается от магазина
Каталог — не магазин. Нет корзины, нет оплаты, нет аккаунта: запись OPDS — это описание плюс одна или несколько ссылок на скачивание, и приложение идёт по ссылке. Библиотеки, архивы и издатели текстов общественного достояния пользуются им именно потому, что никакой торговой машинерии в нём нет.
Это и не формат файла. EPUB и PDF — это книги; OPDS — указатель, который на них ссылается. Большинство каталогов — просто Atom или JSON поверх HTTP, поэтому любое приложение для чтения, знающее стандарт, листает их без всяких плагинов.
Где его использует Fablum
В Fablum встроен один публичный каталог, и это каталог OPDS. Всё, что происходит в той панели, — приложение читает ленту OPDS и делает то, что в ней находит: категории, по которым вы ходите, поиск, фильтры по языку и типу, скачивание, поток.
- 1
Откройте Fablum, нажмите + в библиотеке и выберите Публичные каталоги. Откроется каталог OPDS с книгами и аудиокнигами общественного достояния.
- 2
Ищите в нём или пользуйтесь фильтрами по языку и типу. И то и другое — возможности OPDS: приложение просит у каталога более узкую ленту и перерисовывает список.
- 3
Нажмите на книгу и скачайте её. Ссылка на скачивание из записи забирается и импортируется, после чего книга открывается офлайн из вашей библиотеки.
Что покрывает стандарт
Лента OPDS описывает две вещи: навигацию — категории и полки, по которым вы ходите, — и получение, то есть записи, которые действительно можно скачать. Одна запись может предлагать несколько файлов (EPUB, PDF или аудиокнигу), и приложение выбирает тот, который умеет открыть. Поиск тоже входит в стандарт, поэтому каталог вы ищете в приложении, а не на сайте.
Спецификация открыта и развивается публично на specs.opds.io; версия 1.2 основана на Atom, её до сих пор публикует большинство каталогов, а 2.0 — преемница на JSON.
Практическая сторона того же каталога — как найти бесплатные книги.