github alangrainger/immich-public-proxy v4.1.0
4.1.0

5 hours ago

Visitor name field for uploads

The upload page now has an optional "Your name" field, so you can tell who sent each photo. #302

🚨This is enabled by default. Having an enabled default is rare for IPP, but in this case it's gated behind the uploads themselves, and I feel like it's the more useful default.

The name is stored in the filename between the prefix and the original name, followed by a comma: ipp_upload_jane-smith,IMG_0042.jpg. A file sent without a name is stored as before.

I chose a comma to separate because I anticipate the possibility of additional fields in the future, and a comma reads most naturally. E.g. ipp_upload_field1,field2,field3,IMG_0042.jpg. That separator character is sanitised out of the original filename, so if your visitors name photos like Venice, Italy.jpg, set ipp.upload.fieldSeparator to "^" (or similar) instead.

  • Search Immich for ipp_upload_jane-smith, to see everything one visitor sent, or add a workflow that filters on that prefix and tags their uploads. See Find each visitor's uploads.
  • The notification payload gains an uploader field with the same slug, or "" when no name was given.
  • The visitor's browser remembers the name for the next share on the same install.
  • Controlled by ipp.upload.askName, default true.

Bulk-tag script

The upload image includes a script which lets you bulk-add tags to the uploaded files, taken from that filename data, e.g. Uploaded/jane-smith. It needs an Immich API key, passed to the script and never stored. The upload service itself still holds no API key. It does a dry run unless you add --apply.

See Bulk-tag uploads by visitor name.

docker exec -e IMMICH_API_KEY=your-api-key ipp-upload node dist/tag-uploads.js
docker exec -e IMMICH_API_KEY=your-api-key ipp-upload node dist/tag-uploads.js --apply

Other changes

  • #307 New ipp.shareCacheTime option (default 120 seconds) controls how long IPP caches a share's asset list before asking Immich again. A shorter time makes new photos and visitor uploads appear sooner, at the cost of more Immich API calls. See shareCacheTime.
  • #307 After an upload, the "Back to gallery" link fetches a fresh copy of the gallery page, so the visitor who uploaded doesn't wait out the browser cache.
  • #307 New ipp.upload.notice option for a customisable notice on the upload page. The default tells visitors their photos may not appear straight away. Set it to "" to hide it. See notice.
  • The upload service's /healthcheck now answers upload-ok instead of ok, so you can tell which container a route reached. IPP still accepts ok from a 4.0.0 upload container, so the two images can be updated in either order.
  • Docs: Traefik examples for the upload service, thanks @myanesp #303.
  • Docs: the config reference pages are checked against config.json on every docs build, so documented defaults can't drift from the code.

Don't miss a new immich-public-proxy release

NewReleases is sending notifications on new releases.