Skip to content

Commit

Permalink
Merge pull request #107 from mdrxy/main
Browse files Browse the repository at this point in the history
Resolve #106 + other small details
  • Loading branch information
BusterNeece authored Aug 23, 2024
2 parents 4f9c8d8 + ae2da9d commit 2ff1cc7
Show file tree
Hide file tree
Showing 21 changed files with 131 additions and 104 deletions.
2 changes: 2 additions & 0 deletions src/content/docs/docs/administration/cloudflare.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,6 +23,7 @@ The default settings for Cloudflare will suffice, though you can also switch fro
Once you've enabled Cloudflare support for your domain (or radio station's subdomain) from the Cloudflare control panel, you only need to enable one feature inside AzuraCast to enable listeners to connect:

### Enabling the Web Proxy for Radio Broadcasts

One major limitation imposed by Cloudflare is that they do not forward incoming connections to your server that don't come from the traditional web ports (that is, 80 and 443). By default, AzuraCast serves each radio station on its own distinct port in a range from 8000 to 9000. This means your listeners wouldn't normally be able to connect.

![cloudflare_proxy.png](../images/cloudflare/cloudflare_proxy.png)
Expand All @@ -44,6 +45,7 @@ To create a new Page Rule:
5) Click "Save and Deploy Page Rule" at the bottom of the page.

Repeat these steps for all of the following patterns:

- `/radio/*`
- `/listen/*`
- `/hls/*`
Expand Down
54 changes: 32 additions & 22 deletions src/content/docs/docs/administration/command-line-interface.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ This section will cover all account related CLI commands and the response the CL

### List all accounts

```
```bash
(cli_command) azuracast:account:list

AzuraCast User Accounts
Expand All @@ -54,9 +54,9 @@ AzuraCast User Accounts
---------------- ------ --------------------- -------------------
```

### Create a unique login recovery URL for the specified account.
### Create a unique login recovery URL for the specified account

```
``` bash
(cli_command) azuracast:account:login-token [example]

Generate Account Login Recovery URL
Expand All @@ -69,9 +69,9 @@ Generate Account Login Recovery URL
Log in using this temporary URL and set a new password using the web interface.
```

### Reset the password of the specified account.
### Reset the password of the specified account

```
``` bash
(cli_command) azuracast:account:reset-password [example]

Reset Account Password
Expand All @@ -84,9 +84,9 @@ Reset Account Password
Log in using this temporary password and set a new password using the web interface.
```

### Set the account specified as a global administrator.
### Set the account specified as a global administrator

```
```bash
(cli_command) azuracast:account:set-administrator [example]

Set Administrator
Expand All @@ -97,66 +97,76 @@ Set Administrator

## API Related CLI Commands

This section will cover our API related command(s), this'll be related to your AzuraCast's API.
This section will cover our API related command(s), this'll be related to your AzuraCast's API.

### Regenerate AzuraCast's API documentation.
### Regenerate AzuraCast's API documentation

```
```bash
(cli_command) azuracast:api:docs

API documentation updated!
```

This command should be used when you're on a development, production or testing machine and you're making modifications to the API, this will update your API accordingly (domain/api)

## Internal CLI Commands

This section will cover our internal processes, such as Liquidsoap, SSL and SFTP authentication.
This section will cover our internal processes, such as Liquidsoap, SSL and SFTP authentication.

### Get the external IP address for this instance

```
```bash
(cli_command) azuracast:internal:ip

[example]
```
Running this command will return the IP of this machine.

Running this command will return the IP of this machine.

### Handle Liquidsoap API calls

```
```bash
(cli_command) azuracast:internal:liquidsoap [example] [example]
```
This command can run various Liquidsoap API calls, this is primarily used for debugging or development purposes.

### Reload broadcast frontends when an SSL certificate changes
```

```bash
(cli_command) azuracast:internal:on-ssl-renewal
```

### Attempt SFTP Authentication
```

```bash
(cli_command) azuracast:internal:sftp-auth
```

### Send upcoming song feedback from the AutoDJ back to AzuraCast.
```
### Send upcoming song feedback from the AutoDJ back to AzuraCast

```bash
(cli_command) azuracast:internal:sftp-event
```

## AzuraCast Settings CLI Commands

This section will cover our internal internal settings ranging from base URL to smtp. This can be used should you be locked out of the settings or unable to access AzuraCast directly from the browser.

### List all settings for AzuraCast
```

```bash
(cli_command) azuracast:settings:list
```
This command will return all the settings you can modify via the Command Line Interface, which will be shown in the next field.

This command will return all the settings you can modify via the Command Line Interface, which will be shown in the next field.

