Uploader to automate the Upload and Import of Objects in museum-digital via WebDAV
The purpose of this app will be to allow museums to more simply automate the upload of their collection data to museum-digital. It is thus targeted at museums using museum-digital as a publication platform, while using another collection management system.
While collection management systems differ, an automatic import to museum-digital works in a uniform way. Import data is uploaded via WebDAV, an import is configured using a text file. (See here)
This part of the automatic importing can thus be solved in a one-fits-all solution here. Collection management system-specific export scripts are necessary to present the present app with data to upload. The export itself is thus out of the scope of the tool described here.
Idea / Very Short Summary / Use Cases
Automatic Publication from Separate Collection Management System
A museum wants to use museum-digital only for publication, while they use a separate collection management system. They want to keep their published collections up to date with their local data. Hence, they automate an export from their local program. To upload, they move the data into a specified folder. The present application monitors the folder and uploads the data to museum-digital.
Automating Image Uploads
If a museum produces a lot of digital media files (e.g. lots of scans of books / manuscripts),
it may become tedious to upload them manually. This becomes an issue all the more if there are
lots of uncompressed, high resolution files (again, common with scans).
In this case, it may be useful to use this application to automatically upload the object images
for import using the ImageByImport
parser - a.k.a. the matching of image files to objects based
on their file name according to pre-defined rules.
Workflow
Setup
Before becoming operational, the app needs to gather the information essential for an upload. It will hence attempt to do so when first run (or unless all relevant information is available).
Required Information for Uploading
- Link to the given instance of musdb (e.g. https://demo.museum-digital.org/musdb/)
- Username
- Mail address
- Auth token for WebDAV access
- Institution ID
- Parser
- Location of uploadable files
- Decision, whether objects should be imported as public
Setup workflow
- First, the app requests the musdb username and password
- It uses those to log in one time, retrieves
institution_id
anduser_mail
via the yet to be created/user/read/{id}
(see below) API as well as an auth token for WebDAV uploads (via/user/generate_webdav_access_token/{id}
) - The app verifies that a WebDAV connection can be established and leaves a .txt file in the WebDAV directory to signal, that the import is run via the uploader
- The app lists the available parsers and requests the user to select one / enter one's name
- The app opens a file selection dialogue querying the user to select a folder to upload metadata from
- The app opens a file selection dialogue querying the user to select a folder to upload images from
- User is asked if imported objects should be published immediately
- The thus gathered information is stored in a config file. The password is discarded.
Upload workflow
- Version check (is the updater up to date)
- Config check (is all necessary data configured)
- Check the configured location
- If the location does not exist, it displays a verbose warning
- If the metadata location exists and is not empty, the files upload is triggered
- Metadata files and image files are uploaded via WebDAV
- The script generates the import configuration based on the data gathered during setup
Commands
See --help
.
Interface
This application comes with both a web-based UI and a command line interface.
Requirements
- A museum to try this out with
- Scripts connecting this one with the museum's collection management system:
- Runs export periodically, exports metadata to the target metadata folder, copies relevant image files in the image folder. Negotiation of whether objects need to be updated is handled by this script.
External requirements
Potentially Interested Parties
- Landesstelle Sachsen (unsure, via @szunkel)
- Staatliche Schlösser und Gärten Hessen (EasyDB, via @ufladerer)
Misc.
Useful Links
Connection to Local Collection Management Systems
Axiell Collections
?
BeeCollect
?
EasyDB
EasyDB has a feature for automating exports and usually comes with a built-in image server. Esp. if the image server is publicly accessible, the requirements for automating imports to md (automated, scheduled export to a directory) are thus available in the app without the need for an additional connector.
Faust
?
FirstRumos
?
Hida
?
MuseumPlus
- Current Version has an API, a connection to it could be built upon that.
License
This source code is licensed under the GNU General Public License v3.