From fe47d505f6150b711a6e7913656ef9592663fb73 Mon Sep 17 00:00:00 2001 From: adam Date: Thu, 6 Apr 2023 14:58:29 -0400 Subject: [PATCH] Add 'Home' --- Home.md | 48 ++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 Home.md diff --git a/Home.md b/Home.md new file mode 100644 index 0000000..e7876f4 --- /dev/null +++ b/Home.md @@ -0,0 +1,48 @@ +# Basic Usage + +1. copy sample-appsettings.json, see [[#configuration values]] +2. ttrss will need: + 1. an app password. go to preferences -> preferences tab -> personal data / authentication blade -> app passwords tab. I think theoretically you could just use your own? don't, it's bad for security. + 2. api enabled. go to preferences -> preferences tab -> preferences blade -> under the general header -> look for a checkbox called Enable Api + 3. trigger labels. go to preferences -> labels tab. Call them whatever you want, I've been using `dl plz`, `podcastify-yt plz`, `podcastify-attachment plz`. +3. you can add them manually, but I recommend you set up a filter (preferences -> filters tab as desired) to add them. +4. set up a job to run regularly. + +# what the program does, generally + +1. load configuration, log in, get a session token, all that good stuff. +2. get your **unread** feeds, and loop through them. +3. get the labels with respect to the feed. loop through each match of label (the text of it) to the action (see feedActions in [[#configuration values]]) - meaning it can do multiple things for 1 feed +4. check sponsorblock for segments. if check passed (just, not a 404), it moves forward. if not, waits this cycle out (and adds to the article note) +5. performs each action - see [[#internal commands]] for reference. +6. if successful, **removes the trigger labels**. +6. updates article note with status. +7. logs out of ttrss +8. moves files from ./tmp to the location configured. + +# configuration values + +| title | value | +| --- | --- | +| BaseUri | link to your ttrss instance' api, e.g., https://ttrss.example.com/api | +| username | the username of your rss instance | +| password | in ttrss, go to preferences, and make an app password | +| podcastTitlePrefix | in case you don't want your podcast to be named after the feed title - e.g., LRR MTG has Tap Tap Concede. or if I wanted to listen to wisecrack's podcasts, they have a lot on one channel | +| onDoneCopy | when done, move everything under ./tmp/ to onDoneCopy - practically speaking, that's 2 directories; "recent episodes" and "podcasts" | +| feedActions | array of feed actions (see next) | + +feedActions: + + +| title | value | +| --- | --- | +| triggerlabelCaption | the text of the label that will trigger this action, e.g., "please download this from youtube" | +| command | the internal name of the action to do, when triggered, e.g., dl. (see next, again) | + +internal commands: + +| title | value | +| --- | --- | +| dl | download a video using yt-dlp. will wait until it sees sponsorblock segments, or give up after 45 minutes. | +| podcastifyYT | like dl, but will rip the audio. stripping ads out of podcasts! | +| podcastifyAttachment | assumes the article has an attachment which is a direct link to an audio file. converts to mp3. |