### Modify settings for AzuraCast
```

```bash
(cli_command) azuracast:settings:set [example] [example]
```
The `setting-key` parameter can be collected from the `settings:list` CLI command, this command will allow you to modify almost all portions of AzuraCast's settings, this is useful should you be having issues with misconfigured settings.

The `setting-key` parameter can be collected from the `settings:list` CLI command, this command will allow you to modify almost all portions of AzuraCast's settings, this is useful should you be having issues with misconfigured settings.

### Manually Run AzuraCast Setup

Expand Down
6 changes: 5 additions & 1 deletion src/content/docs/docs/administration/customization.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,9 +22,11 @@ $(document).on('now-playing', function(np_new) {
```

### Example: Video Playback for Public Page
You can use `Custom JS for Public Pages` to add a video element to the page and style via the `Custom CSS for Public Pages` using our example below.

You can use `Custom JS for Public Pages` to add a video element to the page and style via the `Custom CSS for Public Pages` using our example below.

**Custom CSS for Public Pages**

```css
[data-theme] body.page-minimal .background-video {
width: 100vw;
Expand All @@ -38,7 +40,9 @@ You can use `Custom JS for Public Pages` to add a video element to the page and
z-index: -1;
}
```

**Custom JS for Public Pages**

```javascript
let videoBackgroundElement = document.createElement('video');
videoBackgroundElement.autoplay = true;
Expand Down
20 changes: 10 additions & 10 deletions src/content/docs/docs/administration/docker.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,14 +25,14 @@ If you've recently followed the [Docker installation instructions](/docs/getting

If you have an older installation, you can use the Docker Utility Script by running these commands inside your AzuraCast directory on your host computer:

```
```bash
curl -L https://raw.githubusercontent.com/AzuraCast/AzuraCast/main/docker.sh > docker.sh
chmod a+x docker.sh
```

### Run Command Line Tools

```
```bash
./docker.sh cli [command_name]
```

Expand All @@ -42,15 +42,15 @@ Runs any command exposed by the command line interface tools.

### Install AzuraCast

```
```bash
./docker.sh install
```

Pulls the latest version of all Docker images and sets up the AzuraCast database. When complete, your AzuraCast instance should be up and running.

### Update AzuraCast

```
```bash
./docker.sh update-self
./docker.sh update
```
Expand All @@ -61,7 +61,7 @@ Automatically pulls down any updated Docker images and applies any database and

### Uninstall AzuraCast

```
```bash
./docker.sh uninstall
```

Expand All @@ -73,15 +73,15 @@ This command will fully remove any station media, statistics and metrics, and th

### Back Up Files and Settings

```
```bash
./docker.sh backup [/path/to/backup.tar.gz]
```

Creates a .tar.gz backup copy of the media, statistics and metrics of every station, along with a copy of the full AzuraCast database. You can later restore from this same file in the event of data loss or corruption.

### Restore Files and Settings

```
```bash
./docker.sh restore /path/to/backup.tar.gz
```

Expand Down Expand Up @@ -143,7 +143,7 @@ There are some considerations when creating your own `docker-compose.override.ym

Once you've modified your Docker Compose configuration, you should apply these changes by running:

```sh
```bash
docker-compose down
docker-compose up -d
```
Expand Down Expand Up @@ -171,7 +171,7 @@ To override more complex functionality in your Docker installation, see the "Cus
# Expanding the Station Port Range

:::tip
Installations running version 0.16.0 or higher can now use our installation script to customizez ports via the terminal which will automatically write the changes into the `docker-compose.yml` file for you.
Installations running version 0.16.0 or higher can now use our installation script to customizez ports via the terminal which will automatically write the changes into the `docker-compose.yml` file for you.
:::

For performance reasons, by default Docker installations only open radio ports from port 8000 to 8500. This allows for 50 unique stations to operate.
Expand Down Expand Up @@ -339,7 +339,7 @@ You should increase the value until the error dissappears.

The `M` after the value stands for `Megabytes`.

