3
Home
adam edited this page 2023-04-06 15:16:22 -04:00
Basic Usage
- copy sample-appsettings.json, see configuration values
- ttrss will need:
- 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.
- api enabled. go to preferences -> preferences tab -> preferences blade -> under the general header -> look for a checkbox called Enable Api
- trigger labels. go to preferences -> labels tab. Call them whatever you want, I've been using
dl plz
,podcastify-yt plz
,podcastify-attachment plz
.
- you can add them manually, but I recommend you set up a filter (preferences -> filters tab as desired) to add them. see filters for some that helped me out.
- set up a job to run regularly.
what the program does, generally
- load configuration, log in, get a session token, all that good stuff.
- get your unread feeds, and loop through them.
- 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
- 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)
- performs each action - see internal commands for reference.
- if successful, removes the trigger labels.
- updates article note with status.
- logs out of ttrss
- 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. |