Plex-Meta-Manager/docs/metadata/details/schedule.md

87 lines
3.8 KiB
Markdown
Raw Normal View History

2022-03-08 08:06:22 +00:00
# Schedule Detail
The script is designed to run continuously and certain attributes can be scheduled using these attributes.
Below is an example of a scheduled library:
```yaml
libraries:
Movies:
schedule: weekly(sunday)
metadata_path:
- file: config/Movies.yml
- pmm: imdb
- pmm: studio
- pmm: genre
- pmm: actor
2022-03-08 08:06:22 +00:00
operations:
mass_critic_rating_update: tmdb
```
2022-04-26 05:34:06 +00:00
Below is an example of a scheduled Metadata File, Overlay File, and Playlist File:
```yaml
libraries:
Movies:
metadata_path:
- file: config/Movies.yml
2022-04-26 15:28:04 +00:00
schedule: weekly(monday)
- pmm: imdb
2022-04-26 15:28:04 +00:00
schedule: weekly(tuesday)
- pmm: studio
2022-04-26 15:28:04 +00:00
schedule: weekly(wednesday)
- pmm: genre
2022-04-26 15:28:04 +00:00
schedule: weekly(thursday)
- pmm: actor
2022-04-26 15:28:04 +00:00
schedule: weekly(friday)
2022-04-26 05:34:06 +00:00
overlay_path:
- pmm: imdb
2022-04-26 15:28:04 +00:00
schedule: weekly(saturday)
2022-04-26 05:34:06 +00:00
operations:
mass_critic_rating_update: tmdb
playlist_files:
- file: config/Playlists.yml
schedule: weekly(sunday)
```
2022-03-08 08:06:22 +00:00
Below is an example of a scheduled collection:
```yaml
collections:
TMDb Trending Weekly:
tmdb_trending_weekly: 30
sync_mode: sync
schedule: weekly(sunday)
TMDb Top Rated:
tmdb_top_rated: 30
sync_mode: sync
2022-05-12 14:09:08 +00:00
schedule:
- monthly(1)
- monthly(15)
2022-03-08 08:06:22 +00:00
```
Below is an example of a scheduled pinning collection:
```yaml
collections:
Christmas Movies:
imdb_list: https://www.imdb.com/list/ls000096828/
sync_mode: sync
2022-09-07 18:38:14 +00:00
visible_home: range(12/01-12/31)
2022-03-08 08:06:22 +00:00
```
The scheduling options are:
| Name | Description | Format | Example |
|:-------------|:-------------------------------------------------------------------------------------------------|:----------------------|:----------------------------------|
| Hourly | Update only when the script is run in that hour | hourly(Hour of Day) | `hourly(17)` |
| Daily | Update once a day | daily | `daily` |
| Weekly | Update once a week on the specified day | weekly(Day of Week) | `weekly(sunday)` |
| Monthly | Update once a month on the specified day | monthly(Day of Month) | `monthly(1)` |
| Yearly | Update once a year on the specified day | yearly(MM/DD) | `yearly(01/30)` |
| Range | Updates whenever the date is within the range | range(MM/DD-MM/DD) | `range(12/01-12/31)` |
| Never | Never updates | never | `never` |
| Non Existing | Updates if it doesn't exist | non_existing | `non_existing` |
| All | Requires that all comma separated scheduling options inside its brackets be meet in order to run | all[Options] | `all[weekly(sunday), hourly(17)]` |
2022-03-08 08:06:22 +00:00
* `daily` is the default when `schedule` isn't specified.
* You can run the script multiple times per day but using the `--time` command line argument detailed on the [Run Commands & Environmental Variables Page](../../home/environmental.md#time-to-run).
2022-05-12 14:09:08 +00:00
* You can have multiple scheduling options as a list.
* You can use the `delete_not_scheduled` setting to delete Collections that are skipped due to not being scheduled.