From 2acb220f3e46aefab175226cbdaa60ea859ef878 Mon Sep 17 00:00:00 2001 From: jonny Date: Tue, 16 Mar 2021 22:06:28 +0000 Subject: [PATCH] GitBook: [nightly] 11 pages modified --- .github/ISSUE_TEMPLATE/bug_report.md | 49 -- .github/ISSUE_TEMPLATE/feature_request.md | 20 - .github/pull_request_template.md | 20 - API.md | 3 - README.md | 191 ++--- SUMMARY.md | 6 + CHANGELOG.md => changelog.md | 860 +++++++++------------- CONTRIBUTING.md => contributing.md | 28 +- init-scripts/init.systemd | 64 -- 9 files changed, 434 insertions(+), 807 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md delete mode 100644 .github/pull_request_template.md delete mode 100644 API.md create mode 100644 SUMMARY.md rename CHANGELOG.md => changelog.md (81%) rename CONTRIBUTING.md => contributing.md (82%) delete mode 100644 init-scripts/init.systemd diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 877e934c..00000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -name: Bug Report -about: Please do not use bug reports for support issues. -title: '' -labels: 'status:awaiting-triage, type:bug' -assignees: '' - ---- - - - -**Describe the Bug** -A clear and concise description of what the bug is. - -**Steps to Reproduce** -1. Go to '...' -2. Click on '...' -3. Scroll down to '...' -4. See error - -**Expected Behavior** -A clear and concise description of what you expected to happen. - -**Screenshots** -Provide screenshots to help explain your problem. - -**Relevant Settings** -- eg. Plex Media Server IP address/port/checkboxes/proxy/etc. -- eg. Notification agent configuration/triggers/conditions/text/delay/grouping/etc. -- eg. Newsletter agent configuration/checkboxes/template/etc. -- Other settings - -**Tautulli and System Info (see Tautulli settings page)** -- Version: [eg. v2.6.6] -- Git Branch: [eg. master] -- Git Commit Hash: [eg. 2cc5bf812fe05e0666aeaeb37ed550c59816fb4c] -- Platform and Version: [eg. Windows 10] -- Python Version: [e.g. 3.8.8] -- Browser and Version: [e.g. Chrome 88] - -**Link to logs (required)** -Include a link to your **FULL** logs (not just a few lines) on [Gist](http://gist.github.com). - - diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index 747aefd6..00000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,20 +0,0 @@ ---- -name: Feature Request -about: Suggest a new feature for Tautulli. -title: '' -labels: 'status:awaiting-triage, type:enhancement' -assignees: '' - ---- - -**Is your feature request related to a problem? Please describe.** -A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] - -**Describe the solution you'd like** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Additional context** -Add any other context or screenshots about the feature request here. diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md deleted file mode 100644 index ea871c55..00000000 --- a/.github/pull_request_template.md +++ /dev/null @@ -1,20 +0,0 @@ -## Description - -Please include a summary of the change and which issue is fixed. - -Fixes #(issue) - -## Type of change - -Please delete options that are not relevant. - -- [ ] Bug fix (non-breaking change which fixes an issue) -- [ ] New feature (non-breaking change which adds functionality) -- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected) - -## Checklist: - -- [ ] My code follows the style guidelines of this project -- [ ] I have performed a self-review of my own code -- [ ] I have commented my code, particularly in hard-to-understand areas -- [ ] I have added or updated the docstring for new or existing methods diff --git a/API.md b/API.md deleted file mode 100644 index 827c7c6b..00000000 --- a/API.md +++ /dev/null @@ -1,3 +0,0 @@ -# API Reference - -Tautulli API documentation has been moved to the [wiki page](https://github.com/Tautulli/Tautulli/wiki/Tautulli-API-Reference). \ No newline at end of file diff --git a/README.md b/README.md index 5c3ac59a..1990ae7e 100644 --- a/README.md +++ b/README.md @@ -1,163 +1,94 @@ # Tautulli -A python based web application for monitoring, analytics and notifications for -[Plex Media Server](https://plex.tv). +A python based web application for monitoring, analytics and notifications for [Plex Media Server](https://plex.tv). -This project is based on code from [Headphones](https://github.com/rembo10/headphones) -and [PlexWatchWeb](https://github.com/ecleese/plexWatchWeb). +This project is based on code from [Headphones](https://github.com/rembo10/headphones) and [PlexWatchWeb](https://github.com/ecleese/plexWatchWeb). ## Features -- Responsive web design viewable on desktop, tablet and mobile web browsers. -- Themed to complement Plex/Web. -- Easy configuration setup (no separate web server required). -- Monitor current Plex Media Server activity. -- Fully customizable notifications for stream activity and recently added media. -- Top statistics on home page with configurable duration and measurement metric. -- Global watching history with search/filtering & dynamic column sorting. -- Full user list with general information and comparison stats. -- Individual user information including devices IP addresses. -- Complete library statistics and media file information. -- Rich analytics presented using Highcharts graphing. -- Beautiful content information pages. -- Full sync list data on all users syncing items from your library. -- And many more!! +* Responsive web design viewable on desktop, tablet and mobile web browsers. +* Themed to complement Plex/Web. +* Easy configuration setup \(no separate web server required\). +* Monitor current Plex Media Server activity. +* Fully customizable notifications for stream activity and recently added media. +* Top statistics on home page with configurable duration and measurement metric. +* Global watching history with search/filtering & dynamic column sorting. +* Full user list with general information and comparison stats. +* Individual user information including devices IP addresses. +* Complete library statistics and media file information. +* Rich analytics presented using Highcharts graphing. +* Beautiful content information pages. +* Full sync list data on all users syncing items from your library. +* And many more!! ## Preview -[Full preview gallery available on our website][Tautulli] +[Full preview gallery available on our website](http://tautulli.com) ![Tautulli Homepage](https://tautulli.com/images/screenshots/activity-compressed.jpg?v=2) ## Installation -[![Python][badge-python]][Python] -[![Docker Pulls][badge-docker-pulls]][DockerHub] -[![Docker Stars][badge-docker-stars]][DockerHub] -[![Downloads][badge-downloads]][Releases Latest] +[![](https://img.shields.io/badge/python->=3.6-blue?style=flat-square)](https://python.org/downloads) [![](https://img.shields.io/docker/pulls/tautulli/tautulli?style=flat-square)](https://hub.docker.com/r/tautulli/tautulli) [![](https://img.shields.io/docker/stars/tautulli/tautulli?style=flat-square)](https://hub.docker.com/r/tautulli/tautulli) [![ Status \| Branch: \`master\` \| Branch: \`beta\` \| Branch: \`nightly\` ](https://img.shields.io/github/downloads/Tautulli/Tautulli/total?style=flat-square)](https://github.com/Tautulli/Tautulli/releases/latest) -[badge-python]: https://img.shields.io/badge/python->=3.6-blue?style=flat-square -[badge-docker-pulls]: https://img.shields.io/docker/pulls/tautulli/tautulli?style=flat-square -[badge-docker-stars]: https://img.shields.io/docker/stars/tautulli/tautulli?style=flat-square -[badge-downloads]: https://img.shields.io/github/downloads/Tautulli/Tautulli/total?style=flat-square +\| --- \| --- \| --- \| --- \| \| Release \| [![](https://img.shields.io/github/v/release/Tautulli/Tautulli?style=flat-square)](https://github.com/Tautulli/Tautulli/releases/latest) + [![](https://img.shields.io/github/release-date/Tautulli/Tautulli?style=flat-square&color=blue)](https://github.com/Tautulli/Tautulli/releases/latest) \| [![](https://img.shields.io/github/v/release/Tautulli/Tautulli?include_prereleases&style=flat-square)](https://github.com/Tautulli/Tautulli/releases) + [![](https://img.shields.io/github/commits-since/Tautulli/Tautulli/latest/beta?style=flat-square&color=blue)](https://github.com/Tautulli/Tautulli/commits/beta) \| [![](https://img.shields.io/github/last-commit/Tautulli/Tautulli/nightly?style=flat-square&color=blue)](https://github.com/Tautulli/Tautulli/commits/nightly) + [![](https://img.shields.io/github/commits-since/Tautulli/Tautulli/latest/nightly?style=flat-square&color=blue)](https://github.com/Tautulli/Tautulli/commits/nightly) \| \| Docker \| [![](https://img.shields.io/badge/docker-latest-blue?style=flat-square)](https://hub.docker.com/r/tautulli/tautulli) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Docker/master?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Docker"+branch%3Amaster) \| [![](https://img.shields.io/badge/docker-beta-blue?style=flat-square)](https://hub.docker.com/r/tautulli/tautulli) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Docker/beta?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Docker"+branch%3Abeta) \| [![](https://img.shields.io/badge/docker-nightly-blue?style=flat-square)](https://hub.docker.com/r/tautulli/tautulli) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Docker/nightly?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Docker"+branch%3Anightly) \| \| Snap \| [![](https://img.shields.io/badge/snap-stable-blue?style=flat-square)](https://snapcraft.io/tautulli) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Snap/master?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Snap"+branch%3Amaster) \| [![](https://img.shields.io/badge/snap-beta-blue?style=flat-square)](https://snapcraft.io/tautulli) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Snap/beta?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Snap"+branch%3Abeta) \| [![](https://img.shields.io/badge/snap-edge-blue?style=flat-square)](https://snapcraft.io/tautulli) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Snap/nightly?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Snap"+branch%3Anightly) \| \| Installer \| [![](https://img.shields.io/github/v/release/Tautulli/Tautulli?label=windows&style=flat-square)](https://github.com/Tautulli/Tautulli/releases/latest) + [![](https://img.shields.io/github/v/release/Tautulli/Tautulli?label=macos&style=flat-square)](https://github.com/Tautulli/Tautulli/releases/latest) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Installers/master?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Installers"+branch%3Amaster) \| [![](https://img.shields.io/github/v/release/Tautulli/Tautulli?label=windows&include_prereleases&style=flat-square)](https://github.com/Tautulli/Tautulli/releases) + [![](https://img.shields.io/github/v/release/Tautulli/Tautulli?label=macos&include_prereleases&style=flat-square)](https://github.com/Tautulli/Tautulli/releases) + [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Installers/beta?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Installers"+branch%3Abeta) \| [![](https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Installers/nightly?style=flat-square)](https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Installers"+branch%3Anightly) \| -| Status | Branch: `master` | Branch: `beta` | Branch: `nightly` | -| --- | --- | --- | --- | -| Release | [![Release@master][badge-release-master]][Releases Latest]
[![Release Date@master][badge-release-master-date]][Releases Latest] | [![Release@beta][badge-release-beta]][Releases]
[![Commits@beta][badge-release-beta-commits]][Commits Beta] | [![Last Commits@nightly][badge-release-nightly-last-commit]][commits Nightly]
[![Commits@nightly][badge-release-nightly-commits]][Commits Nightly] | -| Docker | [![Docker@master][badge-docker-master]][DockerHub]
[![Docker Build@master][badge-docker-master-ci]][Publish Docker Master] | [![Docker@beta][badge-docker-beta]][DockerHub]
[![Docker Build@beta][badge-docker-beta-ci]][Publish Docker Beta] | [![Docker@nightly][badge-docker-nightly]][DockerHub]
[![Docker Build@nightly][badge-docker-nightly-ci]][Publish Docker Nightly] | -| Snap | [![Snap@master][badge-snap-master]][Snapcraft]
[![Snap Build@master][badge-snap-master-ci]][Publish Snap Master] | [![Snap@beta][badge-snap-beta]][Snapcraft]
[![Snap Build@beta][badge-snap-beta-ci]][Publish Snap Beta] | [![Snap@nightly][badge-snap-nightly]][Snapcraft]
[![Snap Build@nightly][badge-snap-nightly-ci]][Publish Snap Nightly] | -| Installer | [![Windows@master][badge-installer-master-win]][Releases Latest]
[![MacOS@master][badge-installer-master-macos]][Releases Latest]
[![Installer Build@master][badge-installer-master-ci]][Publish Installer Master] | [![Windows@beta][badge-installer-beta-win]][Releases]
[![MacOS@beta][badge-installer-beta-macos]][Releases]
[![Installer Build@beta][badge-installer-beta-ci]][Publish Installer Beta] | [![Installer Build@nightly][badge-installer-nightly-ci]][Publish Installer Nightly] | - -Read the [Installation Guides][Installation] for instructions on how to install Tautulli. - -[badge-release-master]: https://img.shields.io/github/v/release/Tautulli/Tautulli?style=flat-square -[badge-release-master-date]: https://img.shields.io/github/release-date/Tautulli/Tautulli?style=flat-square&color=blue -[badge-release-beta]: https://img.shields.io/github/v/release/Tautulli/Tautulli?include_prereleases&style=flat-square -[badge-release-beta-commits]: https://img.shields.io/github/commits-since/Tautulli/Tautulli/latest/beta?style=flat-square&color=blue -[badge-release-nightly-last-commit]: https://img.shields.io/github/last-commit/Tautulli/Tautulli/nightly?style=flat-square&color=blue -[badge-release-nightly-commits]: https://img.shields.io/github/commits-since/Tautulli/Tautulli/latest/nightly?style=flat-square&color=blue -[badge-docker-master]: https://img.shields.io/badge/docker-latest-blue?style=flat-square -[badge-docker-master-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Docker/master?style=flat-square -[badge-docker-beta]: https://img.shields.io/badge/docker-beta-blue?style=flat-square -[badge-docker-beta-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Docker/beta?style=flat-square -[badge-docker-nightly]: https://img.shields.io/badge/docker-nightly-blue?style=flat-square -[badge-docker-nightly-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Docker/nightly?style=flat-square -[badge-snap-master]: https://img.shields.io/badge/snap-stable-blue?style=flat-square -[badge-snap-master-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Snap/master?style=flat-square -[badge-snap-beta]: https://img.shields.io/badge/snap-beta-blue?style=flat-square -[badge-snap-beta-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Snap/beta?style=flat-square -[badge-snap-nightly]: https://img.shields.io/badge/snap-edge-blue?style=flat-square -[badge-snap-nightly-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Snap/nightly?style=flat-square -[badge-installer-master-win]: https://img.shields.io/github/v/release/Tautulli/Tautulli?label=windows&style=flat-square -[badge-installer-master-macos]: https://img.shields.io/github/v/release/Tautulli/Tautulli?label=macos&style=flat-square -[badge-installer-master-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Installers/master?style=flat-square -[badge-installer-beta-win]: https://img.shields.io/github/v/release/Tautulli/Tautulli?label=windows&include_prereleases&style=flat-square -[badge-installer-beta-macos]: https://img.shields.io/github/v/release/Tautulli/Tautulli?label=macos&include_prereleases&style=flat-square -[badge-installer-beta-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Installers/beta?style=flat-square -[badge-installer-nightly-ci]: https://img.shields.io/github/workflow/status/Tautulli/Tautulli/Publish%20Installers/nightly?style=flat-square +Read the [Installation Guides](https://github.com/Tautulli/Tautulli/wiki/Installation) for instructions on how to install Tautulli. ## Support -[![Wiki][badge-wiki]][Wiki] -[![Discord][badge-discord]][Discord] -[![Reddit][badge-reddit]][Reddit] -[![Plex Forums][badge-forums]][Plex Forums] -[![Issues][badge-issues]][Issues] +[![](https://img.shields.io/badge/github-wiki-black?style=flat-square)](https://github.com/Tautulli/Tautulli/wiki) [![](https://img.shields.io/discord/183396325142822912?label=discord&style=flat-square&color=7289DA)](https://tautulli.com/discord) [![](https://img.shields.io/reddit/subreddit-subscribers/tautulli?label=reddit&style=flat-square&color=FF5700)](https://reddit.com/r/Tautulli) [![](https://img.shields.io/badge/plex%20forums-discussion-E5A00D?style=flat-square)](https://forums.plex.tv/t/tautulli-monitor-your-plex-media-server/225242) [![](https://img.shields.io/badge/github-issues-black?style=flat-square)](https://github.com/Tautulli/Tautulli/issues) -[badge-wiki]: https://img.shields.io/badge/github-wiki-black?style=flat-square -[badge-discord]: https://img.shields.io/discord/183396325142822912?label=discord&style=flat-square&color=7289DA -[badge-reddit]: https://img.shields.io/reddit/subreddit-subscribers/tautulli?label=reddit&style=flat-square&color=FF5700 -[badge-forums]: https://img.shields.io/badge/plex%20forums-discussion-E5A00D?style=flat-square -[badge-issues]: https://img.shields.io/badge/github-issues-black?style=flat-square +If you think you've found a bug in Tautulli make sure you have read the [FAQ](https://github.com/Tautulli/Tautulli/wiki/Frequently-Asked-Questions) first to make sure it hasn't been covered by one of the questions there. If your problem isn't answered in the FAQ try the following first: -If you think you've found a bug in Tautulli make sure you have read the [FAQ][] -first to make sure it hasn't been covered by one of the questions there. If your -problem isn't answered in the FAQ try the following first: +* Update to the latest version of Tautulli. +* Turning your device off and on again. +* Analyzing your logs, you just might find the solution yourself! +* Using the **search** function to see if this issue has already been reported/solved. +* Checking the [Wiki](https://github.com/Tautulli/Tautulli/wiki) for [Installation](https://github.com/Tautulli/Tautulli/wiki/Installation) instructions and reading the [FAQs](https://github.com/Tautulli/Tautulli/wiki/Frequently-Asked-Questions). +* For basic questions try asking on [Discord](https://tautulli.com/discord), [Reddit](https://reddit.com/r/Tautulli), -- Update to the latest version of Tautulli. -- Turning your device off and on again. -- Analyzing your logs, you just might find the solution yourself! -- Using the **search** function to see if this issue has already been reported/solved. -- Checking the [Wiki][] for [Installation][] instructions and reading the [FAQs][FAQ]. -- For basic questions try asking on [Discord][], [Reddit][], - or the [Plex Forums][] first before opening an issue. + or the [Plex Forums](https://forums.plex.tv/t/tautulli-monitor-your-plex-media-server/225242) first before opening an issue. -##### If nothing has worked: +### If nothing has worked: -1. Please check the [issues tracker][Issues] to see if someone else has already reported the bug. -2. If this is a new bug, open a [bug report][Issue New] on the issues tracker. -3. Provide a clear title to easily help identify your problem. -4. Use proper [Markdown syntax][] to structure your post (i.e. code/log in code blocks). -5. Make sure to fill out the required information on the issue template. -6. Close your issue when it's solved! If you found the solution yourself please - comment so that others benefit from it. +1. Please check the [issues tracker](https://github.com/Tautulli/Tautulli/issues) to see if someone else has already reported the bug. +2. If this is a new bug, open a [bug report](https://github.com/Tautulli/Tautulli/issues/new/choose) on the issues tracker. +3. Provide a clear title to easily help identify your problem. +4. Use proper [Markdown syntax](https://help.github.com/articles/github-flavored-markdown) to structure your post \(i.e. code/log in code blocks\). +5. Make sure to fill out the required information on the issue template. +6. Close your issue when it's solved! If you found the solution yourself please + + comment so that others benefit from it. ## Feature Requests -1. Pleases check the [issues tracker][Issues] to see if someone else has already requested the feature. - If a similar idea has already been requested, _give it a thumbs up_. **Do not comment - with `+1` or something similar as it creates unnecessary spam.** -2. If this is a new feature request, open a [feature request][Issue New] on the issues tracker. +1. Pleases check the [issues tracker](https://github.com/Tautulli/Tautulli/issues) to see if someone else has already requested the feature. + + If a similar idea has already been requested, _give it a thumbs up_. \*\*Do not comment + + with `+1` or something similar as it creates unnecessary spam.\*\* + +2. If this is a new feature request, open a [feature request](https://github.com/Tautulli/Tautulli/issues/new/choose) on the issues tracker. ## License -[![License][badge-license]][License] +[![](https://img.shields.io/github/license/Tautulli/Tautulli?style=flat-square)](https://github.com/Tautulli/Tautulli/blob/master/LICENSE) -[badge-license]: https://img.shields.io/github/license/Tautulli/Tautulli?style=flat-square +This is free software under the GPL v3 open source license. Feel free to do with it what you wish, but any modification must be open sourced. A copy of the license is included. -This is free software under the GPL v3 open source license. Feel free to do with it what you wish, -but any modification must be open sourced. A copy of the license is included. +This software includes Highsoft software libraries which you may freely distribute for non-commercial use. Commerical users must licence this software, for more information visit [https://shop.highsoft.com/faq/non-commercial\#non-commercial-redistribution](https://shop.highsoft.com/faq/non-commercial#non-commercial-redistribution). -This software includes Highsoft software libraries which you may freely distribute for -non-commercial use. Commerical users must licence this software, for more information visit -https://shop.highsoft.com/faq/non-commercial#non-commercial-redistribution. - - -[Python]: https://python.org/downloads -[DockerHub]: https://hub.docker.com/r/tautulli/tautulli -[Releases]: https://github.com/Tautulli/Tautulli/releases -[Releases Latest]: https://github.com/Tautulli/Tautulli/releases/latest -[License]: https://github.com/Tautulli/Tautulli/blob/master/LICENSE -[FAQ]: https://github.com/Tautulli/Tautulli/wiki/Frequently-Asked-Questions -[Installation]: https://github.com/Tautulli/Tautulli/wiki/Installation -[Issues]: https://github.com/Tautulli/Tautulli/issues -[Issue New]: https://github.com/Tautulli/Tautulli/issues/new/choose -[Markdown syntax]: https://help.github.com/articles/github-flavored-markdown -[Tautulli]: http://tautulli.com -[Wiki]: https://github.com/Tautulli/Tautulli/wiki -[Discord]: https://tautulli.com/discord -[Reddit]: https://reddit.com/r/Tautulli -[Plex Forums]: https://forums.plex.tv/t/tautulli-monitor-your-plex-media-server/225242 -[Snapcraft]: https://snapcraft.io/tautulli -[Commits Beta]: https://github.com/Tautulli/Tautulli/commits/beta -[Commits Nightly]: https://github.com/Tautulli/Tautulli/commits/nightly - -[Publish Docker Master]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Docker"+branch%3Amaster -[Publish Docker Beta]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Docker"+branch%3Abeta -[Publish Docker Nightly]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Docker"+branch%3Anightly -[Publish Snap Master]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Snap"+branch%3Amaster -[Publish Snap Beta]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Snap"+branch%3Abeta -[Publish Snap Nightly]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Snap"+branch%3Anightly -[Publish Installer Master]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Installers"+branch%3Amaster -[Publish Installer Beta]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Installers"+branch%3Abeta -[Publish Installer Nightly]: https://github.com/Tautulli/Tautulli/actions?query=workflow%3A"Publish+Installers"+branch%3Anightly diff --git a/SUMMARY.md b/SUMMARY.md new file mode 100644 index 00000000..83950dad --- /dev/null +++ b/SUMMARY.md @@ -0,0 +1,6 @@ +# Table of contents + +* [Tautulli](README.md) +* [Changelog](changelog.md) +* [Contributing to Tautulli](contributing.md) + diff --git a/CHANGELOG.md b/changelog.md similarity index 81% rename from CHANGELOG.md rename to changelog.md index dbf78398..f6831291 100644 --- a/CHANGELOG.md +++ b/changelog.md @@ -1,18 +1,17 @@ # Changelog -## v2.6.8 (2021-03-08) +## v2.6.8 \(2021-03-08\) * Mobile App: * New: An all new Tautulli Remote App 2.0. Go to the Google Play link in the settings to download the new version. * Fix: Registering the new app would fail if OneSignal is blocked. - -## v2.6.7 (2021-03-07) +## v2.6.7 \(2021-03-07\) * History: - * New: Added audio language to detailed stream info. (Thanks @herby2212) + * New: Added audio language to detailed stream info. \(Thanks @herby2212\) * Notifications: - * New: Added season_name notification parameter. + * New: Added season\_name notification parameter. * New: Update notifications to support custom season titles. * Newsletters: * New: Update recently added newsletter template to support custom season titles. @@ -22,16 +21,15 @@ * New: Added TVDB rating image to info page for the new Plex TV agent. * New: Update the UI to support custom season titles. * API: - * Fix: Return rating key for collections/playlists in get_synced_items. - * Fix: Return error when delete_synced_item fails. - * New: Return sync_media_type for collections/playlist in get_synced_items. - * New: Update pms_image_proxy to support playlist composite images. + * Fix: Return rating key for collections/playlists in get\_synced\_items. + * Fix: Return error when delete\_synced\_item fails. + * New: Return sync\_media\_type for collections/playlist in get\_synced\_items. + * New: Update pms\_image\_proxy to support playlist composite images. * Other: * Remove: Auto-updater for the Windows exe installer. * New: Updated PlexAPI to 4.4.0. - -## v2.6.6 (2021-02-06) +## v2.6.6 \(2021-02-06\) * Exporter: * Fix: Exporting failed with long file paths on Windows. @@ -41,13 +39,12 @@ * Fix: Client side login redirect changed to server side. * Change: Renamed "Fix Metadata" button to "Fix Match". * API: - * New: Added get_children_metadata API command. - * New: Return more metadata from the get_home_stats API command. + * New: Added get\_children\_metadata API command. + * New: Return more metadata from the get\_home\_stats API command. * Other: * New: Updated PlexAPI to 4.3.1. - -## v2.6.5 (2021-01-09) +## v2.6.5 \(2021-01-09\) * Other: * Fix: Some IP addresses not being masked in the logs. @@ -55,14 +52,12 @@ * Change: Allow Snap package to access the user home directory. * Change: Migrate Snap user data to a persistent location that is retained if Tautulli is reinstalled. - -## v2.6.4 (2020-12-20) +## v2.6.4 \(2020-12-20\) * Other: * Fix: Restore Snap data folder from previous installs. - -## v2.6.3 (2020-12-19) +## v2.6.3 \(2020-12-19\) * Announcements: * This is the last Tautulli version to support Python 2. Python 3 will be required to continue receiving updates. You can check your Python version on the settings page. @@ -74,8 +69,7 @@ * Fix: macOS menu bar icon for light and dark mode. * New: Tautulli can officially be installed on Linux using a Snap package. See the installation wiki for details. - -## v2.6.2 (2020-12-05) +## v2.6.2 \(2020-12-05\) * Notifications: * Change: Send a notification of a user new device for the first time only. This can be toggled off in the settings. @@ -88,51 +82,48 @@ * New: Added rate limiting for failed login attempts. * Change: Use a white logo for the macOS system tray icon. * API: - * New: Added machine_id to the get_history API response. + * New: Added machine\_id to the get\_history API response. - -## v2.6.1 (2020-11-03) +## v2.6.1 \(2020-11-03\) * Other: * Fix: High CPU/memory usage in some instances. * Fix: Logger error preventing Tautulli from starting. * Fix: Database issue with non-unique image hashes. - -## v2.6.0 (2020-10-31) +## v2.6.0 \(2020-10-31\) * Exporter: * New: New exporter feature that allows you to export the metadata and images for any library, collection, playlist, or media item to csv, json, xml, or m3u8. Refer to the Exporter Guide in the wiki for more details. * UI: - * Fix: Margin on the homepage activity and statistic/library cards. (Thanks @dotsam) + * Fix: Margin on the homepage activity and statistic/library cards. \(Thanks @dotsam\) * Fix: Movie ratings not showing on the info page for the new Plex Movie agent. * New: Added ability to browse collections and playlists from the library and user pages. * Change: Updated platform brand logos and colours. * API: - * New: Added export_metadata, download_export, and delete_export API commands. - * New: Added get_collections_table, and get_playlists_table API commands. - * New: Added min_version parameter to the register_device API command. - * New: Added include_activity parameter to the get_history API command. - * New: Added sync_id parameter to the get_metadata API command. - * New: Added delete_synced_item API command. - * New: Added a stat_id and stats_start parameters to the get_home_stats API command. - * New: Allow deleting a mobile device using the registration device_id for the delete_mobile_device API command. - * Change: Return Plex server info and Tautulli info from the register_device command. + * New: Added export\_metadata, download\_export, and delete\_export API commands. + * New: Added get\_collections\_table, and get\_playlists\_table API commands. + * New: Added min\_version parameter to the register\_device API command. + * New: Added include\_activity parameter to the get\_history API command. + * New: Added sync\_id parameter to the get\_metadata API command. + * New: Added delete\_synced\_item API command. + * New: Added a stat\_id and stats\_start parameters to the get\_home\_stats API command. + * New: Allow deleting a mobile device using the registration device\_id for the delete\_mobile\_device API command. + * Change: Return Plex server info and Tautulli info from the register\_device command. * Other: * New: The Docker container is now also built for the arm32v6 architecture. * New: The Docker container is also published to the GitHub Container Registry at ghcr.io/tautulli/tautulli. * Change: Tautulli is now using a forked version of plexapi 3.6.0. This is to support the exporter feature while still maintaining Python 2 compatibility. - * Change: Updated systemd script to remove process forking. (Thanks @MichaIng) + * Change: Updated systemd script to remove process forking. \(Thanks @MichaIng\) * Change: Cache GitHub update check on startup. - -## v2.5.6 (2020-10-02) +## v2.5.6 \(2020-10-02\) * Activity: * Change: Renamed container "Transcode" to "Converting" on activity cards. * Notifications: - * New: Added a silent notification option for Telegram. (Thanks @JohnnyKing94) - * New: Added container_decision notification parameter. + * New: Added a silent notification option for Telegram. \(Thanks @JohnnyKing94\) + * New: Added container\_decision notification parameter. * New: Added notification trigger for Playback Error. * New: Added remote access down notification threshold setting. * Newsletter: @@ -148,8 +139,7 @@ * New: Schedule some more automatic database optimizations. * Change: Added automatic uninstall before installing to the Windows installer. - -## v2.5.5 (2020-09-06) +## v2.5.5 \(2020-09-06\) * Activity: * Fix: Filter out TV show background theme music sessions. @@ -158,29 +148,28 @@ * UI: * Fix: Incorrect sorting for user/library recently played items. * API: - * Fix: get_synced_items API command returning error with empty result. + * Fix: get\_synced\_items API command returning error with empty result. * Fix: Download API commands not returning the file. - * Fix: get_logs API command encoding error. - * Fix: get_user_player_stats API command returning error instead of empty result. - * New: Added get_server_info API command. - * New: Added external guids to get_metadata API command. + * Fix: get\_logs API command encoding error. + * Fix: get\_user\_player\_stats API command returning error instead of empty result. + * New: Added get\_server\_info API command. + * New: Added external guids to get\_metadata API command. * New: Added support for multi-column sorting for datatable API commands. - * Change: get_activity API command return thumbnail override for clips. - * Change: get_libraries_table API command return custom library artwork. + * Change: get\_activity API command return thumbnail override for clips. + * Change: get\_libraries\_table API command return custom library artwork. * Other: * Fix: Tautulli failed to run with a stale pid file. * New: Added scheduled task to optimize the Tautulli database. * Change: Update plexapi to 3.6.0. * Change: Update some libraries for Python 3 compatibility. - -## v2.5.4 (2020-07-31) +## v2.5.4 \(2020-07-31\) * Monitoring: - * Change: Montitoring remote access changed to use websockets. Refer to Tautulli/Tautulli-Issues#251 for details. + * Change: Montitoring remote access changed to use websockets. Refer to Tautulli/Tautulli-Issues\#251 for details. * Notifications: * Fix: Uploading images to Cloudinary failed for titles with non-ASCII characters on Python 2. - * New: Added plex_id notification parameter. + * New: Added plex\_id notification parameter. * Remove: Running .exe files directly using script notifications is no longer supported. * Remove: php, perl, and ruby prefix overrides for script notifications is no longer supported. * Change: Stricter checking of file extensions for script notifications. @@ -189,14 +178,13 @@ * UI: * New: Added ability to import a previous Tautullli configuration file in the settings. * New: Added a browse button for settings which require a folder or file input. - * New: Added first streamed column to user IP addresses table. (Thanks @dotsam) + * New: Added first streamed column to user IP addresses table. \(Thanks @dotsam\) * New: Added The Movie Database rating image to media page. * Change: Different icon to represent direct stream in the history tables. * API: * New: Updated API docs for importing a database and configuration file. - -## v2.5.3 (2020-07-10) +## v2.5.3 \(2020-07-10\) * History: * Fix: Unable to delete more than 1000 history entries at the same time. @@ -208,11 +196,10 @@ * Fix: Tautulli failing to start after enabling HTTPS when installed using the Windows / macOS installers. * Fix: Startup script not working on macOS. * Fix: Unable to hide dock icon on macOS with the pkg install. Refer to the FAQ regarding the Python rocket dock icon. - * Change: Added path to Python interpreter in system startup (daemon) scripts. + * Change: Added path to Python interpreter in system startup \(daemon\) scripts. * Change: Added Python version to Google analytics. - -## v2.5.2 (2020-07-01) +## v2.5.2 \(2020-07-01\) * Announcements: * Tautulli now supports Python 3! @@ -239,8 +226,7 @@ * Fix: Tautulli login session cookie not set on the HTTP root path. * New: Windows and MacOS app installers to install Tautulli without needing Python installed. - -## v2.2.4 (2020-05-16) +## v2.2.4 \(2020-05-16\) * Monitoring: * Fix: Show "None" as the subtitle source on the activity card for user selected subtitles. @@ -248,25 +234,24 @@ * Fix: Deleted libraries were showing up on the homepage library cards. * Fix: Libraries could get stuck as inactive in the database in some instances. * API: - * Fix: Incorrect title was being returned for the get_history API command. + * Fix: Incorrect title was being returned for the get\_history API command. * Other: * Fix: Plex remote access check was not being rescheduled after changing the settings. - -## v2.2.3 (2020-05-01) +## v2.2.3 \(2020-05-01\) * Notifications: * Fix: Notification grouping by season/album and show/artist not enabled by default. * Fix: The rating key notification parameter was being overwritten when 3rd party lookup was enabled. * Fix: Missing artist value for Musicbrainz lookup in certain situations. * New: Added notification trigger for Tautulli database corruption. - * New: Added TAUTULLI_PYTHON_VERSION to script notification environment variables. + * New: Added TAUTULLI\_PYTHON\_VERSION to script notification environment variables. * New: Added Plex Android / iOS App notification agent. * New: Added bandwidth notification parameters. * New: Added user thumb to notification parameters. * New: Added initial stream notification parameter and threshold setting to determine if a stream is the first stream of a continuous streaming session. * New: Added Plex remote access notification parameters. - * Change: The file size notification parameter is now reported in SI units. (Thanks @aaronldunlap) + * Change: The file size notification parameter is now reported in SI units. \(Thanks @aaronldunlap\) * UI: * Fix: Delete lookup info from the media info page failing. * Fix: XBMC platform icon not being redirected to the Kodi platform icon. @@ -279,10 +264,10 @@ * API: * Fix: Returning XML from the API failing due to unicode characters. * Fix: Grouping parameter for various API commands not falling back to default setting. - * New: Added time_queries parameter to get_library_watch_time_stats and get_user_watch_time_stats API command. (Thanks @KaasKop97) - * New: Added an "is_active" return value to the get_user, get_users, get_library, and get_libraries API commands which indicates if the user or library is on the Plex server. - * New: Added delete_history API command. - * Change: Added optional parameter for row_ids for delete_library, delete_user, delete_all_library_history, and delete_all_user_history API commands. + * New: Added time\_queries parameter to get\_library\_watch\_time\_stats and get\_user\_watch\_time\_stats API command. \(Thanks @KaasKop97\) + * New: Added an "is\_active" return value to the get\_user, get\_users, get\_library, and get\_libraries API commands which indicates if the user or library is on the Plex server. + * New: Added delete\_history API command. + * Change: Added optional parameter for row\_ids for delete\_library, delete\_user, delete\_all\_library\_history, and delete\_all\_user\_history API commands. * Other: * Fix: Update failing on CentOS due to an older git version. * Fix: Manifest file for creating a web app had incorrect info. @@ -291,14 +276,13 @@ * Change: Remove the unnecessary optional Plex logs volume from the Docker image. * Change: Use Plex.tv for GeoIP lookup instead of requiring the MaxMind GeoLite2 database. - -## v2.2.1 (2020-03-28) +## v2.2.1 \(2020-03-28\) * Notifications: * Fix: File size notification parameter incorrectly truncated to an integer. * Fix: Notification grouping by season/album not enabled by default. * New: Added transcode decision counts to notification parameters. - * Change: Tags (<>) are no longer stripped from from Webhook notification text. + * Change: Tags \(<>\) are no longer stripped from from Webhook notification text. * Newsletter: * New: Added favicon to newsletter template when viewing as a web page. * UI: @@ -309,16 +293,15 @@ * New: Added button in settings to delete all 3rd party metadata lookup info in the database. * New: Added button in settings to flush recently added items in the database. * API: - * New: Added delete_recenly_added API command to flush recently added items. - * Change: Updated delete_lookup_info API command parameters to allow deleteing all 3rd party metadata lookup info. + * New: Added delete\_recenly\_added API command to flush recently added items. + * Change: Updated delete\_lookup\_info API command parameters to allow deleteing all 3rd party metadata lookup info. - -## v2.2.0 (2020-03-08) +## v2.2.0 \(2020-03-08\) * Important Note! * All Live TV changes requires Plex Media Server 1.18.7 or higher. * Monitoring: - * Fix: Improved IPv6 display on the activity cards. (Thanks @felixbuenemann) + * Fix: Improved IPv6 display on the activity cards. \(Thanks @felixbuenemann\) * New: Added Live TV metadata and posters to the activity cards. * Change: Show bandwidth in Gbps when greater than 1000 Mbps. * History: @@ -341,16 +324,15 @@ * New: Added option to change the background art for library sections when editing a library. * New: Added button to reset Tautulli git installation in settings to fix failed git updates. * API: - * New: Added ability to filter history using a "live" media type and by guid for the get_history API command. - * New: Added cutsom_art parameter to the edit_library API command. + * New: Added ability to filter history using a "live" media type and by guid for the get\_history API command. + * New: Added cutsom\_art parameter to the edit\_library API command. * Other: - * Change: Add crossorigin use-credentials attribute to manifest tags. (Thanks @pkoenig10) + * Change: Add crossorigin use-credentials attribute to manifest tags. \(Thanks @pkoenig10\) * Change: Disable automatic updates for Docker containers. Updates are now handled by updating the Docker container. * Note: If you are using an old Docker container created before v2.2.0, then you may need to completely remove and recreate the container to update for the first time. * Note: Use the ":latest" Docker tag for the newest stable release, or the ":beta" or ":nightly" tags to access the beta or nightly branches. - -## v2.1.44 (2020-02-05) +## v2.1.44 \(2020-02-05\) * Monitoring: * Fix: SDR source video being identified as HDR stream video. @@ -359,8 +341,7 @@ * UI: * Fix: Capitalization for platforms on history tables. - -## v2.1.43 (2020-02-03) +## v2.1.43 \(2020-02-03\) * Monitoring: * New: Added HDR indicator on activity card. @@ -378,22 +359,19 @@ * Change: Mask email addresses in logs. * Change: Update deprecated GitHub access token URL parameter to Authorization header. - -## v2.1.42 (2020-01-04) +## v2.1.42 \(2020-01-04\) * Other: * Fix: SSL certificate error when installing GeoLite2 database. * Change: Verify MaxMind license key and GeoLite2 database path before installing. * Change: Disable GeoLite2 database uninstall button when it is not installed. - -## v2.1.41 (2019-12-30) +## v2.1.41 \(2019-12-30\) * Other: * Fix: Failing to extract the GeoLite2 database on Windows. - -## v2.1.40 (2019-12-30) +## v2.1.40 \(2019-12-30\) * UI: * Change: Moved 3rd Party API settings to new tab in the settings. @@ -404,8 +382,7 @@ * Change: A license key is now required to install the MaxMind GeoLite2 database for IP geolocation. Please follow the guide in the wiki to reinstall the GeoLite2 database. * Change: The GeoLite2 database will now automatically update periodically if installed. - -## v2.1.39 (2019-12-08) +## v2.1.39 \(2019-12-08\) * UI: * New: Added creating admin username and password to setup wizard. @@ -414,8 +391,7 @@ * Other: * Change: Check for database corruption when making backup. - -## v2.1.38 (2019-11-17) +## v2.1.38 \(2019-11-17\) * Notifications: * New: Added custom JSON headers to the webhook notification agent. @@ -425,8 +401,7 @@ * New: Added GitHub sponsor donation option. * Change: Improve resolving hostnames. - -## v2.1.37 (2019-10-11) +## v2.1.37 \(2019-10-11\) * Notifications: * Fix: Last.fm URLs linking to artist page instead of the album page. @@ -434,8 +409,7 @@ * New: Added MusicBrainz ID and MusicBrainz URL notification parameters. * Change: Automatically truncate Discord description summary to 2048 characters. - -## v2.1.36-beta (2019-10-05) +## v2.1.36-beta \(2019-10-05\) * Monitoring: * Fix: Activity card title not updating after pre-rolls or auto-play. @@ -444,10 +418,9 @@ * Graphs: * New: Separate interlaced and progressive video scan type on source and stream resolution graphs. * API: - * New: Added parent_guid and grandparent_guid to get_activity and get_metadata commands. + * New: Added parent\_guid and grandparent\_guid to get\_activity and get\_metadata commands. - -## v2.1.35-beta (2019-09-24) +## v2.1.35-beta \(2019-09-24\) * Monitoring: * Fix: Audio shown as blank on activity cards when changing audio tracks during direct play. @@ -460,12 +433,11 @@ * UI: * Fix: Movies with the same title but different year being grouped on the homepage stats cards. * API: - * New: Added video scan type and full resolution values to get_activity command. + * New: Added video scan type and full resolution values to get\_activity command. * Other: * Fix: Tautulli logging out every time after saving settings and restarting. - -## v2.1.34 (2019-09-03) +## v2.1.34 \(2019-09-03\) * History: * New: Added Product column to history tables. @@ -474,15 +446,14 @@ * UI: * Fix: Libraries and Users tables did not respect the group history setting. * API: - * Fix: Title field was not searchable in get_library_media_info command. - * New: Added grouping option to get_libraries_table and get_users_table commands. - * New: Added product value to get_history command. + * Fix: Title field was not searchable in get\_library\_media\_info command. + * New: Added grouping option to get\_libraries\_table and get\_users\_table commands. + * New: Added product value to get\_history command. * Other: * Fix: Could not verify Plex Media Server with unpublished hostnames. * Change: Automatically logout all Tautulli instances when changing the admin password. - -## v2.1.33 (2019-07-27) +## v2.1.33 \(2019-07-27\) * Notifications: * Change: Mask notification agent password fields. @@ -491,19 +462,16 @@ * Fix: Version number being overwritten with "None" which prevented updating in some instances. * Change: Update Plex OAuth request headers. - -## v2.1.32 (2019-06-26) +## v2.1.32 \(2019-06-26\) * Newsletters: * Fix: Newsletter scheduler issue for QNAP devices using an invalid "local" timezone preventing Tautulli from starting. - -## v2.1.31 (2019-06-24) +## v2.1.31 \(2019-06-24\) * No additional changes from v2.1.31-beta. - -## v2.1.31-beta (2019-06-13) +## v2.1.31-beta \(2019-06-13\) * Monitoring: * Fix: Synced content showing incorrect stream info. @@ -511,26 +479,23 @@ * Fix: Unable to view database status when authentication is enabled. * Change: Default database synchronous mode changed to prevent database corruption. Database response may be slower. - -## v2.1.30-beta (2019-05-11) +## v2.1.30-beta \(2019-05-11\) * Monitoring: * Fix: Activity crashing with Plex's Artist TV feature. - * New: Added setting for Plex Media Server Update Check Interval. (Thanks @abiacco) + * New: Added setting for Plex Media Server Update Check Interval. \(Thanks @abiacco\) * Notifications: * New: Added secure and relayed connection notification parameters. - * New: Added PLEX_USER_TOKEN to script environment variables. + * New: Added PLEX\_USER\_TOKEN to script environment variables. * Change: Schedule notifications using UTC to prevent missing notifications due to misconfigured timezones. * API: * New: Added status API command to check the status of Tautulli. - -## v2.1.29 (2019-05-11) +## v2.1.29 \(2019-05-11\) * No additional changes from v2.1.29-beta. - -## v2.1.29-beta (2019-04-14) +## v2.1.29-beta \(2019-04-14\) * Monitoring: * Change: "Required Bandwidth" changed to "Reserved Bandwidth" in order to match the Plex dashboard. @@ -541,19 +506,17 @@ * Fix: User IP address history table showing incorrect "Last Seen" values. * API: * Fix: Search API only returning 3 results. - * Fix: Terminate stream API failing when both session_key and session_id were provided. + * Fix: Terminate stream API failing when both session\_key and session\_id were provided. * Change: Improved API response HTTP status codes and error messages. - -## v2.1.28 (2019-03-10) +## v2.1.28 \(2019-03-10\) * Monitoring: * New: Added secure/insecure connection icon on the activity cards. Requires Plex Media Server v1.15+. * Other: * Change: Improved mass deleting of all images from Cloudinary. Requires all previous images on Cloudinary to be manually tagged with "tautulli". New uploads are automatically tagged. - -## v2.1.27-beta (2019-03-03) +## v2.1.27-beta \(2019-03-03\) * Monitoring: * Fix: Error when playing synced optimized versions. @@ -567,15 +530,14 @@ * Fix: Usernames were not being sanitized in dropdown selectors. * Change: Different display of "All" recently added items on the homepage due to change in the Plex Media Server v1.15+ API. * API: - * New: Added current Tautulli version to update_check API response. + * New: Added current Tautulli version to update\_check API response. * Change: API no longer returns sanitized HTML response data. * Other: * New: Added auto-restart to systemd init script. * Fix: Patreon donation URL. * Remove: Crypto donation options. - -## v2.1.26 (2018-12-01) +## v2.1.26 \(2018-12-01\) * Monitoring: * Fix: Resume event not being triggered after buffering. @@ -586,17 +548,15 @@ * API: * Fix: API returning error when missing a cmd. - -## v2.1.25 (2018-11-03) +## v2.1.25 \(2018-11-03\) * Monitoring: - * Fix: Audio and video codec showing up as * on the activity cards. + * Fix: Audio and video codec showing up as \* on the activity cards. * New: Poster and background image on the activity cards for live TV. * UI: * Fix: Alert message for invalid Tautulli Public Domain setting. - -## v2.1.24-beta (2018-10-29) +## v2.1.24-beta \(2018-10-29\) * Monitoring: * Fix: Transcode change events creating invalid sessions in the database. @@ -612,12 +572,11 @@ * Other: * Change: Updated timezone info and display in configuration table. - -## v2.1.23-beta (2018-10-14) +## v2.1.23-beta \(2018-10-14\) * Monitoring: * Fix: Buffer events not being triggered properly. - * Fix: Watched progress sometimes not saved correctly. (Thanks @Sheigutn) + * Fix: Watched progress sometimes not saved correctly. \(Thanks @Sheigutn\) * Notifications: * New: Added notification trigger for transcode decision change. * Fix: Multiple buffer notifications being triggered within the same second. @@ -637,12 +596,11 @@ * New: Show the remote app device token and id in the edit device modal. * Change: Lock certain settings if using the Tautulli docker container. * API: - * Fix: download_config, download_database, download_log, and download_plex_log API commands not working. - * Change: get_recently_added command 'type' parameter renamed to 'media_type'. Backwards compatibility is maintained. - * Change: get_home_stats command 'stats_type' parameter change to string 'plays' or 'duration'. Backwards compatibility is maintained. + * Fix: download\_config, download\_database, download\_log, and download\_plex\_log API commands not working. + * Change: get\_recently\_added command 'type' parameter renamed to 'media\_type'. Backwards compatibility is maintained. + * Change: get\_home\_stats command 'stats\_type' parameter change to string 'plays' or 'duration'. Backwards compatibility is maintained. - -## v2.1.22 (2018-10-05) +## v2.1.22 \(2018-10-05\) * Notifications: * Fix: Notification agent settings not loading when failed to retrieve some data. @@ -652,47 +610,43 @@ * Fix: Incorrect redirect to HTTP when HTTPS proxy header is present. * Fix: Websocket not connecting automatically after the setup wizard. - -## v2.1.21 (2018-09-21) +## v2.1.21 \(2018-09-21\) * Notifications: - * Fix: Content Rating notification condition always evaluating to True. (Thanks @Arcanemagus) + * Fix: Content Rating notification condition always evaluating to True. \(Thanks @Arcanemagus\) * Fix: Script arguments not showing substituted values in the notification logs. * UI: * New: Unsupported browser warning when using IE or Edge. - * Fix: Misaligned refresh image icon in album search results. (Thanks @Sheigutn) + * Fix: Misaligned refresh image icon in album search results. \(Thanks @Sheigutn\) * Fix: Music history showing as pre-Tautulli in stream info modal. * Other: - * Fix: Typo in Systemd init script group value. (Thanks @ldumont) - * Fix: Execute permissions in Fedora/CentOS and Systemd init scripts. (Thanks @wilmardo) - * Fix: Systemd init script instructions per Linux distro. (Thanks @samwiseg00) + * Fix: Typo in Systemd init script group value. \(Thanks @ldumont\) + * Fix: Execute permissions in Fedora/CentOS and Systemd init scripts. \(Thanks @wilmardo\) + * Fix: Systemd init script instructions per Linux distro. \(Thanks @samwiseg00\) * Change: Fallback to Tautulli data directory if logs/backup/cache/newsletter directories are not writable. * Change: Check for alternative reverse proxy headers if X-Forwarded-Host is missing. - -## v2.1.20 (2018-09-05) +## v2.1.20 \(2018-09-05\) * No additional changes from v2.1.20-beta. - -## v2.1.20-beta (2018-09-02) +## v2.1.20-beta \(2018-09-02\) * Monitoring: * Fix: Fetch messing season info when "Hide Seasons" is enabled for a show. * Fix: Video and Audio details sometimes missing on activity cards. * Notifications: - * New: Added UTC timestamp to notification parameters. (Thanks @samwiseg00) - * New: Added TAUTULLI_PUBLIC_URL to script environment variables. (Thanks @samwiseg00) + * New: Added UTC timestamp to notification parameters. \(Thanks @samwiseg00\) + * New: Added TAUTULLI\_PUBLIC\_URL to script environment variables. \(Thanks @samwiseg00\) * UI: * Change: Automatically redirect '/' to HTTP root if enabled. * API: - * New: Added return_hash parameter to pms_image_proxy command. - * New: Added session_id parameter to get_activity command. + * New: Added return\_hash parameter to pms\_image\_proxy command. + * New: Added session\_id parameter to get\_activity command. * Other: - * Change: Linux systemd startup script to use the "tautulli" group permission. (Thanks @samwiseg00) + * Change: Linux systemd startup script to use the "tautulli" group permission. \(Thanks @samwiseg00\) - -## v2.1.19-beta (2018-08-19) +## v2.1.19-beta \(2018-08-19\) * Notifications: * New: Added Webhook notification agent. @@ -704,12 +658,11 @@ * Fix: Missing space in newsletter format. * UI: * New: Added Windows system tray icon. - * Fix: Plex OAuth not working with Plex remote access disabled. (Thanks @samwiseg00) + * Fix: Plex OAuth not working with Plex remote access disabled. \(Thanks @samwiseg00\) * API: - * Fix: SQL command creating a database backup every time. (Thanks @samwiseg00) + * Fix: SQL command creating a database backup every time. \(Thanks @samwiseg00\) - -## v2.1.18 (2018-07-27) +## v2.1.18 \(2018-07-27\) * Monitoring: * Fix: Progress bar on activity cards showing incorrect 100% when starting a stream. @@ -719,8 +672,7 @@ * UI: * Fix: Padding around search bar causing the navigation bar to break on smaller screens. - -## v2.1.17-beta (2018-07-22) +## v2.1.17-beta \(2018-07-22\) * Notifications: * Change: Use default selected stream for media info in notifications. @@ -728,8 +680,7 @@ * New: Automatically discover localhost Plex servers in server selection dropdown. * Change: Save Datatables state indefinitely. - -## v2.1.16-beta (2018-07-06) +## v2.1.16-beta \(2018-07-06\) * Monitoring: * Fix: Plex server not detected as down during sudden network loss. @@ -742,11 +693,10 @@ * UI: * New: Added ability to use Plex OAuth to login to Tautulli. * API: - * Fix: Unicode characters causing get_logs command to return bad data. - * New: Added rating_image and audience_rating_image to get_activity and get_metadata commands. + * Fix: Unicode characters causing get\_logs command to return bad data. + * New: Added rating\_image and audience\_rating\_image to get\_activity and get\_metadata commands. - -## v2.1.15-beta (2018-07-01) +## v2.1.15-beta \(2018-07-01\) * Monitoring: * Fix: Progress percent displaying NaN for live TV. @@ -755,15 +705,14 @@ * Notifications: * New: Added PYTHONPATH to script environment variables so scripts can automatically import from Tautulli libraries. * Fix: Proper handling of unicode script arguments. - * Fix: Incorrect TAUTULLI_URL environment variable if the HTTP host setting is changed. + * Fix: Incorrect TAUTULLI\_URL environment variable if the HTTP host setting is changed. * Fix: Email addresses selectize box not expanding. * Newsletters: * Change: HTTPS URLS for images hosted on tautulli.com. * Graphs: * Fix: SD resolution sometimes not grouped together. - -## v2.1.14 (2018-06-21) +## v2.1.14 \(2018-06-21\) * Notifications: * Fix: Parsing script arguments in quotes. @@ -773,8 +722,7 @@ * API: * New: Added optional grouping parameter to user and library watch statistics. - -## v2.1.13 (2018-06-16) +## v2.1.13 \(2018-06-16\) * Monitoring: * Fix: Soft crash when viewing photos not in an album. @@ -783,8 +731,7 @@ * UI: * New: Added support page with embedded Discord chat using WidgetBot. - -## v2.1.12 (2018-06-08) +## v2.1.12 \(2018-06-08\) * Notifications: * Change: Blank notification link source means disabled instead of default. @@ -793,8 +740,7 @@ * API: * New: Ability to terminate a stream using the session key. - -## v2.1.11-beta (2018-06-02) +## v2.1.11-beta \(2018-06-02\) * Monitoring: * Fix: Activity progress bar not updating in some cases. @@ -805,14 +751,13 @@ * Other: * Fix: Update metadata failing for tracks without track numbers. - -## v2.1.10-beta (2018-05-28) +## v2.1.10-beta \(2018-05-28\) * Monitoring: * Fix: Improved monitoring of live tv sessions. * Change: Use track artist instead of album artist. * Notifications: - * New: Added timestamp to Discord notification embeds. (Thanks @samwiseg00) + * New: Added timestamp to Discord notification embeds. \(Thanks @samwiseg00\) * New: Enable notifications for "clip" media types. * Fix: Actually add the "live" notification parameter. * Change: Update Twitter for 280 characters. @@ -821,14 +766,12 @@ * Fix: Artist summaries not showing up on newsletter cards. * Change: Do not send the newsletter if the template fails to render. - -## v2.1.9 (2018-05-21) +## v2.1.9 \(2018-05-21\) * Notifications: * New: Added "live" to notification parameters. - -## v2.1.8-beta (2018-05-19) +## v2.1.8-beta \(2018-05-19\) * Newsletters: * New: Added authentication options for self-hosted newsletters. @@ -838,8 +781,7 @@ * API: * Fix: Return proper HTTP status codes for errors. - -## v2.1.7-beta (2018-05-13) +## v2.1.7-beta \(2018-05-13\) * Newsletters: * New: Option to toggle between inline or internal CSS style templates. @@ -848,18 +790,16 @@ * Change: Self-hosted images on newsletters to use the /image endpoint instead of proxying through /newsletter/image. * Change: Strip whitespace from newsletter for smaller file size before sending to email. * API: - * New: Added get_stream_data command to API. + * New: Added get\_stream\_data command to API. * New: Added newsletter API commands to documentation. - -## v2.1.6-beta (2018-05-09) +## v2.1.6-beta \(2018-05-09\) * Newsletters: * Change: Setting to specify static URL ID name instead of using the newsletter ID number. * Change: Reorganize newsletter config options. - -## v2.1.5-beta (2018-05-07) +## v2.1.5-beta \(2018-05-07\) * Newsletters: * New: Added setting for a custom newsletter template folder. @@ -875,14 +815,12 @@ * Other: * Fix: Imgur database upgrade migration. - -## v2.1.4 (2018-05-05) +## v2.1.4 \(2018-05-05\) * Newsletters: * Fix: Newsletter URL without an HTTP root. - -## v2.1.3-beta (2018-05-04) +## v2.1.3-beta \(2018-05-04\) * Newsletters: * Fix: HTTP root doubled in newsletter URL. @@ -893,13 +831,12 @@ * Other: * Fix: Potential XSS vulnerability in search. - -## v2.1.2-beta (2018-05-01) +## v2.1.2-beta \(2018-05-01\) * Newsletters: * New: Added Cloudinary option for image hosting. * Notifications: - * New: Added Message-ID to Email header (Thanks @Dam64) + * New: Added Message-ID to Email header \(Thanks @Dam64\) * Fix: Posters not showing up on Twitter with self-hosted images. * Fix: Incorrect action parameter for new device notifications. * Change: Hardcode Pushover sound list instead of fetching the list every time. @@ -907,22 +844,20 @@ * Fix: Success result for empty response data. * Change: Do not send notification when checking for Tautulli updates via the API. - -## v2.1.1-beta (2018-04-11) +## v2.1.1-beta \(2018-04-11\) * Monitoring: * Fix: Live TV transcoding showing incorrectly as direct play. * Newsletters: - * New: Added week number as parameter. (Thanks @samip5) + * New: Added week number as parameter. \(Thanks @samip5\) * Fix: Fallback to cover art on the newsletter cards. * Change: Option to set newsletter time frame by calendar days or hours. * Notifications: - * New: Added week number as parameter. (Thanks @samip5) + * New: Added week number as parameter. \(Thanks @samip5\) * Other: * New: Added plexapi library for custom scripts. - -## v2.1.0-beta (2018-04-07) +## v2.1.0-beta \(2018-04-07\) * Newsletters: * New: A completely new scheduled newsletter system. @@ -934,20 +869,17 @@ * Notifications: * New: Ability to use self-hosted images on your own domain instead of using Imgur. - -## v2.0.28 (2018-04-02) +## v2.0.28 \(2018-04-02\) * Monitoring: * Fix: Homepage activity header text. - -## v2.0.27 (2018-04-02) +## v2.0.27 \(2018-04-02\) * Monitoring: * Change: Move activity refresh interval setting to the settings page. - -## v2.0.26-beta (2018-03-30) +## v2.0.26-beta \(2018-03-30\) * Monitoring: * New: Setting to change the refresh interval on the homepage. @@ -957,15 +889,13 @@ * UI: * Fix: Error when clicking on synced playlist links. - -## v2.0.25 (2018-03-22) +## v2.0.25 \(2018-03-22\) * Monitoring: * Fix: Websocket not reconnecting causing activity monitoring and notifications to not work. * Fix: Error checking for synced streams without Plex Pass. - -## v2.0.24 (2018-03-18) +## v2.0.24 \(2018-03-18\) * Monitoring: * Fix: Fix stream data not showing for history recorded before v2. @@ -975,15 +905,14 @@ * Change: XBMC notification agent renamed to Kodi. * Change: OSX Notify notification agent renamed to macOS Notification Center. - -## v2.0.23-beta (2018-03-16) +## v2.0.23-beta \(2018-03-16\) * Monitoring: * Fix: Certain transcode stream showing incorrectly as direct play in history. Fix is not retroactive. * Notifications: * New: Added season/episode/album/track count to notification parameters. * New: Added "Value 3" setting for IFTTT notifications. - * New: Set PLEX_URL, PLEX_TOKEN, TAUTULLI_URL, and TAUTULLI_APIKEY environment variables for scripts. + * New: Set PLEX\_URL, PLEX\_TOKEN, TAUTULLI\_URL, and TAUTULLI\_APIKEY environment variables for scripts. * Fix: Notifications failing to send with invalid custom conditions json. * Fix: Email notifications failing with unicode username/passwords. * Change: Facebook Graph API version updated to v2.12. @@ -992,17 +921,15 @@ * Fix: Incorrect info displayed in the Tautulli login logs. * API: * Fix: API returning empty data if a message was in the original data. - * Change: get_server_id command returns json instead of string. + * Change: get\_server\_id command returns json instead of string. * Other: * Fix: Forgot git pull when changing branches in the web UI. - -## v2.0.22 (2018-03-10) +## v2.0.22 \(2018-03-10\) * Tautulli v2 release! - -## v2.0.22-beta (2018-03-09) +## v2.0.22-beta \(2018-03-09\) * Notifications: * Fix: Pushover notifications failing with priority 2 is set. @@ -1011,8 +938,7 @@ * Fix: Update check failing when an update is available. * Fix: Item count incorrect for photo libraries. - -## v2.0.21-beta (2018-03-04) +## v2.0.21-beta \(2018-03-04\) * Monitoring: * New: Identify if a stream is using Plex Relay. @@ -1028,8 +954,7 @@ * Change: Move logs to tautulli.log. * Change: Move startup file to Tautulli.py. - -## v2.0.20-beta (2018-02-24) +## v2.0.20-beta \(2018-02-24\) * Notifications: * New: Add poster support for Pushover notifications. @@ -1049,8 +974,7 @@ * New: Added Google Analytics to collect installation metrics. * Fix: Reconnecting to the Plex server when server settings are not changed. - -## v2.0.19-beta (2018-02-16) +## v2.0.19-beta \(2018-02-16\) * Monitoring: * Fix: Connect to Plex Cloud server without keeping it awake. @@ -1064,14 +988,13 @@ * Change: Updated the masked info shown to guests. * Change: Check for updates without refreshing to the homepage. * API: - * New: Added update_check to the API. - * Fix: delete_media_info_cache not deleting the cache. - * Change: Document "refresh" parameter for get_library_media_info. + * New: Added update\_check to the API. + * Fix: delete\_media\_info\_cache not deleting the cache. + * Change: Document "refresh" parameter for get\_library\_media\_info. * Other: * Fix: Show the full changelog since v2 on a fresh install. - -## v2.0.18-beta (2018-02-12) +## v2.0.18-beta \(2018-02-12\) * Notifications: * Fix: Default text for Tautulli update notifications using the wrong parameter. @@ -1085,22 +1008,20 @@ * New: Updated API documentation for v2. * Other: * Fix: DeprecationWarning when using HTTPS with self-signed certificates. - * Change: Deleting the Imgur poster URL also deletes the poster from Imgur (only available for new uploads). + * Change: Deleting the Imgur poster URL also deletes the poster from Imgur \(only available for new uploads\). * Change: GitHub repository moved to Tautulli/Tautulli. Old GitHub URLs will still work. - -## v2.0.17-beta (2018-02-03) +## v2.0.17-beta \(2018-02-03\) * Notifications: * Fix: Unable to use @ mentions tags for Discord and Slack. * New: Added Zapier notification agent. * API: - * Fix: get_synced_items returning no results. - * Fix: get_library_media_info returning incorrect media type for photo albums. - * Fix: get_library_media_info not being able to sort by title. + * Fix: get\_synced\_items returning no results. + * Fix: get\_library\_media\_info returning incorrect media type for photo albums. + * Fix: get\_library\_media\_info not being able to sort by title. - -## v2.0.16-beta (2018-01-30) +## v2.0.16-beta \(2018-01-30\) * Monitoring: * Fix: Timestamp sometimes showing as "0:60" on the activity cards. @@ -1112,8 +1033,7 @@ * Other: * New: Option to use the Plex server update channel when checking for updates. - -## v2.0.15-beta (2018-01-27) +## v2.0.15-beta \(2018-01-27\) * Monitoring: * Fix: Live TV sessions not being stopped in History. @@ -1124,8 +1044,7 @@ * New: Added more server details to notification parameters. * Change: Renamed "PlexPy" update notification parameters to "Tautulli". - -## v2.0.14-beta (2018-01-20) +## v2.0.14-beta \(2018-01-20\) * Monitoring: * Change: Added "Cellular" bandwidth to "WAN" in activity header. @@ -1141,8 +1060,7 @@ * UI: * Change: Show all changelogs since the previous version when updating. - -## v2.0.13-beta (2018-01-13) +## v2.0.13-beta \(2018-01-13\) * Notifications: * New: Added dropdown selection for email addresses of shared users. @@ -1152,8 +1070,7 @@ * New: Use JSON Web Tokens for authentication. Login now works with SSO applications. * New: Allow the Plex server admin to login as a Tautulli admin using their Plex.tv account. - -## v2.0.12-beta (2018-01-07) +## v2.0.12-beta \(2018-01-07\) * Notifications: * Fix: Incorrect Plex URL parameter value. @@ -1163,8 +1080,7 @@ * API: * Fix: Notify API command not sending notifications. - -## v2.0.11-beta (2018-01-05) +## v2.0.11-beta \(2018-01-05\) * Notifications: * Fix: Some notification parameters showing up blank. @@ -1173,24 +1089,21 @@ * Other: * Fix: Ability to login using the hashed password. - -## v2.0.10-beta (2018-01-04) +## v2.0.10-beta \(2018-01-04\) * Monitoring: * Fix: HW transcoding indicator on activity cards incorrect after refreshing. * Notifications: * Remove: Notification toggles from library and user settings. Use custom conditions to filter out notifications instead. * UI: - * Fix: Incorrect examples for some date format options. Also added a few missing date format options. (Thanks @Tommatheussen) + * Fix: Incorrect examples for some date format options. Also added a few missing date format options. \(Thanks @Tommatheussen\) - -## v2.0.9-beta (2018-01-03) +## v2.0.9-beta \(2018-01-03\) * Notifications: * Fix: Notifications failing due to incorrect season/episode number types. - -## v2.0.8-beta (2018-01-03) +## v2.0.8-beta \(2018-01-03\) * Monitoring: * Fix: Incorrect HW transcoding indicator on activity cards. @@ -1198,8 +1111,7 @@ * Notifications: * Fix: Notifications failing due to some missing notification parameters. - -## v2.0.7-beta (2018-01-01) +## v2.0.7-beta \(2018-01-01\) * Monitoring: * Fix: Incorrect LAN/WAN location on activity cards. @@ -1207,8 +1119,7 @@ * Other: * Fix: Failed to retrieve synced items when there are special characters in the title. - -## v2.0.6-beta (2017-12-31) +## v2.0.6-beta \(2017-12-31\) * Monitoring: * New: Beta Plex Cloud support. @@ -1216,8 +1127,7 @@ * UI: * Fix: Stopped time showing as "n/a" on history table. - -## v2.0.5-beta (2017-12-31) +## v2.0.5-beta \(2017-12-31\) * Monitoring: * Fix: IPv6 addresses overflowing on the activity cards. @@ -1227,12 +1137,11 @@ * New: Added total required bandwidth in the activity header. * Other: * Fix: Failing to retrieve releases from GitHub. - * Fix: CherryPy SSL connection warning. (Thanks @felixbuenemann) + * Fix: CherryPy SSL connection warning. \(Thanks @felixbuenemann\) * Fix: Sanitize script output in logs. * Change: Login sessions persists across server restarts. - -## v2.0.4-beta (2017-12-29) +## v2.0.4-beta \(2017-12-29\) * Monitoring: * Fix: Current activity cards duplicating on the homepage. @@ -1243,8 +1152,7 @@ * New: Button to test Plex Web URL override. * Fix: Library and User pages return to the correct tab when pressing back. - -## v2.0.3-beta (2017-12-25) +## v2.0.3-beta \(2017-12-25\) * Monitoring: * Fix: Missing sync ID error causing logging to crash. @@ -1254,8 +1162,7 @@ * UI: * Fix: Missing CSS for stream info modal. - -## v2.0.2-beta (2017-12-24) +## v2.0.2-beta \(2017-12-24\) * Monitoring: * Fix: Websocket connection fails to start with existing streams when upgrading to v2. @@ -1269,7 +1176,7 @@ * API: * Change: API is enabled by default on new installs. * UI: - * New: Add logo svg files. (Thanks @Fish2) + * New: Add logo svg files. \(Thanks @Fish2\) * New: Updated stream info modal. * Change: Media info tables sort by sort title instead of title. * Other: @@ -1279,23 +1186,21 @@ * Change: Add back HTTP Proxy setting under the Web Interface settings tab. * Change: "Group Table and Watch Statistics History" and "Current Activity in History Tables" enabled by default on new installs. - -## v2.0.1-beta (2017-12-19) +## v2.0.1-beta \(2017-12-19\) * Monitoring: - * Fix: Missing video_height database column. + * Fix: Missing video\_height database column. * Notifications: * Fix: Join API key. * Change: Temporarily disable broken browser notifications. * UI: * Fix: Incorrect fallback image for music watch statistics. - -## v2.0.0-beta (2017-12-18) +## v2.0.0-beta \(2017-12-18\) * Monitoring: * New: More detailed stream info including subtitles, bitrates, bandwidth, and quality profiles. - * New: Terminate sessions from the current activity (Plex Pass only). + * New: Terminate sessions from the current activity \(Plex Pass only\). * Change: Monitoring uses websockets only now. * Notifications: * New: Completely new notification system. @@ -1313,9 +1218,9 @@ * <tv> is renamed to <episode>, and <music> is renamed to <track> * New: Preview notification text in the notifier settings. * New: Properly group recently added notifications when adding a batch of media. - * The {season_num}, {episode_num}, and {track_num} parameters will be substituted with the range (e.g. 06-10) + * The {season\_num}, {episode\_num}, and {track\_num} parameters will be substituted with the range \(e.g. 06-10\) * New: Option to group recently added notifications by show/artist or season/album. - * New: More detailed media info (video, audio, subtitle, file, etc.) notification options available. + * New: More detailed media info \(video, audio, subtitle, file, etc.\) notification options available. * New: Added notification text modifiers to change case and slice lists. * New: Custom notification conditions using parameters to filter notifications. * New: Button to trigger manual recently added notifications from the info pages. @@ -1328,11 +1233,11 @@ * Change: Notification success or failure added to notification logs. * API: * New: Added check for Plex Media Server updates with the Tautulli API. - * New: Added show/artist and episode/track titles to the "get_history" API command. + * New: Added show/artist and episode/track titles to the "get\_history" API command. * New: Added manual trigger for recently added notifications. * Remove: Defunct API v1. - * Change: The "notify" API command now requires a notifier_id instead of an agent_id. The notifier ID can be found in the settings for each notification agent. - * Change: The returned json for the "get_metadata" API command is no longer nested under the "metadata" key. + * Change: The "notify" API command now requires a notifier\_id instead of an agent\_id. The notifier ID can be found in the settings for each notification agent. + * Change: The returned json for the "get\_metadata" API command is no longer nested under the "metadata" key. * UI: * New: Updated current activity, watch statistics, and library statistics cards on the home page. * New: Toggle stats and recently added categories directly on the homepage. @@ -1340,7 +1245,7 @@ * New: Updated platform icons to a uniform style. * Remove: Setting for number of top items for watch statistic cards. * Change: Separate API and websocket logs. -* Android Tautulli Remote App (beta): +* Android Tautulli Remote App \(beta\): * New: Download the Tautulli Remote app on Google Play! * Link the app using a QR code in the Tautulli settings. * New: Push notifications directly to the Tautulli Remote app. @@ -1362,103 +1267,90 @@ * Change: The database schema has been changed, and reverting back to PlexPy v1 will not work. * Change: The dev branch has been depreciated. A master/beta/nightly system is used instead. - -## v1.4.25 (2017-10-02) +## v1.4.25 \(2017-10-02\) * Fix: Tab instead of spaces preventing startup. +## v1.4.24 \(2017-10-01\) -## v1.4.24 (2017-10-01) - -* Fix: New Plex Web urls. (Thanks @Joshua1337) +* Fix: New Plex Web urls. \(Thanks @Joshua1337\) * Fix: Fallback to the product name if the player title is blank. -* New: Added no forking option to startup arguments. (Thanks @Vashypooh) +* New: Added no forking option to startup arguments. \(Thanks @Vashypooh\) - -## v1.4.23 (2017-09-30) +## v1.4.23 \(2017-09-30\) * Fix: Playstation 4 platform name. * Fix: PlexWatch and Plexivity import. * Fix: Pushbullet authorization header. - -## v1.4.22 (2017-08-19) +## v1.4.22 \(2017-08-19\) * Fix: Cleaning up of old config backups. * Fix: Temporary fix for incorrect source media info. - -## v1.4.21 (2017-07-01) +## v1.4.21 \(2017-07-01\) * New: Updated donation methods. - -## v1.4.20 (2017-06-24) +## v1.4.20 \(2017-06-24\) * New: Added platform image for the PlexTogether player. -* Fix: Corrected math used to calculate human duration. (Thanks @senepa) +* Fix: Corrected math used to calculate human duration. \(Thanks @senepa\) * Fix: Sorting of 4k in media info tables. * Fix: Update file sizes when refreshing media info tables. -* Fix: Support a custom port for Mattermost (Slack) notifications. +* Fix: Support a custom port for Mattermost \(Slack\) notifications. - -## v1.4.19 (2017-05-31) +## v1.4.19 \(2017-05-31\) * Fix: Video resolution not showing up for transcoded streams on PMS 1.7.x. +## v1.4.18 \(2017-04-22\) -## v1.4.18 (2017-04-22) - -* New: Added some new Arnold quotes. (Thanks @senepa) +* New: Added some new Arnold quotes. \(Thanks @senepa\) * Fix: Text wrapping in datatable footers. -* Fix: API command get_apikey. (Thanks @Hellowlol) +* Fix: API command get\_apikey. \(Thanks @Hellowlol\) +## v1.4.17 \(2017-03-04\) -## v1.4.17 (2017-03-04) - -* New: Configurable month range for the Plays by month graph. (Thanks @Pbaboe) -* New: Option to chanage the week to start on Monday for the the Plays by day of week graph. (Thanks @Pbaboe) -* Fix: Invalid iOS icon file paths. (Thanks @demonbane) +* New: Configurable month range for the Plays by month graph. \(Thanks @Pbaboe\) +* New: Option to chanage the week to start on Monday for the the Plays by day of week graph. \(Thanks @Pbaboe\) +* Fix: Invalid iOS icon file paths. \(Thanks @demonbane\) * Fix: Plex Web 3.0 URLs on info pages and notifications. * Fix: Update bitcoin donation link to Coinbase. -* Fix: Update init scripts. (Thanks @ampsonic) +* Fix: Update init scripts. \(Thanks @ampsonic\) - -## v1.4.16 (2016-11-25) +## v1.4.16 \(2016-11-25\) * Fix: Websocket for new json response on PMS 1.3.0. * Fix: Update stream and transcoder tooltip percent. * Fix: Typo in the edit user modal. - -## v1.4.15 (2016-11-11) +## v1.4.15 \(2016-11-11\) * New: Add stream and transcoder progress percent to the current activity tooltip. * Fix: Refreshing of images in the cache when authentication is disabled. * Fix: Plex.tv authentication with special characters in the username or password. * Fix: Line breaks in the info page summaries. * Fix: Redirect to the proper http root when restarting. -* Fix: API result type and responses showing incorrectly. (Thanks @Hellowlol) +* Fix: API result type and responses showing incorrectly. \(Thanks @Hellowlol\) * Change: Use https URL for app.plex.tv. -* Change: Show API traceback errors in the browser with debugging enabled. (Thanks @Hellowlol) -* Change: Increase table width on mobile devices and max width set to 1750px. (Thanks @XusBadia) +* Change: Show API traceback errors in the browser with debugging enabled. \(Thanks @Hellowlol\) +* Change: Increase table width on mobile devices and max width set to 1750px. \(Thanks @XusBadia\) - -## v1.4.14 (2016-10-12) +## v1.4.14 \(2016-10-12\) * Fix: History logging locking up if media is removed from Plex before PlexPy can save the session. * Fix: Unable to save API key in the settings. -* Fix: Some typos in the settings. (Thanks @Leafar3456) +* Fix: Some typos in the settings. \(Thanks @Leafar3456\) * Change: Disable script timeout by setting timeout to 0 seconds. - -## v1.4.13 (2016-10-08) +## v1.4.13 \(2016-10-08\) * New: Option to set the number of days to keep PlexPy backups. * New: Option to add a supplementary url to Pushover notifications. * New: Option to set a timeout duration for script notifications. * New: Added flush temporary sessions button to extra settings for emergency use. -* New: Added pms_image_proxy to the API. +* New: Added pms\_image\_proxy to the API. * Fix: Insanely long play durations being recorded when connection to the Plex server is lost. * Fix: Script notification output not being sent to the logger. * Fix: New libraries not being added to homepage automatically. @@ -1471,34 +1363,30 @@ * Change: Force refresh the Plex.tv token when fetching a new token. * Change: Script notifications run in a new thread with the timeout setting. * Change: Watched percent moved to general settings. -* Change: Use human readable file sizes to the media info tables. (Thanks @logaritmisk) +* Change: Use human readable file sizes to the media info tables. \(Thanks @logaritmisk\) * Change: Update pytz library. - -## v1.4.12 (2016-09-18) +## v1.4.12 \(2016-09-18\) * Fix: PMS update check not working for MacOSX. * Fix: Square covers for music stats on homepage. -* Fix: Card width on the homepage for iPhone 6/7 Plus. (Thanks @XusBadia) -* Fix: Check for running PID when starting PlexPy. (Thanks @spolyack) +* Fix: Card width on the homepage for iPhone 6/7 Plus. \(Thanks @XusBadia\) +* Fix: Check for running PID when starting PlexPy. \(Thanks @spolyack\) * Fix: FreeBSD service script not stopping PlexPy properly. * Fix: Some web UI cleanup. * Change: GitHub repostitory moved. - -## v1.4.11 (2016-09-02) +## v1.4.11 \(2016-09-02\) * Fix: PlexWatch and Plexivity import errors. * Fix: Searching in history datatables. * Fix: Notifications not sending for Local user. - -## v1.4.10 (2016-08-15) +## v1.4.10 \(2016-08-15\) * Fix: Missing python ipaddress module preventing PlexPy from starting. - -## v1.4.9 (2016-08-14) +## v1.4.9 \(2016-08-14\) * New: Option to include current activity in the history tables. * New: ISP lookup info in the IP address modal. @@ -1506,22 +1394,20 @@ * Fix: Send correct JSON header for Slack/Mattermost notifications. * Fix: Twitter and Facebook test notifications incorrectly showing as "failed". * Fix: Current activity progress bars extending past 100%. -* Fix: Typo in the setup wizard. (Thanks @wopian) +* Fix: Typo in the setup wizard. \(Thanks @wopian\) * Fix: Update PMS server version before checking for a new update. * Change: Compare distro and build when checking for server updates. * Change: Nicer y-axis intervals when viewing "Play Duration" graphs. - -## v1.4.8 (2016-07-16) +## v1.4.8 \(2016-07-16\) * New: Setting to specify PlexPy backup interval. * Fix: User Concurrent Streams Notifications by IP Address checkbox not working. -* Fix: Substitute {update_version} in fallback PMS update notification text. +* Fix: Substitute {update\_version} in fallback PMS update notification text. * Fix: Check version for automatic IP logging setting. * Fix: Use library refresh interval. - -## v1.4.7 (2016-07-14) +## v1.4.7 \(2016-07-14\) * New: Use MaxMind GeoLite2 for IP address lookup. * Note: The GeoLite2 database must be installed from the settings page. @@ -1530,7 +1416,7 @@ * New: More notification options for Plex updates. * New: Notifications for concurrent streams by a single user. * New: Notifications for user streaming from a new device. -* New: HipChat notification agent. (Thanks @aboron) +* New: HipChat notification agent. \(Thanks @aboron\) * Fix: Username showing as blank when friendly name is blank. * Fix: Direct stream count wrong in the current activity header. * Fix: Current activity reporting direct stream when reducing the stream quality switches to transcoding. @@ -1545,49 +1431,43 @@ * Change: Telegram only notifies once instead of twice when posters are enabled. * Change: Host Open Sans font locally instead of querying Google Fonts. - -## v1.4.6 (2016-06-11) +## v1.4.6 \(2016-06-11\) * New: Added User and Library statistics to the API. -* New: Ability to refresh individual poster images without clearing the entire cache. (Thanks @Hellowlol) -* New: Added {added_date}, {updated_date}, and {last_viewed_date} to metadata notification options. -* New: Log level filter for Plex logs. (Thanks @sanderploegsma) +* New: Ability to refresh individual poster images without clearing the entire cache. \(Thanks @Hellowlol\) +* New: Added {added\_date}, {updated\_date}, and {last\_viewed\_date} to metadata notification options. +* New: Log level filter for Plex logs. \(Thanks @sanderploegsma\) * New: Log level filter for PlexPy logs. * New: Button to download Plex logs directly from the web interface. * New: Advanced setting in the config file to change the number of Plex log lines retrieved. -* Fix: FreeBSD and FreeNAS init scripts to reflect the path in the installation guide. (Thanks @nortron) +* Fix: FreeBSD and FreeNAS init scripts to reflect the path in the installation guide. \(Thanks @nortron\) * Fix: Monitoring crashing when failed to retrieve current activity. - -## v1.4.5 (2016-05-25) +## v1.4.5 \(2016-05-25\) * Fix: PlexPy unable to start if failed to get shared libraries for a user. * Fix: Matching port number when retrieving the PMS url. * Fix: Extract mapped IPv4 address in Plexivity import. * Change: Revert back to internal url when retrieving PMS images. - -## v1.4.4 (2016-05-24) +## v1.4.4 \(2016-05-24\) * Fix: Image queries crashing the PMS when playing clips from channels. * Fix: Plexivity import if IP address is missing. * Fix: Tooltips shown behind the datatable headers. * Fix: Current activity instances rendered in a random order causing them to jump around. - -## v1.4.3 (2016-05-22) +## v1.4.3 \(2016-05-22\) * Fix: PlexPy not starting without any authentication method. - -## v1.4.2 (2016-05-22) +## v1.4.2 \(2016-05-22\) * New: Option to use HTTP basic authentication instead of the HTML login form. * Fix: Unable to save settings when enabling the HTTP proxy setting. * Change: Match the PMS port when retrieving the PMS url. - -## v1.4.1 (2016-05-20) +## v1.4.1 \(2016-05-20\) * New: HTTP Proxy checkbox in the settings. Enable this if using an SSL enabled reverse proxy in front of PlexPy. * Fix: Check for blank username/password on login. @@ -1599,26 +1479,25 @@ * Fix: Logs sorted out of order. * Fix: Resolution reported incorrectly in the stream info modal. * Fix: PlexPy crashing when hashing password in the config file. -* Fix: CherryPy doubling the port number when accessing PlexPy locally with http_proxy enabled. +* Fix: CherryPy doubling the port number when accessing PlexPy locally with http\_proxy enabled. * Change: Sort by most recent for ties in watch statistics. * Change: Refresh Join devices when changing the API key. * Change: Format the Join device IDs. * Change: Join notifications now sent with Python Requests module. * Change: Add paging for recently added in the API. - -## v1.4.0 (2016-05-15) +## v1.4.0 \(2016-05-15\) * New: An HTML form login page with sessions support. * New: Guest access control for shared users using Plex.tv authentication. - * Enable the option in the settings and toggle guest access per user from Users > Edit mode. + * Enable the option in the settings and toggle guest access per user from Users > Edit mode. * Guests can only view their own user data. Other user info is removed/masked. - * Guests can only view media from libraries that are shared with them (content rating and label filters are respected). Other libraries are removed/masked. + * Guests can only view media from libraries that are shared with them \(content rating and label filters are respected\). Other libraries are removed/masked. * All settings and admin controls are restricted from guests. * All current activity on the server is shown, but with masked user/metadata info. * New: Login logs table on the User and Logs pages. * New: Filter the history table by user. -* New: Filter the graphs by user. (Thanks @Otger) +* New: Filter the graphs by user. \(Thanks @Otger\) * New: Option to hash the admin passowrd in the config file. * New: Options to enable/disable/rearrange each section on the homepage * New: Toggle media types for recently added items on the homepage. @@ -1629,21 +1508,21 @@ * New: Poster support for Slack. * New: Poster support for Twitter. * New: Re-added Plex Home Theater notification agent. -* New: Browser notification agent (experimental). -* New: Added {plex_url} as a notification option. +* New: Browser notification agent \(experimental\). +* New: Added {plex\_url} as a notification option. * New: Added transcode decision to the activity header. -* New: Documentation for APIv2 (see API.md for details). +* New: Documentation for APIv2 \(see API.md for details\). * New: Import a Plexivity database into PlexPy. * New: Prettier fallback image for art/episodes. * New: Prettier confirm modal dialogues. -* New: Cache images to reduce Plex API calls. This can be disabled in the under Settings > Extra Settings. (Thanks @Hellowlol) +* New: Cache images to reduce Plex API calls. This can be disabled in the under Settings > Extra Settings. \(Thanks @Hellowlol\) * New: Scheduled backups of the config file. * New: Button to clear the PlexPy cache/images in the settings. * New: Button to manually backup the PlexPy database/config in the settings. * New: Button to clear the PlexPy logs in the settings. * New: Button to download PlexPy log file on the Logs tab. * New: Advanced setting in config file to change the Plex API timeout value. -* Fix: Mixed content HTTP request in settings (for reverse proxies with SSL). +* Fix: Mixed content HTTP request in settings \(for reverse proxies with SSL\). * Fix: Rename recently "watched" music to "played". * Change: Current activity details now persists across refreshes. * Change: Smoother transitions between preview thumbnails in current activity. @@ -1651,78 +1530,71 @@ * Change: Ability to change the base URL for reverse proxies in the web interface. * Change: Added a "Verify Server" button in the settings. * Change: Added request status code in the logs for notifer errors. -* Change: Remove in-memory logs and read lines from log file instead. (Thanks @Hellowlol) +* Change: Remove in-memory logs and read lines from log file instead. \(Thanks @Hellowlol\) * Change: Limit number of failed attempts to write sessions to history. Default is 5 attempts. * Change: A bunch of UI updates. * Change: A bunch of backend code cleanup. * Removed: All unused Python packages. - -## v1.3.16 (2016-05-01) +## v1.3.16 \(2016-05-01\) * Fix: Viewing photos crashing PlexPy. -* Fix: Persist Users > Edit mode on datatable page change. +* Fix: Persist Users > Edit mode on datatable page change. * Fix: PMS update notifications broken. * Change: Cache notifications poster with thread ID to avoid overwritting images. - -## v1.3.15 (2016-04-18) +## v1.3.15 \(2016-04-18\) * Fix: Slack notifications failing when using and icon URL. * Fix: 127.0.0.1 showing as an external IP address on the history tables. * Fix: Regression file sizes not shown in the media info table footer. * Fix: Retrieving proper PMS URL when multiple connections are published to plex.tv. * Fix: Some typos in the logger. -* Fix: Some other typos in the WebUI. (Thanks @xtjoeytx) -* Change: Optimized mobile web app icons and spash screens. (Thanks @alotufo) +* Fix: Some other typos in the WebUI. \(Thanks @xtjoeytx\) +* Change: Optimized mobile web app icons and spash screens. \(Thanks @alotufo\) +## v1.3.14 \(2016-03-29\) -## v1.3.14 (2016-03-29) - -* Fix: Regression for missing notify_action for script notifications. +* Fix: Regression for missing notify\_action for script notifications. * Fix: Typo for home stats cards in the settings. - -## v1.3.13 (2016-03-27) +## v1.3.13 \(2016-03-27\) * Fix: Only mask strings longer than 5 characters in logs. - -## v1.3.12 (2016-03-27) +## v1.3.12 \(2016-03-27\) * Fix: "Check GitHub for updates" not rescheduling when toggling setting. * Fix: Bug where notifications would fail if metadata is not found. * Fix: Bug where notifications would fail if unable to upload poster to Imgur. * Fix: PlexPy will now start properly for different Python environment variables. * New: Feature requests moved to FeatHub. -* New: Ability to specify a GitHub API token for updates (optional). +* New: Ability to specify a GitHub API token for updates \(optional\). * New: Mask out sensitive information from the logs. -* New: New and updated Arnold quotes. (Thanks @Vilsol & @Chrisophogus) +* New: New and updated Arnold quotes. \(Thanks @Vilsol & @Chrisophogus\) * New: "First" and "Last" page buttons to datatables. * New: Access log file from the "Help & Info" page. -* New: CherryPy environment options (for development). (Thanks @codedecay) -* New: PlexPy development environment (for development only). +* New: CherryPy environment options \(for development\). \(Thanks @codedecay\) +* New: PlexPy development environment \(for development only\). * Change: Facebook posts with a posters now include a summary. * Change: Facebook posts now use a default poster if the poster is not found or unable to upload to Imgur. * Change: IFTTT events can be fromatted with the {action} name. -* Change: Logs now use ISO date format to avoid locale encoding errors. (Thanks @alshain) +* Change: Logs now use ISO date format to avoid locale encoding errors. \(Thanks @alshain\) * Remove: Non-functioning Plex notification agent. - -## v1.3.11 (2016-03-15) +## v1.3.11 \(2016-03-15\) * Fix: Typo preventing history logging for websockets. - -## v1.3.10 (2016-03-12) +## v1.3.10 \(2016-03-12\) * Fix: Actually allow HTML tags for Pushover. * Fix: PlexPy not restarting on Windows if there is a space in the folder path. * Fix: Reconnect websocket when changing PMS SSL setting. -* Fix: Datatables not loading when view_offset or duration is blank. +* Fix: Datatables not loading when view\_offset or duration is blank. * Fix: Bug when checking the PMS version in the settings. * Fix: Auto-refreshing of log tables. -* Fix: Logging of IPv6 addresses. (PMS version >0.9.14 only.) +* Fix: Logging of IPv6 addresses. \(PMS version >0.9.14 only.\) * Fix: Hide days selection from the Play Totals graph page. * Fix: PlexPy overwriting user's own SSL certificate/key. * Fix: Multiple watched notifications when using websocket. @@ -1736,52 +1608,49 @@ * New: Document all date/time format options. * New: Button to clear notification logs. * New: Customizable backup, cache, and log directories. -* Change: Retry writing sessions to history if it fails, so sessions don't get lost. (Activity pinger only, not availble for websocket.) +* Change: Retry writing sessions to history if it fails, so sessions don't get lost. \(Activity pinger only, not availble for websocket.\) * Change: Save any unknown sessions to the "Local" user. * Change: History table modal is filtered depending on which graph series is clicked. -* Change: Revert back to saving the state of datatables (search, sorting, entries per page, etc.). +* Change: Revert back to saving the state of datatables \(search, sorting, entries per page, etc.\). * Change: Newlines are not longer stripped from notification text which allows for finer control of how notifications look. -* Change: Updated FreeNAS/FreeBSD init scripts. (Must have updated jails.) (Thanks @chiviak) +* Change: Updated FreeNAS/FreeBSD init scripts. \(Must have updated jails.\) \(Thanks @chiviak\) - -## v1.3.9 (2016-02-21) +## v1.3.9 \(2016-02-21\) * Fix: Recently added notification not sent to all notification agents. -* New: Pushover HTML support. (Thanks @elseym) +* New: Pushover HTML support. \(Thanks @elseym\) - -## v1.3.8 (2016-02-21) +## v1.3.8 \(2016-02-21\) * Fix: Regression unable to clear HTTP password. * Fix: Remove media tags from script arguments for server notifications. * Fix: Encode poster titles to UTF-8 for Imgur upload. * Fix: Allow notifications to send without poster if Imgur upload fails. * New: Notification Logs table in the Logs tab. -* New: Toggle in settings to enable posters in notifications. (Disabled by default.) +* New: Toggle in settings to enable posters in notifications. \(Disabled by default.\) * Change: Save Imgur poster URL to database so upload is not needed every time. * Change: Notify log in database to log each event as a separate entry. * Change: Monitor remote access is unchecked if remote access is disabled on server. - -## v1.3.7 (2016-02-20) +## v1.3.7 \(2016-02-20\) * Fix: Verifying server with SSL enabled. -* Fix: Regression where {stream_duration} reported as 0. +* Fix: Regression where {stream\_duration} reported as 0. * Fix: Video metadata flags showing up for track info. * Fix: Custom library icons not applied to Library Statistics. * Fix: Typos in the Web UI. * New: ETA to Current Activity overlay. * New: Total duration to Libraries and Users tables. -* New: {machine_id} to notification options. +* New: {machine\_id} to notification options. * New: IMDB, TVDB, TMDb, Last.fm, and Trackt IDs/URLs to notification options. -* New: {poster_url} to notification options using Imgur. +* New: {poster\_url} to notification options using Imgur. * New: Poster and link for Facebook notifications. * New: Log javascript errors from the Web UI. * New: Configuration and Scheduler info to the settings page. * New: Schedule background task to backup the PlexPy database. * New: URL anonymizer for external links. * New: Plex Media Scanner log file to Log viewer. -* New: API v2 (sill very experimental). (Thanks @Hellowlol) +* New: API v2 \(sill very experimental\). \(Thanks @Hellowlol\) * Change: Allow secure websocket connections. * Change: History grouping now accounts for the view offset. * Change: Subject line can be toggled off for Facebook, Slack, Telegram, and Twitter. @@ -1790,29 +1659,26 @@ * Change: Disable monitor remote access checkbox if remote access is not enabled on the PMS. * Change: Disable IP logging checkbox if PMS version is 0.9.14 or greater. - -## v1.3.6 (2016-02-03) +## v1.3.6 \(2016-02-03\) * Fix: Regression where {duration} not reported in minutes. * Fix: Proper daemonizing in FreeBSD and FreeNAS init scripts. * Change: Update readme documentation. - -## v1.3.5 (2016-02-02) +## v1.3.5 \(2016-02-02\) * Fix: Removing unique constraints from database. * Fix: Unable to expand media info table when missing "Added At" date. * Fix: Server verification for unpublished servers. * Fix: Updating PMS identifier for server change. -* New: {stream_time}, {remaining_time}, and {progress_time} to notification options. -* New: Powershell script support. (Thanks @Hellowlol) +* New: {stream\_time}, {remaining\_time}, and {progress\_time} to notification options. +* New: Powershell script support. \(Thanks @Hellowlol\) * New: Method to delete duplicate libraries. * Change: Daemonize before running start up tasks. +## v1.3.4 \(2016-01-29\) -## v1.3.4 (2016-01-29) - -* Fix: Activity checker not starting with library update (history not logging). +* Fix: Activity checker not starting with library update \(history not logging\). * Fix: Libraries duplicated in database. * Fix: Buffer notifications even when disabled when using websockets. * Fix: Libraries and Users lists not refreshing. @@ -1824,21 +1690,18 @@ * Change: Unnecessary quoting of script arguments. * Change: Facebook notification instructions. - -## v1.3.3 (2016-01-26) +## v1.3.3 \(2016-01-26\) * Fix: Plays by Month graph not loading. * Change: Disable caching for datatables. * Change: Improved updating library data in the database again. - -## v1.3.2 (2016-01-24) +## v1.3.2 \(2016-01-24\) * Fix: 'datestamp' and 'timestamp' for server notifications. * Change: New method for updating library data in database. - -## v1.3.1 (2016-01-23) +## v1.3.1 \(2016-01-23\) * Fix: Notifiers authorization popups for reverse proxies. * Fix: Empty brackets in titles on tables. @@ -1848,16 +1711,15 @@ * Change: Rename "Last Watched" to "Last Played". * Change: More descriptive libraries updating message. - -## v1.3.0 (2016-01-23) +## v1.3.0 \(2016-01-23\) * New: Brand new Libraries section. * New: Lots of new library statistics. * New: Media info table for libraries. -* New: Web app for Android and iOS. (Thanks @zobe123) -* New: Slack notification agent. (Thanks @richipargo) +* New: Web app for Android and iOS. \(Thanks @zobe123\) +* New: Slack notification agent. \(Thanks @richipargo\) * New: Facebook notification agent. -* New: Custom script notification agent. (Thanks @Hellowlol) +* New: Custom script notification agent. \(Thanks @Hellowlol\) * New: Custom "From Name" to email notification agent. * New: Ability to test notifications / send custom one-off notifications. * New: 'datestamp' and 'timestamp' notification options. @@ -1865,7 +1727,7 @@ * New: Media info flags on the info pages. * New: Ability to fix broken metadata if the item has been moved in Plex. * New: Ability to rearrange the homepage statistics cards. -* New: CentOS startup script (Thanks @PHoSawyer) +* New: CentOS startup script \(Thanks @PHoSawyer\) * Fix: Server name blank after first run wizard. * Fix: Incorrect duration for grouped home stats. * Fix: Allow SSL when verifying server in settings. @@ -1880,18 +1742,16 @@ * Change: Prettier thumbnail popovers on tables. * Change: Star ratings to use css/font-awesome. * Change: More detailed logging info to warnings and errors. -* Change: Better PlexPy process restart handling (Thanks @jackwilsdon) +* Change: Better PlexPy process restart handling \(Thanks @jackwilsdon\) * Change: Massive behind the scenes code cleanup. -* Remove: Built in Pushover API token (User's own API token is now required). +* Remove: Built in Pushover API token \(User's own API token is now required\). - -## v1.2.16 (2015-12-22) +## v1.2.16 \(2015-12-22\) * Fix Most Concurrent stream stat for emtpy databases * Change logs to 50 lines by default - -## v1.2.15 (2015-12-20) +## v1.2.15 \(2015-12-20\) * Fix navbar covering current activity on smaller screens. * Fix metadata for grouped recently added notifications. @@ -1906,39 +1766,32 @@ * Add CC/BCC and multiple recipients to email notification agent. * Add total watch time to history table footer. - -## v1.2.14 (2015-12-07) +## v1.2.14 \(2015-12-07\) * Fix regression with PlexWatch db importer and buffer warnings. - -## v1.2.13 (2015-12-06) +## v1.2.13 \(2015-12-06\) * Fix match newlines between tags in notification text. * Fix current activity not showing on PMS 0.9.12. - -## v1.2.12 (2015-12-06) +## v1.2.12 \(2015-12-06\) * Fix for "too many open files" error. +## v1.2.11 \(2015-12-06\) -## v1.2.11 (2015-12-06) +* Fix more regressions \(sorry\). -* Fix more regressions (sorry). - - -## v1.2.10 (2015-12-06) +## v1.2.10 \(2015-12-06\) * Fix broken count graphs regression. - -## v1.2.9 (2015-12-06) +## v1.2.9 \(2015-12-06\) * Fix and improve text sanitization. - -## v1.2.8 (2015-12-06) +## v1.2.8 \(2015-12-06\) * Fix sanitize player names * Fix recently added notification delay @@ -1952,26 +1805,22 @@ * Add icon for Apple tvOS * Add icon for Microsoft Edge - -## v1.2.7 (2015-11-27) +## v1.2.7 \(2015-11-27\) * Fix IP address option in notifications +## v1.2.6 \(2015-11-27\) -## v1.2.6 (2015-11-27) - -* Fixes for IP logging in PMS < 0.9.14.x. +* Fixes for IP logging in PMS < 0.9.14.x. * Fix issue in plexWatch importer when trying to import item with no ratingKey. +## v1.2.5 \(2015-11-25\) -## v1.2.5 (2015-11-25) - -* Add video_decision and audio_decision to notification options +* Add video\_decision and audio\_decision to notification options * Fix IP address logging * Fix log spam if notifications disabled - -## v1.2.4 (2015-11-24) +## v1.2.4 \(2015-11-24\) * Add filtering by media type in the history table * Add IFTTT notification agent @@ -1979,7 +1828,7 @@ * Add notifications for recently added media * Add notifications for server down and remote access down * Add more metadata to notifications options -* Add IP address to notification options (for PMS 0.9.14 and above) +* Add IP address to notification options \(for PMS 0.9.14 and above\) * Add server uptime to notification options * Add IP address to current activity * Add IPv6 address logging @@ -1995,15 +1844,13 @@ * Change notifications custom body text to larger text box * Change movie/tv logging and notifications into individual options - -## v1.2.3 (2015-10-18) +## v1.2.3 \(2015-10-18\) * Added "remaining time" as notification substitution. * Fix bug on home stats cards. * Fix visual bug on user page. - -## v1.2.2 (2015-10-12) +## v1.2.2 \(2015-10-12\) * Add server discovery on first run. * Add column to tables for Platform. @@ -2016,25 +1863,22 @@ * Fix bug on home stats cards. * Fix bug on activity pane where music details were not shown. +## v1.2.1 \(2015-09-29\) -## v1.2.1 (2015-09-29) +* Fix for possible issue when paused\_counter is null. -* Fix for possible issue when paused_counter is null. - - -## v1.2.0 (2015-09-29) +## v1.2.0 \(2015-09-29\) * Added option to group consecutive plays in the history tables. -* Added option for websocket monitoring (still slightly experimental and disabled by default). -* Added global search option (searches your Plex library). +* Added option for websocket monitoring \(still slightly experimental and disabled by default\). +* Added global search option \(searches your Plex library\). * Added option to update any items that may have had their rating keys changed. * Added option to disable consecutive notifications. * Some visual tweaks and fixes. * Fix bug where monitoring wouldn't start up after first run. * Fix bug showing incorrect transcode decisions for music tracks on history tables. - -## v1.1.10 (2015-09-20) +## v1.1.10 \(2015-09-20\) * Added dedicated settings section for home stats configuration with ability to show/hide selected stats and sections. * Added support for Twitter notifications. @@ -2044,21 +1888,19 @@ * Fix bug with Email notification TLS checkbox when it would be disabled by changing any other settings afterwards. * Fix issue on some Python releases where the webbrowser library isn't included. +## v1.1.9 \(2015-09-14\) -## v1.1.9 (2015-09-14) - -* Another JonnyWong release. I'm going to stop thanking you now ;) +* Another JonnyWong release. I'm going to stop thanking you now ;\) * Add music plays to graphs. * Add info pages for music items. * Add music to user recently watched items. -* Add photo views to Activity pane (photos are not logged). +* Add photo views to Activity pane \(photos are not logged\). * Fix token validation message on Settings page. * Fix some "Mystery" platform names. * Fix paused time be counted for graph data. * Other small bug fixes. - -## v1.1.8 (2015-09-09) +## v1.1.8 \(2015-09-09\) * Add platform images for Windows devices. Thanks @JonnyWong. * Add click-through to PlexWeb preplay page from info page. Thanks @JonnyWong. @@ -2066,8 +1908,7 @@ * Fix tagline bug in PlexWatch db import tool. * Fix home stats text overflow bug. Thanks @JonnyWong. - -## v1.1.7 (2015-09-07) +## v1.1.7 \(2015-09-07\) * Show tagline in info screens for movies. Thanks @JonnyWong. * Add play/pause/buffer icon to activity pane. Thanks @JonnyWong. @@ -2077,8 +1918,7 @@ * Fix text overflow issue on home stats cards. Thanks @JonnyWong. * Fix regression with user friendly name change input in edit screen. Thanks @JonnyWong. - -## v1.1.6 (2015-09-06) +## v1.1.6 \(2015-09-06\) * Home stats cards are now expandable to show multiple items. Configurable in settings. Thanks @JonnyWong. * Completely redesigned media info pages. Thanks @JonnyWong. @@ -2094,13 +1934,11 @@ * Fixed some issues with users page editing. Thanks @JonnyWong. * Fix error page when clicking through to an item that no longer exists. - -## v1.1.5 (2015-08-27) +## v1.1.5 \(2015-08-27\) * Fix git tag being one release behind. - -## v1.1.4 (2015-08-26) +## v1.1.4 \(2015-08-26\) * User info is now editable from the users table. Thanks @JonnyWong. * Improved delete mode for history pages - able to multi-select now. Thanks @JonnyWong. @@ -2111,17 +1949,16 @@ * Fix max width restricting home stats to 1600px. * Fix stream duration parameter for notifications when paused counter is null. +## v1.1.3 \(2015-08-22\) -## v1.1.3 (2015-08-22) - -* Show human readable version info and this cool changelog in Settings -> General. +* Show human readable version info and this cool changelog in Settings -> General. * Add a "delete" mode to the history tables. Toggle it to show a delete button next to each history item. * Two digit season and episode numbers for custom notification messages. Thanks @JonnyWong. * New FreeNAS init script. Thanks @JonnyWong. * Lots of styling improvements! Thanks @JonnyWong. * Graph page remembers last selected options. Thanks @JonnyWong. * New Popular movie homepage stats. Thanks @JonnyWong. -* Add option for duration vs play count on home stats. (Settings -> Extra Settings). Thanks @JonnyWong. +* Add option for duration vs play count on home stats. \(Settings -> Extra Settings\). Thanks @JonnyWong. * Clean up media info pages. Don't show metadata that is missing. Thanks @JonnyWong. * Add clear button to search inputs. Thanks @JonnyWong. * New columns on Users list. Thanks @JonnyWong. @@ -2131,37 +1968,38 @@ * Fixed IP address modal on user history page. * Fixed "invalid date" showing on monthly plays graph. -## v1.1.2 (2015-08-16) +## v1.1.2 \(2015-08-16\) * Fix bug where user refresh would fail under certain circumstances. -## v1.1.1 (2015-08-15) +## v1.1.1 \(2015-08-15\) * Added Most watched movie for home stats. Thanks @jroyal. * Added TV show title to recently added text. Thanks @jroyal. * Fix bug with buffer warnings where notification would trigger continuously after first trigger. * Fix bug where custom avatar URL would get reset on every user refresh. -## v1.1.0 (2015-08-15) +## v1.1.0 \(2015-08-15\) * Add option to disable all history logging per user. * Add option to change user avatar URL. Thanks @jroyal. * Show all users on users table even if they don't yet have history. -* Add option to change time frame of statistics on home page (Settings -> Extra Settings). Thanks @jroyal. +* Add option to change time frame of statistics on home page \(Settings -> Extra Settings\). Thanks @jroyal. * Add 7 day period for graphs. Thanks @jroyal. * Add pause, resume and buffer warning notification options. * Add fine tuning settings for buffer warning triggers. -* Fix issue with SSL cert verification bypass when method doesn't exist (depends on Python version). +* Fix issue with SSL cert verification bypass when method doesn't exist \(depends on Python version\). * Fix bug on home stats which wouldn't update unless a TV show was first logged. * Fix alignment of bands on daily graphs which highlight weekends. * Fix behaviour of close button on update popup, will now stay closed for an hour after clicking close. * Fix some styling niggles. -## v1.0.1 (2015-08-13) +## v1.0.1 \(2015-08-13\) * Allow SSL certificate check override for certain systems with bad CA stores. * Fix typo on graphs page causing date selection to break on Safari. -## v1.0 (2015-08-11) +## v1.0 \(2015-08-11\) + +* First release -* First release \ No newline at end of file diff --git a/CONTRIBUTING.md b/contributing.md similarity index 82% rename from CONTRIBUTING.md rename to contributing.md index a415fb54..702935fd 100644 --- a/CONTRIBUTING.md +++ b/contributing.md @@ -1,41 +1,49 @@ # Contributing to Tautulli ## Pull Requests + If you think you can contribute code to the Tautulli repository, do not hesitate to submit a pull request. ### Branches + All pull requests should be based on the `nightly` branch, to minimize cross merges. When you want to develop a new feature, clone the repository with `git clone origin/nightly -b FEATURE_NAME`. Use meaningful commit messages. ### Python Code #### Compatibility + The code should work with Python 3.6+. Note that Tautulli runs on many different platforms. Re-use existing code. Do not hesitate to add logging in your code. You can the logger module `plexpy.logger.*` for this. Web requests are invoked via `plexpy.request.*` and derived ones. Use these methods to automatically add proper and meaningful error handling. #### Code conventions -Although Tautulli did not adapt a code convention in the past, we try to follow the [PEP8](http://legacy.python.org/dev/peps/pep-0008/) conventions for future code. A short summary to remind you (copied from http://wiki.ros.org/PyStyleGuide): - * 4 space indentation - * 80 characters per line - * `package_name` - * `ClassName` - * `method_name` - * `field_name` - * `_private_something` - * `self.__really_private_field` - * `_global` +Although Tautulli did not adapt a code convention in the past, we try to follow the [PEP8](http://legacy.python.org/dev/peps/pep-0008/) conventions for future code. A short summary to remind you \(copied from [http://wiki.ros.org/PyStyleGuide](http://wiki.ros.org/PyStyleGuide)\): + +* 4 space indentation +* 80 characters per line +* `package_name` +* `ClassName` +* `method_name` +* `field_name` +* `_private_something` +* `self.__really_private_field` +* `_global` #### Documentation + Document your code. Use docstrings See [PEP-257](https://www.python.org/dev/peps/pep-0257/) for more information. ### HTML/Template code #### Compatibility + HTML5 compatible browsers are targeted. #### Conventions + * 4 space indentation * `methodName` * `variableName` * `ClassName` + diff --git a/init-scripts/init.systemd b/init-scripts/init.systemd deleted file mode 100644 index c27b27df..00000000 --- a/init-scripts/init.systemd +++ /dev/null @@ -1,64 +0,0 @@ -# Tautulli - Stats for Plex Media Server usage -# -# Service Unit file for systemd system manager -# -# INSTALLATION NOTES -# -# 1. Copy this file into your systemd service unit directory (often '/lib/systemd/system') -# and name it 'tautulli.service' with the following command: -# cp /opt/Tautulli/init-scripts/init.systemd /lib/systemd/system/tautulli.service -# -# 2. Edit the new tautulli.service file with configuration settings as required. -# More details in the "CONFIGURATION NOTES" section shown below. -# -# 3. Enable boot-time autostart with the following commands: -# systemctl daemon-reload -# systemctl enable tautulli.service -# -# 4. Start now with the following command: -# systemctl start tautulli.service -# -# CONFIGURATION NOTES -# -# - The example settings in this file assume that you will run Tautulli as user: tautulli -# - The example settings in this file assume that Tautulli is installed to: /opt/Tautulli -# -# - To create this user and give it ownership of the Tautulli directory: -# 1. Create the user: -# Ubuntu/Debian: sudo addgroup tautulli && sudo adduser --system --no-create-home tautulli --ingroup tautulli -# CentOS/Fedora: sudo adduser --system --no-create-home tautulli -# 2. Give the user ownership of the Tautulli directory: -# sudo chown -R tautulli:tautulli /opt/Tautulli -# -# - Adjust ExecStart= to point to: -# 1. Your Python interpreter (get the path with "command -v python3") -# - Default: /usr/bin/python3 -# 2. Your Tautulli executable -# - Default: /opt/Tautulli/Tautulli.py -# 3. Your config file (recommended is to put it somewhere in /etc) -# - Default: --config /opt/Tautulli/config.ini -# 4. Your datadir (recommended is to NOT put it in your Tautulli exec dir) -# - Default: --datadir /opt/Tautulli -# -# - Adjust User= and Group= to the user/group you want Tautulli to run as. -# -# - WantedBy= specifies which target (i.e. runlevel) to start Tautulli for. -# multi-user.target equates to runlevel 3 (multi-user text mode) -# graphical.target equates to runlevel 5 (multi-user X11 graphical mode) - -[Unit] -Description=Tautulli - Stats for Plex Media Server usage -Wants=network-online.target -After=network-online.target - -[Service] -ExecStart=/usr/bin/python3 /opt/Tautulli/Tautulli.py --config /opt/Tautulli/config.ini --datadir /opt/Tautulli --quiet --nolaunch -User=tautulli -Group=tautulli -Restart=on-abnormal -RestartSec=5 -StartLimitInterval=90 -StartLimitBurst=3 - -[Install] -WantedBy=multi-user.target