62 lines
2.0 KiB
Markdown
62 lines
2.0 KiB
Markdown
# Docspell Import
|
|
|
|
Ein Tool zum Aufräumen des Docspell-Importverzeichnisses und zum automatischen Archivieren von bestätigten Dokumenten.
|
|
|
|
## Funktionsweise
|
|
|
|
Das Programm:
|
|
- Überprüft Dateien in konfigurierten Import-Verzeichnissen
|
|
- Prüft für jede Datei, ob sie bereits in Docspell existiert
|
|
- Wenn die Datei existiert und bestätigt ist:
|
|
- Verschiebt sie in ein Archiv-Verzeichnis
|
|
- Organisiert sie nach Datum und Ordnerstruktur
|
|
- Optional: Lädt noch nicht existierende Dateien automatisch nach Docspell hoch
|
|
|
|
## Voraussetzungen
|
|
|
|
- [Docspell Command Line Client (dsc)](https://docspell.org/docs/tools/cli/)
|
|
- `jq` Kommandozeilentool
|
|
- Eine Konfigurationsdatei unter `~/docspell-import.json`
|
|
|
|
## Konfiguration
|
|
|
|
Erstellen Sie eine `docspell-import.json` Datei in Ihrem Home-Verzeichnis: [Beispiel-Konfiguration](./docspell-import-example.json)
|
|
|
|
## Read-only FUSE mount
|
|
|
|
The `mount` subcommand exposes a Docspell collection as a read-only filesystem.
|
|
It uses the same `~/docspell-import.json` configuration and password command as the import command.
|
|
Set `mountPath` in the config to define the default mount point and `mountQuery` to define the default Docspell query.
|
|
|
|
```bash
|
|
mkdir -p ~/mnt/docspell
|
|
docspell-import mount ~/mnt/docspell # starts in the background
|
|
# or, with mountPath configured:
|
|
docspell-import mount
|
|
# unmount when done
|
|
fusermount -u ~/mnt/docspell
|
|
```
|
|
|
|
Mounted files are grouped as:
|
|
|
|
```text
|
|
<Docspell folder>/<year>/<month>/<attachment name>
|
|
```
|
|
|
|
Options:
|
|
|
|
- `--query`: Docspell item query to expose, defaults to `mountQuery` from config.
|
|
- `--limit`: number of items fetched per API request, default `1000`.
|
|
- `--auth-header`: token header, default `X-Docspell-Auth`.
|
|
|
|
The mount is read-only. File contents are downloaded lazily from `/api/v1/sec/attachment/{id}` when read.
|
|
|
|
Helper commands:
|
|
|
|
```bash
|
|
docspell-import get-local-path <item-id-or-web-url>
|
|
docspell-import get-url <local-mounted-path-or-item-id>
|
|
```
|
|
|
|
`get-local-path` starts the configured mount in the background if it is not mounted yet.
|