Giter Site home page Giter Site logo

synology-photos-memories's Introduction

Synology Photos Memories

This is a node JS/docker app that fills the void for synology photos lacking a memory feature similar to Google photos. The simple solution that I've found is to use the unofficial api to fetch the photos in a given timeframe, and send an email with working web links to those photos. Furthermore NodeJS serves a web page where these photos can be accessed.

Hosting on your NAS

The easiest way to use this app would be to host it on your NAS using Docker

DSM 7.2+

Important If you have not setted up quickconnect, you should (as admin) go in Control Panel -> Login Portal -> Applications and set the photo alias related to Synology Photos app.

To install with Docker using the new container manager app, use the following steps:

  1. Search for, and download the the image from the Docker registry. Select the latest tag Download the image from the docker registry
  2. Go to the image and click run
  3. Change the container name if you prefer, and click next
  4. In the Port Settings section, click Add and set the Local Port (the first textfield input) to whatever you want: it's the port you will use to access the web view of 'memories'; Then set the Container Port (the second texfield input) to 9393
  5. Add the following ENV variables

Docker config

You'll need the following environment variables to run the image:

Key Value
NAS_IP yournasip.yourquickconnectid.direct.quickconnect.to:5001
USER_ID MyID
USER_PASSWORD password123
SERVICE_NAME gmail
SEND_BY month
SEND_EMAIL [email protected]
SEND_EMAIL_PASSWORD sendpassword123
RECEIVE_EMAIL [email protected]
EMAIL_SUBJECT Your Monthly Photos
PORT Your Monthly Photos in web page ( NB )

You shouldn't need to change any other settings.

NAS_IP:

This is the url you use to connect to quickconnect. Used to build the links in each email.

Note Email send and webpage view have only been tested with quickconnect enabled, so NAS_IP should point to your quickconnect url.

USER_ID:

This is the ID you use to login to quickconnect

USER_PASSWORD:

Your password for quickconnect

SERVICE_NAME:

This the the service provider of the email you'll use for your memories to be sent from. Gmail is probably the easiest, but you may need to add an 'app password' to allow access if you have 'allow less secure apps' enabled in your settings.

You can do so at myaccount.google.com/apppasswords

Here's a list of the following services that are allowed for your send email: https://community.nodemailer.com/2-0-0-beta/setup-smtp/well-known-services/

SEND_BY:

This is how frequently you want a memory email. The options are 'day', 'week', or 'month'. For 'day', the email will be sent every morning at 8am. For 'week', the email will be sent every Monday at 8am. for 'month', it will be sent the first of every month at 8am.

SEND_EMAIL:

Your email with the same service provider you selected earlier that your memories email will be sent from.

SEND_EMAIL_PASSWORD:

The password for your send email (may require 'app password' for gmail).

RECEIVE_EMAIL:

The email address you want the memory emails delivered to. This can be any email address/service.

EMAIL_SUBJECT:

This can be anything you want.

PORT:

Important This must be the same port as the Local Port set in the Port Settings section.

This can be any port you want (not already in use). The web page is then accessible through it.


Altogether, your env settings should look something like this:

ENV settings

  1. Click done

Feel free to make a pull request or submit an issue if you see any mistakes!

synology-photos-memories's People

Contributors

loenus avatar treyg avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.