These schedules do not trigger PMM to run; they control what PMM will do if it happens to be running at the scheduled time. `weekly(sunday)`, for example, does not mean "run PMM on Sunday to do this thing"; it means "If PMM is running, and it's Sunday, do this thing".
| Hourly | Update only when the script is run in that hour or hour range | hourly(Hour of Day)<br>hourly(Start Hour-End Hour) | `hourly(17)`<br>`hourly(17-04)` |
| Daily | Update once a day | daily | `daily` |
| Weekly | Update once a week on the specified days (For multiple days, use a bar-separated (<code>|</code>) list) | weekly(Days of Week) | `weekly(sunday)`<br><code>weekly(sunday|tuesday)</code> |
| 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 (For multiple ranges, use a bar-separated (<code>|</code>) list) | range(MM/DD-MM/DD) | `range(12/01-12/31)`<br><code>range(8/01-8/15|9/01-9/15)</code> |
| 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)]` |
* You can run the script multiple times per day but using the `--time` command line argument detailed on the [Run Commands & Environmental Variables Page](../../pmm/essentials/environmental.md#time-to-run).
Below is an example of a library which has been scheduled to run every Sunday. This will schedule everything within the library (in this case Collection Files and Operations) for the same day.
Collection Files, Playlist Files, and Overlay Files can all be individually scheduled, as seen below where different files are scheduled to run on each day of the week:
Below is an example of a collection which has been scheduled to run on a Sunday. In this scenario, if you run PMM on a Monday, this collection will be skipped but any other collections which do not have a scheduled defined will be run.
You can also schedule items to be "pinned" to your home screen on a schedule. For example, this collection will be pinned to your home screen for the month of December and on January 1st will no longer be pinned (you must run PMM on 1st January for the removal of the pin to happen)
Whilst it isn't possible to schedule individual Operations, you can create additional placeholder library names and point them to the original library using `library_name`. This can be used to achieve individually scheduled operations, as seen below: