Using episoder
To use episoder you will typically:
- Add some shows to your database
- Create a cron job to update your database once a day using episoder update
- Add episoder to your ~/.bashrc, ~/.bash_profile, /etc/bash.bashrc or /etc/profile if you want to see your upcoming shows every time you start a shell. Consult your shell's documentation to find out which file to use.
- Or run episoder notify at regular intervals to get notifications by e-mail
Commands
- Add Shows
-
episoder [options] add SHOW
This adds a SHOW to episoder's database. You can either specify a URL from epguides.com or a show ID from TheTVDB.com. Note that this won't fetch any episodes or meta data about the show, to do this you will need to update your database.
- Find Shows on TheTVDB.com
-
episoder [options] search search terms
Rather than visiting their web site you can use episoder to search TheTVDB.com. This command will show you a list of all shows that match your search terms along with their IDs – you will need to know these ids to add shows to the database.
- List Shows
-
episoder [options] shows
List all shows in episoder's database. The output contains information on the show's URL or TVDB ID, name, current state, the time of the last update and the number of episodes currently in the database.
The shows command knows the following extra options:
- -a, --active
- Only include shows that are currently running or suspended in the list.
- Remove Shows
-
episoder [options] remove SHOW
This removes a SHOW from episoder's database.
Please specify the show id as shown by the shows command.
- Disable Updates
-
episoder [options] disable SHOW
By default, any show that is added to episoder's database is included when the database is updated. If however you would like to disable updates for a certain show, this is how you do it.
Please specify the show id as shown by the shows command.
- Enable Updates
-
episoder [options] enable SHOW
Use this to re-enable updates for a show that has previously been disabled.
Please specify the show id as shown by the shows command.
- Update the Database
-
episoder [options] update [update-options]
Update the episoder database. This will fetch the list of known episodes for all shows that are currently in the database (unless they have been disabled).
The update command knows the following extra options:
- -d DATE
- All episodes that are older than DATE will be removed from the database after the update. You can either specify an absolute date as YYYY-MM-DD or a relative date by passing the number of days back. The default value is 2, i.e. all episodes more than two days old will be removed.
- -f, --force
- Update the database regardless of the time of the last update. By
default episoder uses these update intervals:
- 2 days for shows that are currently running.
- 1 week for shows that are currently paused.
- 2 weeks for shows that have ended.
- -i, --nodate
- Don't remove any old episodes, regardless of their date.
- -s, --show ID
- Only update the show with this ID (as shown by the shows command), regardless of the last update time and whether or not updates are currently enabled for this show.
- -n, --num NUM
- Limit the number of shows to be updated to NUM. If you have a lot of shows in your database this option allows you to prevent load spikes, i.e. to distribute your updates more evenly by only updating a few of them at a time.
Note that the -d and -i options cannot be combined and that -f has no effect when using -s.
- List Episodes in the Database
-
episoder [options] list [list-options]
Show upcoming episodes. Before running this you should update the database to make sure that your list of episodes is up-to-date.
The list command knows the following extra options:
- -C, --nocolor
- Don't use colors in the list of episodes. By default, episodes will
be colored to indicate the air date relative to the current date:
- Episodes from the distant past are colored gray
- Yesterday's episodes are colored red
- Today's episodes are colored yellow
- Tomorrow's episodes are colored green
- Future episodes are colored cyan
- -d DATE
- Only show episodes that air prior to DATE. You can either specify an absolute date as YYYY-MM-DD or a relative date by passing the number of days back. The default is to hide all episodes that aired before yesterday.
- -n DAYS, --days DAYS
- The number of days to show. Any episodes that are more than DAYS
days in the future will be hidden. The default value is 2.
Note that this value is relative to the DATE specified with the -d option.
- -i, --nodate
- Show all episodes regardless of their date.
- -s SEARCH
- Search for SEARCH in show and episode names.
- Send Notifications
-
episoder [options] notify [notify-options]
Send e-mail notifications about recently discovered episodes. You can run this command after episoder update in order to get a friendly reminder about upcoming episodes to your INBOX.
The notify command knows the following extra options:
- -d DATE
- Only report episodes that air prior to DATE. You can either specify an absolute date as YYYY-MM-DD or a relative date by passing the number of days back.
- -n DAYS, --days DAYS
- The number of days to include. Any episodes that are more than DAYS days in the future will be ignored. The default value is 2.
- -s ID, --show ID
- Only send notifications about episodes that belong to the show with the id ID.
Note that you will need to configure your e-mail settings in the configuration file (see above for details).
Examples
Find a show on TheTVDB.com
episoder search dexter
The output will look like this:
ID Name ------- -------------------- 79349 Dexter
Add a show
episoder add 79349
List all currently added shows
episoder shows
The output will look like this:
[ 1] 79349 Dexter, Running, Enabled Last update: 1970-01-01 00:00:00 Episodes: 0
Fetch all episodes for Dexter regardless of the air date and enable debugging output:
episoder -d update -s 1 -i
List all episodes from October 2012:
episoder list -d 2012-10-01 -n 31