Refer to the following page for more information about the allowed values for this setting: https://www.php.net/manual/docs/faq.using.php#faq.using.shorthandbytes
Refer to [PHP's documentation](https://www.php.net/manual/docs/faq.using.php#faq.using.shorthandbytes) for more information about the allowed values for this setting.

After you have changed this setting you need to restart AzuraCast via `docker-compose down && docker-compose up -d`.

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ AzuraCast has a highly granular Access Control List (ACL) system that allows you

In summary, you can think of the access control list as working this way:

- One or more **Users** can be in a **Role**.
- One or more **Users** can be in a **Role**.
- Each **Role** has one or more **Permissions**, which gives everyone in that Role that level of access. Permissions can either be specific to a single station, or global for the entire installation.

The Roles & Permissions page has protections in place to prevent users from accidentally denying themselves permissions to the Permissions page itself.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ To enable LetsEncrypt, follow these steps:
The HTTPS certificate will automatically be generated in the next few minutes, but you can do it manually by clicking the "Create/Renew Certificate" button under the LetsEncrypt fields.

:::tip
If users are still having issues with audio not playing, please ensure you have the "Use Web Proxy" option enabled in your System Settings.
If users are still having issues with audio not playing, please ensure you have the "Use Web Proxy" option enabled in your System Settings.
:::

### Renewing a Let's Encrypt Certificate
Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/docs/administration/sync-tasks.md
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@ SYNC_LONG_EXECUTION_TIME=2200

After changing these entries restart your AzuraCast installation via:

```
```bash
docker-compose down
docker-compose up -d
```
Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/docs/developers/apis.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@ Once installed and running, AzuraCast exposes an API that allows you to monitor

Each AzuraCast installation includes documentation for the API at the exact version it's currently using. In our public documentation, we include the API as of the latest Rolling Release version.

- [/api](View API Documentation)
- [View API Documentation](/api)

## API Authentication

Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/docs/developers/getting-started.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ Using Git, clone the AzuraCast core repository into a subfolder of your working

> **Note for Windows developers:** Before cloning the repositories, you should ensure your Git is locally configured to not automatically convert line endings from Linux style (LF) to Windows style (CRLF), which will break AzuraCast. You can set this globally by running:
>
> ```sh
> ```bash
> git config --global core.autocrlf input
> ```
Expand Down
1 change: 1 addition & 0 deletions src/content/docs/docs/developers/now-playing-data.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,6 +13,7 @@ sidebar:
The most important and frequently accessed pieces of information that AzuraCast stores are all served as part of a single group of data, which we refer to as the "Now Playing" data.

This data includes:

- Basic information about the station, its mount points and remote relays;
- Current listener counts, including total and unique listeners;
- The currently playing song, including a timestamp of when it was started, and whether it came from a playlist, request, or live source;
Expand Down
2 changes: 1 addition & 1 deletion src/content/docs/docs/developers/plugins.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ AzuraCast contains a plugin system that can be used to extend AzuraCast without

## Example Plugin

We have built an example plugin that you should use as the base for your own plugin. You can find the git repository at:
We have built an example plugin that you should use as the base for your own plugin. You can find the git repository at:

https://github.com/AzuraCast/example-plugin

Expand Down
6 changes: 3 additions & 3 deletions src/content/docs/docs/getting-started/installation/windows.md
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ When running the installer, you will be prompted to automatically set up your Wi

Once WSL2 is installed and configured, and Docker Desktop is up and running, open a terminal window and type the following command:

```
```bash
wsl --set-default-version 2
```

Expand All @@ -44,13 +44,13 @@ For convenience, you can set the newly installed distribution as your "default"

You can list the names of all installed WSL2 distributions by running:

```
```bash
wsl --list
```

To set one as your default, enter its name in the command below. If you followed the recommendations here and used Ubuntu, you can run this command:

```
```bash
wsl --set-default Ubuntu
```

Expand Down
10 changes: 6 additions & 4 deletions src/content/docs/docs/getting-started/requirements.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,17 +17,19 @@ AzuraCast does not ensure, and is not liable for, music licenses and royalties p
## 🖥️ System Requirements

### Minimum Requirements

- A 64-bit x86 (x86_64/amd64) or ARM64 CPU
- at least 2GB of RAM
- 20GB or greater of hard drive space
- A computer/server capable of running Docker

For Linux hosts, the `sudo`, `curl` and `git` packages should be installed before installing AzuraCast. Most Linux distributions include these packages already. This is the barest of minimum to run AzuraCast, there's no guarantees it will run perfectly.
For Linux hosts, the `sudo`, `curl` and `git` packages should be installed before installing AzuraCast. Most Linux distributions include these packages already. This is the barest of minimum to run AzuraCast, there's no guarantees it will run perfectly.

### Recommended Requirements

- 4 CPU cores
- 4GB of ram.
- 40 GB or greater of hard drive space
- 4GB of ram
- 40 GB or greater of hard drive space
- A computer/server capable of running Docker

Recommeneded Requirements should allow you to run a few stations with ease, this is aimed for hobby usage (5 to 10 stations). [If you wish to increase the memory even further, consult this guide on Swap Space](https://www.digitalocean.com/community/tutorials/how-to-add-swap-space-on-ubuntu-20-04)
Expand All @@ -42,7 +44,7 @@ We strongly recommend one of the following distributions and versions for your A

- Ubuntu 22.04 LTS (Docker only)
- Ubuntu 20.04 LTS (Ansible / Docker)
- Ubuntu 18.04 LTS (Docker only)
- Ubuntu 18.04 LTS (Docker only)
- Debian 10 "Buster" (Ansible / Docker)
- Debian 9 "Stretch" (Ansible / Docker)
- MacOS - Using Docker Desktop
Expand Down
Loading

0 comments on commit 2ff1cc7

Please sign in to comment.