docs: update docs [skip ci]

This commit is contained in:
Jagandeep Brar
2022-04-11 15:14:27 -04:00
parent bb189db3b5
commit fe9ed5e05b
10 changed files with 557 additions and 376 deletions

View File

@@ -13,73 +13,136 @@ Please do not download any releases of LunaSea from any location other than thos
This is the store version and will remain the most stable version. No in-progress features will be deployed to this channel.
- [Android](https://www.lunasea.app/playstore)
- [iOS](https://www.lunasea.app/appstore)
- [Linux](https://www.lunasea.app/snapcraft)
- [macOS](https://www.lunasea.app/testflight/stable)
- [Windows](https://builds.lunasea.app/#/latest/stable/)
- [Web](https://web.lunasea.app)
Stable releases can be downloaded from the [build bucket](https://builds.lunasea.app/#/latest/stable/) or by following the instructions below for each platform:
<Tabs
groupId="platform"
defaultValue="android"
values={[
{ label: "Android", value: "android" },
{ label: "iOS", value: "ios" },
{ label: "macOS", value: "macos" },
{ label: "Linux", value: "linux" },
{ label: "Windows", value: "windows" },
{ label: "Web", value: "web" },
]}
>
<TabItem value="android">
The latest stable release is available on the [Google Play Store](https://www.lunasea.app/playstore).
</TabItem>
<TabItem value="ios">
The latest stable release is available on the [App Store](https://www.lunasea.app/appstore).
</TabItem>
<TabItem value="macos">
1. [Download TestFlight for macOS](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight stable channel](https://www.lunasea.app/testflight/stable)
3. Download LunaSea via the TestFlight application
</TabItem>
<TabItem value="linux">
```bash
sudo snap install lunasea
```
</TabItem>
<TabItem value="windows">
Download the latest stable release from the [build bucket](https://builds.lunasea.app/#/latest/stable/).
</TabItem>
<TabItem value="web">
The latest web release is [available here](https://web.lunasea.app).
</TabItem>
</Tabs>
## Candidate
This channel is focused around _final release candidate testing of completed new features_ leading up to the release to stable. This channel is intended to help catch any remaining bugs from beta builds and overall should remain relatively stable.
#### Android
Candidate releases can be downloaded from the [build bucket](https://builds.lunasea.app/#/latest/candidate/) or by following the instructions below for each platform:
1. Head to the [Google Play Store](https://www.lunasea.app/playstore)
2. Register for the test directly on the store listing
3. Download LunaSea via the Google Play Store
#### iOS/macOS
1. [Download TestFlight](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight channel](https://www.lunasea.app/testflight/candidate)
3. Download LunaSea via the TestFlight application
#### Linux
```bash
sudo snap install lunasea --candidate
```
#### Windows
Download the latest candidate release from the [build bucket](https://builds.lunasea.app/#/latest/candidate/).
#### Web
[Available here](https://candidate.web.lunasea.app).
<Tabs
groupId="platform"
defaultValue="android"
values={[
{ label: "Android", value: "android" },
{ label: "iOS", value: "ios" },
{ label: "macOS", value: "macos" },
{ label: "Linux", value: "linux" },
{ label: "Windows", value: "windows" },
{ label: "Web", value: "web" },
]}
>
<TabItem value="android">
1. Head to the [Google Play Store](https://www.lunasea.app/playstore)
2. Register for the test directly on the store listing
3. Download LunaSea via the Google Play Store
</TabItem>
<TabItem value="ios">
1. [Download TestFlight for iOS](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight candidate channel](https://www.lunasea.app/testflight/candidate)
3. Download LunaSea via the TestFlight application
</TabItem>
<TabItem value="macos">
1. [Download TestFlight for macOS](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight candidate channel](https://www.lunasea.app/testflight/candidate)
3. Download LunaSea via the TestFlight application
</TabItem>
<TabItem value="linux">
```bash
sudo snap install lunasea --candidate
```
</TabItem>
<TabItem value="windows">
Download the latest candidate release from the [build bucket](https://builds.lunasea.app/#/latest/candidate/).
</TabItem>
<TabItem value="web">
The latest candidate web release is [available here](https://candidate.web.lunasea.app).
</TabItem>
</Tabs>
## Beta
This channel's purpose is to allow _early previews and testing of work-in-progress features_. An example is the current localization efforts, so all users who have graciously helped translate pieces of LunaSea over the past few months can start to see their changes in the app! This is just a single example of a work in progress feature, and the feature list will constantly be changing.
this channel is focused around _early previews and testing of work-in-progress features_. This channel is intended to allow users to give feedback to the developer on features that are actively being worked on.
#### Android
Beta releases can be downloaded from the [build bucket](https://builds.lunasea.app/#/latest/beta/) or by following the instructions below for each platform:
1. Join the [LunaSea: Beta Testing](https://groups.google.com/g/lunasea-beta-test) Google Group
2. Head to the [Google Play Store](https://www.lunasea.app/playstore)
3. Register for the test directly on the store listing
4. Download LunaSea via the Google Play Store
#### iOS/macOS
1. [Download TestFlight](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight channel](https://www.lunasea.app/testflight/beta)
3. Download LunaSea via the TestFlight application
#### Linux
```bash
sudo snap install lunasea --beta
```
#### Windows
Download the latest beta release from the [build bucket](https://builds.lunasea.app/#/latest/beta/).
#### Web
[Available here](https://beta.web.lunasea.app).
<Tabs
groupId="platform"
defaultValue="android"
values={[
{ label: "Android", value: "android" },
{ label: "iOS", value: "ios" },
{ label: "macOS", value: "macos" },
{ label: "Linux", value: "linux" },
{ label: "Windows", value: "windows" },
{ label: "Web", value: "web" },
]}
>
<TabItem value="android">
1. Join the [LunaSea: Beta Testing](https://groups.google.com/g/lunasea-beta-test) Google Group
2. Head to the [Google Play Store](https://www.lunasea.app/playstore)
3. Register for the test directly on the store listing
4. Download LunaSea via the Google Play Store
</TabItem>
<TabItem value="ios">
1. [Download TestFlight for iOS](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight beta channel](https://www.lunasea.app/testflight/beta)
3. Download LunaSea via the TestFlight application
</TabItem>
<TabItem value="macos">
1. [Download TestFlight for macOS](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight beta channel](https://www.lunasea.app/testflight/beta)
3. Download LunaSea via the TestFlight application
</TabItem>
<TabItem value="linux">
```bash
sudo snap install lunasea --beta
```
</TabItem>
<TabItem value="windows">
Download the latest beta release from the [build bucket](https://builds.lunasea.app/#/latest/beta/).
</TabItem>
<TabItem value="web">
The latest beta web release is [available here](https://beta.web.lunasea.app).
</TabItem>
</Tabs>
## Edge
@@ -89,28 +152,44 @@ There are no restrictions on features in these builds (barring a very specific s
**Do not expect a fully stable experience if you use these builds**, as it is entirely possible that a single build could cause problems including but not limited to database corruption. If you are running these builds, please ensure you have either a cloud or offline backup available for easy restoration.
#### Android
Edge releases can be downloaded from the [build bucket](https://builds.lunasea.app/#/latest/edge/) or by following the instructions below for each platform:
Because of the limitations on internal testing set by the Google Play Store, develop builds on Android are only available upon request to a very limited amount of users.
<Tabs
groupId="platform"
defaultValue="android"
values={[
{ label: "Android", value: "android" },
{ label: "iOS", value: "ios" },
{ label: "macOS", value: "macos" },
{ label: "Linux", value: "linux" },
{ label: "Windows", value: "windows" },
{ label: "Web", value: "web" },
]}
>
<TabItem value="android">
Because of the limitations on internal testing set by the Google Play Store, develop builds on Android are only available upon request to a very limited amount of users.
Reach out via [email](mailto:hello@lunasea.app) for more information.
#### iOS/macOS
1. [Download TestFlight](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight channel](https://www.lunasea.app/testflight/edge)
3. Download LunaSea via the TestFlight application
#### Linux
```bash
sudo snap install lunasea --edge
```
#### Windows
Download the latest edge release from the [build bucket](https://builds.lunasea.app/#/latest/edge/).
#### Web
[Available here](https://edge.web.lunasea.app).
Reach out via [email](mailto:hello@lunasea.app) for more information.
</TabItem>
<TabItem value="ios">
1. [Download TestFlight](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight edge channel](https://www.lunasea.app/testflight/edge)
3. Download LunaSea via the TestFlight application
</TabItem>
<TabItem value="macos">
1. [Download TestFlight](https://apps.apple.com/app/testflight/id899247664)
2. Join the [TestFlight edge channel](https://www.lunasea.app/testflight/edge)
3. Download LunaSea via the TestFlight application
</TabItem>
<TabItem value="linux">
```bash
sudo snap install lunasea --edge
```
</TabItem>
<TabItem value="windows">
Download the latest edge release from the [build bucket](https://builds.lunasea.app/#/latest/edge/).
</TabItem>
<TabItem value="web">
The latest edge web release is [available here](https://edge.web.lunasea.app).
</TabItem>
</Tabs>

View File

@@ -5,12 +5,32 @@ description: Breaking down LunaSea's built-in on-device logger
# Logs
LunaSea includes an on-device logging system that helps debug crashes, issues, and support requests. LunaSea stores 3 different levels of logs:
LunaSea includes an on-device logging system that helps debug crashes, issues, and support requests. LunaSea stores 4 different levels of logs: **Debug**, **Warning**, **Error**, and **Critical**.
1. **Debug** (_Prerelease Builds Only_): Debug logs are informational logs and messages that are intended to help debug processes.
2. **Warning**: Warning logs are non-crashing and non-critical errors that have occurred on the device. Warning logs would occur when failing to load an image, passing an incorrect encryption key when trying to restore a backup, etc.
3. **Error**: Error logs are non-crashing but critical errors that have occurred on the device. Error logs would occur on network errors, connection issues, errors returned from the module, etc.
4. **Critical**: Fatal logs are crashing errors or unhandled errors that have occurred on the device. Fatal logs would occur when LunaSea fails to complete the boot process, fails to render the UI, etc.
<Tabs
defaultValue="debug"
values={[
{ label: "Debug", value: "debug" },
{ label: "Warning", value: "warning" },
{ label: "Error", value: "error" },
{ label: "Critical", value: "critical" },
]}
>
<TabItem value="debug">
_Debug logs are visible/available on prerelease builds only_
Debug logs are informational logs and messages that are intended to help debug processes.
</TabItem>
<TabItem value="warning">
Warning logs are non-crashing and non-critical errors that have occurred on the device. Warning logs would occur when failing to load an image, passing an incorrect encryption key when trying to restore a backup, etc.
</TabItem>
<TabItem value="error">
Error logs are non-crashing but critical errors that have occurred on the device. Error logs would occur on network errors, connection issues, errors returned from the module, etc.
</TabItem>
<TabItem value="critical">
Fatal logs are crashing errors or unhandled errors that have occurred on the device. Fatal logs would occur when LunaSea fails to complete the boot process, fails to render the UI, etc.
</TabItem>
</Tabs>
## Viewing Log History

View File

@@ -38,13 +38,20 @@ Not all modules are currently supported, below is a list of all supported module
LunaSea supports two different types of notifications: **User-Based** and **Device-Based**.
#### User-Based Notifications
User-based notifications send notifications to all devices that are linked to your LunaSea account. Your device is automatically linked when you register or sign in to your account. This means that any current and future devices that are signed-in to your account will receive notifications automatically.
#### Device-Based Notifications
Device-based notifications send notifications to a single, specific device. Device-based notifications do not require a LunaSea account, but require you to register every device as a new webhook in the module.
<Tabs
defaultValue="user"
values={[
{ label: "User-Based", value: "user" },
{ label: "Device-Based", value: "device" },
]}
>
<TabItem value="user">
User-based notifications send notifications to all devices that are linked to your LunaSea account. Your device is automatically linked when you register or sign in to your account. This means that any current and future devices that are signed-in to your account will receive notifications automatically.
</TabItem>
<TabItem value="device">
Device-based notifications send notifications to a single, specific device. Device-based notifications do not require a LunaSea account, but require you to register every device as a new webhook in the module.
</TabItem>
</Tabs>
## Getting Your Webhook URLs

View File

@@ -15,18 +15,25 @@ To add, delete, or rename a profile, head to Settings -> Profiles. There are a s
There are many ways to switch profiles within LunaSea, but let it be noted that switching profiles clears all state-stored data from memory, and all fetched data will be fully refreshed.
#### Drawer
<Tabs
defaultValue="drawer"
values={[
{ label: "Drawer", value: "drawer" },
{ label: "AppBar", value: "appbar" },
{ label: "Settings", value: "settings" },
]}
>
<TabItem value="drawer">
When you have more than a single profile enabled, the top header of the drawer will show the currently active profile and can be tapped to trigger a dropdown allowing you to select any profile to switch to.
When you have more than a single profile enabled, the top header of the drawer will show the currently active profile and can be tapped to trigger a dropdown allowing you to select any profile to switch to.
When in a module and you switch to a profile that does not have the module enabled, the only option available on that page will be to return to the dashboard.
</TabItem>
<TabItem value="appbar">
When on the home/base route of a module that has another instance enabled in another profile, a dropdown arrow will be displayed beside the module title in the AppBar. Simply tap the module name to get a dropdown list of profiles that have that module enabled.
When in a module and you switch to a profile that does not have the module enabled, the only option available on that page will be to return to the dashboard.
#### AppBar
When on the home/base route of a module that has another instance enabled in another profile, a dropdown arrow will be displayed beside the module title in the AppBar. Simply tap the module name to get a dropdown list of profiles that have that module enabled.
Any additional profiles that do not have the module enabled will not be shown within the dropdown. If you have additional profiles but no profile has that specific module enabled, the dropdown will not be accessible.
#### Settings
You can change your profile within the Settings, either by entering the "Profiles" page and selecting the enabled profile or by entering the "Configuration" page and hitting the profile icon in the AppBar.
Any additional profiles that do not have the module enabled will not be shown within the dropdown. If you have additional profiles but no profile has that specific module enabled, the dropdown will not be accessible.
</TabItem>
<TabItem value="settings">
You can change your profile within the Settings, either by entering the "Profiles" page and selecting the enabled profile or by entering the "Configuration" page and hitting the profile icon in the AppBar.
</TabItem>
</Tabs>

View File

@@ -20,77 +20,93 @@ Alternatively, you can copy the content of the URL after the last slash (after `
Send a custom notification using a device token to a single device running LunaSea.
#### Endpoint
<Tabs
defaultValue="endpoint"
values={[
{ label: "Endpoint", value: "endpoint" },
{ label: "JSON Body Schema", value: "json_body_schema" },
]}
>
<TabItem value="endpoint">
```bash
POST https://notify.lunasea.app/v1/custom/device/:device_id
```
```bash
POST https://notify.lunasea.app/v1/custom/device/:device_id
```
`device_id`: Firebase device identifier
</TabItem>
`device_id`: Firebase device identifier
#### JSON Body Schema
```json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Device-Based Custom Notification",
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The notification title"
<TabItem value="json_body_schema">
```json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "Device-Based Custom Notification",
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The notification title"
},
"body": {
"type": "string",
"description": "The notification body content"
},
"image": {
"type": "string",
"description": "A publicly accessible image to be attached to the notification"
}
},
"body": {
"type": "string",
"description": "The notification body content"
},
"image": {
"type": "string",
"description": "A publicly accessible image to be attached to the notification"
}
},
"required": ["title", "body"]
}
```
"required": ["title", "body"]
}
```
If `title` or `body` are missing in the request, a notification will still be sent but with a default title or body respectively.
If `title` or `body` are missing in the request, a notification will still be sent but with a default title or body respectively.
</TabItem>
</Tabs>
## User-Based
#### Endpoint
<Tabs
defaultValue="endpoint"
values={[
{ label: "Endpoint", value: "endpoint" },
{ label: "JSON Body Schema", value: "json_body_schema" },
]}
>
<TabItem value="endpoint">
```bash
POST https://notify.lunasea.app/v1/custom/user/:user_id
```
```bash
POST https://notify.lunasea.app/v1/custom/user/:user_id
```
`user_id`: Firebase user identifier
</TabItem>
`user_id`: Firebase user identifier
#### JSON Body Schema
```json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "User-Based Custom Notification",
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The notification title"
<TabItem value="json_body_schema">
```json
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"title": "User-Based Custom Notification",
"type": "object",
"properties": {
"title": {
"type": "string",
"description": "The notification title"
},
"body": {
"type": "string",
"description": "The notification body content"
},
"image": {
"type": "string",
"description": "A publicly accessible image to be attached to the notification"
}
},
"body": {
"type": "string",
"description": "The notification body content"
},
"image": {
"type": "string",
"description": "A publicly accessible image to be attached to the notification"
}
},
"required": ["title", "body"]
}
```
"required": ["title", "body"]
}
```
If `title` or `body` are missing in the request, a notification will still be sent but with a default title or body respectively.
If `title` or `body` are missing in the request, a notification will still be sent but with a default title or body respectively.
</TabItem>
</Tabs>
## Troubleshooting

View File

@@ -14,58 +14,70 @@ description: Setting up Lidarr for webhook-based push notifications
In Lidarr's web GUI, head to Settings -> Connect, hit the "+" button to add a new connection and select "Webhook". Please follow each section below to setup the webhook:
#### Name
Select any name, for example "LunaSea".
#### Triggers
Select which events should trigger a push notification. The following triggers are supported:
| Trigger | Supported? |
| :---------------------: | :--------: |
| On Grab | Yes ✅ |
| On Release Import | Yes ✅ |
| On Upgrade | Yes ✅ |
| On Download Failure | No ❌ |
| On Import Failure | No ❌ |
| On Rename | Yes ✅ |
| On Track Retag | Yes ✅ |
| On Application Update | No ❌ |
| On Health Issue | No ❌ |
| Include Health Warnings | No ❌ |
#### Tags
You can **optionally** select a tag that must be attached to an artist for the webhook to get triggered.
This can be useful when working with a large media collection to only receive notifications for content you are actively monitoring.
If you want to receive notifications for all artists, leave the tags area empty.
#### URL
Paste the full device-based or user-based URL that was copied from LunaSea.
Each webhook can support a single user-based or device-based webhook URL. Attaching multiple device-based or user-based webhooks to a single Lidarr instance requires setting up multiple webhooks.
#### Method
Keep the method on "**POST**". Changing the method to "**PUT**" will cause the webhooks to fail.
#### Username
The username field should be an **exact match** to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
<Tabs
defaultValue="name"
values={[
{ label: "Name", value: "name" },
{ label: "Triggers", value: "triggers" },
{ label: "Tags", value: "tags" },
{ label: "URL", value: "url" },
{ label: "Method", value: "method" },
{ label: "Username", value: "username" },
{ label: "Password", value: "password" },
]}
>
> Correctly setting up this field is critically important to get full deep-linking support.
#### Password
<TabItem value="name">
Select any name, for example "LunaSea".
</TabItem>
Leave the password field empty. Setting this field will currently have no effect.
<TabItem value="triggers">
Select which events should trigger a push notification. The following triggers are supported:
---
| Trigger | Supported? |
| :---------------------: | :--------: |
| On Grab | Yes ✅ |
| On Release Import | Yes ✅ |
| On Upgrade | Yes ✅ |
| On Download Failure | No ❌ |
| On Import Failure | No ❌ |
| On Rename | Yes ✅ |
| On Track Retag | Yes ✅ |
| On Application Update | No ❌ |
| On Health Issue | No ❌ |
| Include Health Warnings | No ❌ |
</TabItem>
<TabItem value="tags">
You can _optionally_ select a tag that must be attached to an artist for the webhook to get triggered.
This can be useful when working with a large media collection to only receive notifications for content you are actively monitoring.
If you want to receive notifications for all artists, leave the tags area empty.
</TabItem>
<TabItem value="url">
Paste the full device-based or user-based URL that was copied from LunaSea.
Each webhook can support a single user-based or device-based webhook URL. Attaching multiple device-based or user-based webhooks to a single Lidarr instance requires setting up multiple webhooks.
</TabItem>
<TabItem value="method">
Keep the method on `POST`. Changing the method to `PUT` will cause the webhooks to fail.
</TabItem>
<TabItem value="username">
The username field should be an _exact match_ to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
>
> Correctly setting up this field is critically important to get full deep-linking support.
</TabItem>
<TabItem value="password">
Leave the password field empty. Setting this field will currently have no effect.
</TabItem>
</Tabs>
Once setup, close LunaSea and run the webhook test in Lidarr. You should receive a new notification letting you know that LunaSea is ready to receive Lidarr notifications!

View File

@@ -14,38 +14,46 @@ description: Setting up Overseerr for webhook-based push notifications
In Overseerr's web GUI, head to Settings -> Notifications -> LunaSea. Ensure that the agent is enabled, then follow each section below to setup the webhook:
#### Webhook URL
Paste the full device-based or user-based URL that was copied from LunaSea.
Overseerr currently only supports 1 LunaSea notification agent, which means you can only setup a single user-based or device-based notification.
#### Profile Name
The profile name field should be an **exact match** to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
<Tabs
defaultValue="webhook_url"
values={[
{ label: "Webhook URL", value: "webhook_url" },
{ label: "Profile Name", value: "profile_name" },
{ label: "Notification Types", value: "notification_types" },
]}
>
> Correctly setting up this field is critically important to get full deep-linking support.
#### Notification Types
<TabItem value="webhook_url">
Paste the full device-based or user-based URL that was copied from LunaSea.
Select which events should trigger a push notification. The following triggers are supported:
Overseerr currently only supports 1 LunaSea notification agent, which means you can only setup a single user-based or device-based notification.
</TabItem>
| Trigger | Supported? |
| :----------------------------: | :--------: |
| Request Pending Approval | Yes ✅ |
| Request Automatically Approved | Yes ✅ |
| Request Approved | Yes ✅ |
| Request Declined | Yes ✅ |
| Request Available | Yes ✅ |
| Request Processing Failed | Yes ✅ |
| Issue Reported | Yes ✅ |
| Issue Comment | Yes ✅ |
| Issue Resolved | Yes ✅ |
| Issue Reopened | Yes ✅ |
<TabItem value="profile_name">
The profile name field should be an _exact match_ to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
---
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
>
> Correctly setting up this field is critically important to get full deep-linking support.
</TabItem>
<TabItem value="notification_types">
Select which events should trigger a push notification. The following triggers are supported:
| Trigger | Supported? |
| :----------------------------: | :--------: |
| Request Pending Approval | Yes ✅ |
| Request Automatically Approved | Yes ✅ |
| Request Approved | Yes ✅ |
| Request Declined | Yes ✅ |
| Request Available | Yes ✅ |
| Request Processing Failed | Yes ✅ |
| Issue Reported | Yes ✅ |
| Issue Comment | Yes ✅ |
| Issue Resolved | Yes ✅ |
| Issue Reopened | Yes ✅ |
</TabItem>
</Tabs>
Once setup, close LunaSea and run the webhook test in Overseerr. You should receive a new notification letting you know that LunaSea is ready to receive Overseerr notifications!

View File

@@ -14,58 +14,70 @@ description: Setting up Radarr for webhook-based push notifications
In Radarr's web GUI, head to Settings -> Connect, hit the "+" button to add a new connection and select "Webhook". Please follow each section below to setup the webhook:
#### Name
Select any name, for example "LunaSea".
#### Triggers
Select which events should trigger a push notification. The following triggers are supported:
| Trigger | Supported? |
| :------------------------------: | :--------: |
| On Grab | Yes ✅ |
| On Import | Yes ✅ |
| On Upgrade | Yes ✅ |
| On Rename | Yes ✅ |
| On Movie Delete | No ❌ |
| On Movie File Delete | No ❌ |
| On Movie File Delete For Upgrade | No ❌ |
| On Health Issue | Yes ✅ |
| Include Health Warnings | Yes ✅ |
| On Application Update | No ❌ |
#### Tags
You can **optionally** select a tag that must be attached to a movie for the webhook to get triggered.
This can be useful when working with a large media collection to only receive notifications for content you are actively monitoring.
If you want to receive notifications for all movies, leave the tags area empty.
#### URL
Paste the full device-based or user-based URL that was copied from LunaSea.
Each webhook can support a single user-based or device-based webhook URL. Attaching multiple device-based or user-based webhooks to a single Radarr instance requires setting up multiple webhooks.
#### Method
Keep the method on "**POST**". Changing the method to "**PUT**" will cause the webhooks to fail.
#### Username
The username field should be an **exact match** to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
<Tabs
defaultValue="name"
values={[
{ label: "Name", value: "name" },
{ label: "Triggers", value: "triggers" },
{ label: "Tags", value: "tags" },
{ label: "URL", value: "url" },
{ label: "Method", value: "method" },
{ label: "Username", value: "username" },
{ label: "Password", value: "password" },
]}
>
> Correctly setting up this field is critically important to get full deep-linking support.
#### Password
<TabItem value="name">
Select any name, for example "LunaSea".
</TabItem>
Leave the password field empty. Setting this field will currently have no effect.
<TabItem value="triggers">
Select which events should trigger a push notification. The following triggers are supported:
---
| Trigger | Supported? |
| :------------------------------: | :--------: |
| On Grab | Yes ✅ |
| On Import | Yes ✅ |
| On Upgrade | Yes ✅ |
| On Rename | Yes ✅ |
| On Movie Delete | No ❌ |
| On Movie File Delete | No ❌ |
| On Movie File Delete For Upgrade | No ❌ |
| On Health Issue | Yes ✅ |
| Include Health Warnings | Yes ✅ |
| On Application Update | No ❌ |
</TabItem>
<TabItem value="tags">
You can _optionally_ select a tag that must be attached to a movie for the webhook to get triggered.
This can be useful when working with a large media collection to only receive notifications for content you are actively monitoring.
If you want to receive notifications for all movies, leave the tags area empty.
</TabItem>
<TabItem value="url">
Paste the full device-based or user-based URL that was copied from LunaSea.
Each webhook can support a single user-based or device-based webhook URL. Attaching multiple device-based or user-based webhooks to a single Radarr instance requires setting up multiple webhooks.
</TabItem>
<TabItem value="method">
Keep the method on `POST`. Changing the method to `PUT` will cause the webhooks to fail.
</TabItem>
<TabItem value="username">
The username field should be an _exact match_ to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
>
> Correctly setting up this field is critically important to get full deep-linking support.
</TabItem>
<TabItem value="password">
Leave the password field empty. Setting this field will currently have no effect.
</TabItem>
</Tabs>
Once setup, close LunaSea and run the webhook test in Radarr. You should receive a new notification letting you know that LunaSea is ready to receive Radarr notifications!

View File

@@ -14,58 +14,70 @@ description: Setting up Sonarr for webhook-based push notifications
In Sonarr's web GUI, head to Settings -> Connect, hit the "+" button to add a new connection and select "Webhook". Please follow each section below to setup the webhook:
#### Name
Select any name, for example "LunaSea".
#### Triggers
Select which events should trigger a push notification. The following triggers are supported:
| Trigger | Supported? |
| :--------------------------------: | :--------: |
| On Grab | Yes ✅ |
| On Import | Yes ✅ |
| On Upgrade | Yes ✅ |
| On Rename | Yes ✅ |
| On Series Delete | No ❌ |
| On Episode File Delete | No ❌ |
| On Episode File Delete For Upgrade | No ❌ |
| On Health Issue | Yes ✅ |
| Include Health Warnings | Yes ✅ |
| On Application Update | No ❌ |
#### Tags
You can **optionally** select a tag that must be attached to a series for the webhook to get triggered.
This can be useful when working with a large media collection to only receive notifications for content you are actively monitoring.
If you want to receive notifications for all series, leave the tags area empty.
#### URL
Paste the full device-based or user-based URL that was copied from LunaSea.
Each webhook can support a single user-based or device-based webhook URL. Attaching multiple device-based or user-based webhooks to a single Sonarr instance requires setting up multiple webhooks.
#### Method
Keep the method on "**POST**". Changing the method to "**PUT**" will cause the webhooks to fail.
#### Username
The username field should be an **exact match** to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
<Tabs
defaultValue="name"
values={[
{ label: "Name", value: "name" },
{ label: "Triggers", value: "triggers" },
{ label: "Tags", value: "tags" },
{ label: "URL", value: "url" },
{ label: "Method", value: "method" },
{ label: "Username", value: "username" },
{ label: "Password", value: "password" },
]}
>
> Correctly setting up this field is critically important to get full deep-linking support.
#### Password
<TabItem value="name">
Select any name, for example "LunaSea".
</TabItem>
Leave the password field empty. Setting this field will currently have no effect.
<TabItem value="triggers">
Select which events should trigger a push notification. The following triggers are supported:
---
| Trigger | Supported? |
| :--------------------------------: | :--------: |
| On Grab | Yes ✅ |
| On Import | Yes ✅ |
| On Upgrade | Yes ✅ |
| On Rename | Yes ✅ |
| On Series Delete | No ❌ |
| On Episode File Delete | No ❌ |
| On Episode File Delete For Upgrade | No ❌ |
| On Health Issue | Yes ✅ |
| Include Health Warnings | Yes ✅ |
| On Application Update | No ❌ |
</TabItem>
<TabItem value="tags">
You can _optionally_ select a tag that must be attached to a series for the webhook to get triggered.
This can be useful when working with a large media collection to only receive notifications for content you are actively monitoring.
If you want to receive notifications for all series, leave the tags area empty.
</TabItem>
<TabItem value="url">
Paste the full device-based or user-based URL that was copied from LunaSea.
Each webhook can support a single user-based or device-based webhook URL. Attaching multiple device-based or user-based webhooks to a single Sonarr instance requires setting up multiple webhooks.
</TabItem>
<TabItem value="method">
Keep the method on `POST`. Changing the method to `PUT` will cause the webhooks to fail.
</TabItem>
<TabItem value="username">
The username field should be an _exact match_ to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
>
> Correctly setting up this field is critically important to get full deep-linking support.
</TabItem>
<TabItem value="password">
Leave the password field empty. Setting this field will currently have no effect.
</TabItem>
</Tabs>
Once setup, close LunaSea and run the webhook test in Sonarr. You should receive a new notification letting you know that LunaSea is ready to receive Sonarr notifications!

View File

@@ -14,58 +14,66 @@ description: Setting up Tautulli for webhook-based push notifications
In Tautulli's web GUI, head to Settings -> Notification Agents, hit the "Add a new notification agent" button and select "LunaSea". Please follow each section below to setup the webhook:
#### Configuration
**LunaSea Webhook URL**
Paste the full device-based or user-based URL that was copied from LunaSea.
**LunaSea Profile**
Enter in the name of the profile which should be an **exact match** to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
<Tabs
defaultValue="configuration"
values={[
{ label: "Configuration", value: "configuration" },
{ label: "Triggers", value: "triggers" },
{ label: "Conditions", value: "conditions" },
{ label: "Text", value: "text" },
]}
>
> Correctly setting up this field is critically important to get full deep-linking support.
<TabItem value="configuration">
**LunaSea Webhook URL**
#### Triggers
Paste the full device-based or user-based URL that was copied from LunaSea.
Select which events should trigger a push notification. The following triggers are supported:
**LunaSea Profile**
| Trigger | Supported? |
| :--------------------------: | :--------: |
| Playback Start | Yes ✅ |
| Playback Stop | Yes ✅ |
| Playback Pause | Yes ✅ |
| Playback Resume | Yes ✅ |
| Playback Error | Yes ✅ |
| Transcode Decision Change | Yes ✅ |
| Watched | Yes ✅ |
| Buffer Warning | Yes ✅ |
| User Concurrent Streams | Yes ✅ |
| User New Device | Yes ✅ |
| Recently Added | Yes ✅ |
| Plex Server Down | Yes ✅ |
| Plex Server Back Up | Yes ✅ |
| Plex Remote Access Down | Yes ✅ |
| Plex Remote Access Back Up | Yes ✅ |
| Plex Update Available | Yes ✅ |
| Tautulli Update Available | Yes ✅ |
| Tautulli Database Corruption | Yes ✅ |
Enter in the name of the profile which should be an _exact match_ to the profile that this module instance was added to within LunaSea. Capitalization and punctuation does matter.
#### Conditions
> This step is only required if you are not using the default LunaSea profile (`default`). LunaSea will assume the default profile when none is supplied.
>
> Correctly setting up this field is critically important to get full deep-linking support.
</TabItem>
You can _optionally_ add conditions that must be met for the webhook notifications to trigger.
<TabItem value="triggers">
Select which events should trigger a push notification. The following triggers are supported:
You can set as many conditions as you like, and can combine different conditions for different triggers by adding separate webhooks to Tautulli.
| Trigger | Supported? |
| :--------------------------: | :--------: |
| Playback Start | Yes ✅ |
| Playback Stop | Yes ✅ |
| Playback Pause | Yes ✅ |
| Playback Resume | Yes ✅ |
| Playback Error | Yes ✅ |
| Transcode Decision Change | Yes ✅ |
| Watched | Yes ✅ |
| Buffer Warning | Yes ✅ |
| User Concurrent Streams | Yes ✅ |
| User New Device | Yes ✅ |
| Recently Added | Yes ✅ |
| Plex Server Down | Yes ✅ |
| Plex Server Back Up | Yes ✅ |
| Plex Remote Access Down | Yes ✅ |
| Plex Remote Access Back Up | Yes ✅ |
| Plex Update Available | Yes ✅ |
| Tautulli Update Available | Yes ✅ |
| Tautulli Database Corruption | Yes ✅ |
</TabItem>
#### Text
<TabItem value="conditions">
You can _optionally_ add conditions that must be met for the webhook notifications to trigger.
A default message is set for all trigger types, but on this page you can alter the exact text that would appear in the message.
You can set as many conditions as you like, and can combine different conditions for different triggers by adding separate webhooks to Tautulli.
</TabItem>
Please read the top of this tab in Tautulli about how to utilize the different modifiers.
<TabItem value="text">
A default message is set for all trigger types, but on this page you can alter the exact text that would appear in the message.
---
Please read the top of this tab in Tautulli about how to utilize the different modifiers.
</TabItem>
</Tabs>
Once setup, close LunaSea and run the webhook test in Tautulli. You should receive a new notification letting you know that LunaSea is ready to receive Tautulli notifications!