Version 6.1.2

This commit is contained in:
Chrystian Huot 2022-01-05 15:46:35 -05:00
parent 79827e3619
commit 7b527b1b00
25 changed files with 185 additions and 133 deletions

View file

@ -13,6 +13,14 @@ _v6.1.1_
- Fix `unknown datetime format sql.NullString` error.
_v6.1.2_
- Fix image links in webapp.md (issue #76).
- Fix SIGSEGV when trying to autopopulate (issue #77).
- Fix parsing SDRTrunk meta data.
- Dirwatch type trunk-recorder now deletes json files without audio (when deleteAfter is set).
- Add a new `docs/update-from-v5.md` document.
## Version 6.0
- Backend server rewritten in Go for better performance and ease of installation.

View file

@ -24,13 +24,13 @@ Clone the official repository on your computer and start the build process.
When finished, you will find the precompiled versions for various platforms in the `dist` folder.
rdio-scanner-darwin-amd64-v6.1.1.zip
rdio-scanner-darwin-arm64-v6.1.1.zip
rdio-scanner-freebsd-amd64-v6.1.1.zip
rdio-scanner-linux-386-v6.1.1.zip
rdio-scanner-linux-amd64-v6.1.1.zip
rdio-scanner-linux-arm64-v6.1.1.zip
rdio-scanner-linux-arm-v6.1.1.zip
rdio-scanner-windows-amd64-v6.1.1.zip
rdio-scanner-darwin-amd64-v6.1.2.zip
rdio-scanner-darwin-arm64-v6.1.2.zip
rdio-scanner-freebsd-amd64-v6.1.2.zip
rdio-scanner-linux-386-v6.1.2.zip
rdio-scanner-linux-amd64-v6.1.2.zip
rdio-scanner-linux-arm64-v6.1.2.zip
rdio-scanner-linux-arm-v6.1.2.zip
rdio-scanner-windows-amd64-v6.1.2.zip
**Happy Rdio scanning !**

View file

@ -16,8 +16,8 @@
################################################################################
app := rdio-scanner
date := 2022/01/04
ver := 6.1.1
date := 2022/01/05
ver := 6.1.2
client := $(wildcard client/*.json client/*.ts)
server := $(wildcard server/*.go)

View file

@ -30,6 +30,8 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
More detailed instructions are available in the `rdio-scanner.pdf` file provided in the precompiled archives.
If you are updating from version 5, please refer to [docs/update-from-v5.md](docs/update-from-v5.md) before proceeding.
# Need help ?
You can ask your questions or post your comments on the [Rdio Scanner Discussions](https://github.com/chuot/rdio-scanner/discussions) at **[https://github.com/chuot/rdio-scanner/discussions](https://github.com/chuot/rdio-scanner/discussions)** or on the [Gitter Rdio Scanner Lobby](https://gitter.im/rdio-scanner/Lobby) at **[https://gitter.im/rdio-scanner/Lobby](https://gitter.im/rdio-scanner/Lobby)**.

View file

@ -39,5 +39,5 @@
"build": "ng build --base-href ./ --configuration production",
"start": "ng serve"
},
"version": "6.1.1"
"version": "6.1.2"
}

View file

@ -32,7 +32,7 @@ export class AppUpdateService {
) {
if (swUpdate.isEnabled) {
swUpdate.versionUpdates.subscribe(() => this.prompt());
setInterval(() => swUpdate.checkForUpdate(), 5 * 60 * 1000);
setInterval(() => swUpdate.checkForUpdate(), 60 * 60 * 1000);
}
}

View file

@ -12,4 +12,8 @@ A: Due to the ACME protocol used by Let's Encrypt, ports 80 and 443 must be open
A: No problem, just drop us a line at **[rdio-scanner@saubeo.solutions](mailto:rdio-scanner@saubeo.solutions)** and we'll make sure to add the relevant information in this document in the next release. In the meantime, You can ask your questions on the [Rdio Scanner Discussions](https://github.com/chuot/rdio-scanner/discussions) at **[https://github.com/chuot/rdio-scanner/discussions](https://github.com/chuot/rdio-scanner/discussions)** or on the [Gitter Rdio Scanner Lobby](https://gitter.im/rdio-scanner/Lobby) at **[https://gitter.im/rdio-scanner/Lobby](https://gitter.im/rdio-scanner/Lobby)**.
**Q: How do I update to version 6 from version 5**
A: First, don't use the update.js script, it won't work since the server portion of version 6 as been completely rewritten in GO. Simply unzip the archive that contains the Rdio Scanner executable and its PDF document to a new folder, then copy the database.sqlite from version 5 to the new folder that contains version 6 and make sure to rename it to _rdio-scanner.db_.
\pagebreak{}

View file

@ -42,8 +42,8 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
rdio@macos ~ % mkdir rdio-scanner
rdio@macos ~ % cd rdio-scanner
rdio@macos rdio-scanner % unzip \
> ~/Downloads/rdio-scanner-darwin-arm64-v6.1.1.zip
Archive: /Users/rdio/Downloads/rdio-scanner-darwin-arm64-v6.1.1.zip
> ~/Downloads/rdio-scanner-darwin-arm64-v6.1.2.zip
Archive: /Users/rdio/Downloads/rdio-scanner-darwin-arm64-v6.1.2.zip
inflating: rdio-scanner
inflating: rdio-scanner.pdf
@ -51,11 +51,11 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
rdio@macos rdio-scanner % ./rdio-scanner
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 08:38:06 server started
2022/01/04 08:38:06 main interface at http://macos.local:3000
2022/01/04 08:38:06 admin interface at http://macos.local:3000/admin
2022/01/05 08:38:06 server started
2022/01/05 08:38:06 main interface at http://macos.local:3000
2022/01/05 08:38:06 admin interface at http://macos.local:3000/admin
4. Access the administrative dashboard to finalize the configuration.
@ -77,11 +77,11 @@ Here we want our [Rdio Scanner](https://guthub.com/chuot/rdio-scanner) instance
rdio@macos rdio-scanner % ./rdio-scanner --listen :80
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 08:48:03 server started
2022/01/04 08:48:03 main interface at http://macos.local
2022/01/04 08:48:03 admin interface at http://macos.local/admin
2022/01/05 08:48:03 server started
2022/01/05 08:48:03 main interface at http://macos.local
2022/01/05 08:48:03 admin interface at http://macos.local/admin
## Listening with SSL with self-signed certificates
@ -90,8 +90,8 @@ It is advised to share your [Rdio Scanner](https://github.com/chuot/rdio-scanner
We can create such self-signed certificates by running [Rdio Scanner](https://github.com/chuot/rdio-scanner) with the **-ssl_create** argument.
rdio@macos rdio-scanner % ./rdio-scanner -ssl_create
2022/01/04 08:49:16 generating ssl certificate files
2022/01/04 08:49:17 ssl files created
2022/01/05 08:49:16 generating ssl certificate files
2022/01/05 08:49:17 ssl files created
This has generated these files in the same folder as your [Rdio Scanner](https://github.com/chuot/rdio-scanner) executable.
@ -108,12 +108,12 @@ Now we use the self-signed server certificate to run our instance.
> -ssl_key_file server.key \
> -ssl_listen :443
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 08:50:58 server started
2022/01/04 08:50:58 main interface at http://macos.local
2022/01/04 08:50:58 main interface at https://macos.local
2022/01/04 08:50:58 admin interface at https://macos.local/admin
2022/01/05 08:50:58 server started
2022/01/05 08:50:58 main interface at http://macos.local
2022/01/05 08:50:58 main interface at https://macos.local
2022/01/05 08:50:58 admin interface at https://macos.local/admin
## Save your advanced configuration to a config file
@ -125,7 +125,7 @@ You don't want to have to type everytime a long list of arguments. No problem, y
> -ssl_key_file server.key \
> -ssl_listen :443 \
> -config_save
2022/01/04 08:52:24 rdio-scanner.ini file created
2022/01/05 08:52:24 rdio-scanner.ini file created
All of your parameters passed as arguments to [Rdio Scanner](https://github.com/chuot/rdio-scanner) have been saved to an INI file which has the same arguments/values list.
@ -140,12 +140,12 @@ Then simply run [Rdio Scanner](https://github.com/chuot/rdio-scanner) without an
rdio@macos rdio-scanner % ./rdio-scanner
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 08:54:08 server started
2022/01/04 08:54:08 main interface at http://macos.local
2022/01/04 08:54:08 main interface at https://macos.local
2022/01/04 08:54:08 admin interface at https://macos.local/admin
2022/01/05 08:54:08 server started
2022/01/05 08:54:08 main interface at http://macos.local
2022/01/05 08:54:08 main interface at https://macos.local
2022/01/05 08:54:08 admin interface at https://macos.local/admin
## Install Rdio Scanner as a service

View file

@ -42,8 +42,8 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
rdio@pc-freebsd:~ $ mkdir rdio-scanner
rdio@pc-freebsd:~ $ cd rdio-scanner
rdio@pc-freebsd:~/rdio-scanner $ unzip \
> ~/rdio-scanner-freebsd-amd64-v6.1.1.zip
Archive: ../rdio-scanner-freebsd-amd64-v6.1.1.zip
> ~/rdio-scanner-freebsd-amd64-v6.1.2.zip
Archive: ../rdio-scanner-freebsd-amd64-v6.1.2.zip
extracting: rdio-scanner
extracting: rdio-scanner.pdf
@ -51,11 +51,11 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
rdio@pc-freebsd:~/rdio-scanner $ ./rdio-scanner
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 08:16:36 server started
2022/01/04 08:16:36 main interface at http://pc-freebsd:3000
2022/01/04 08:16:36 admin interface at http://pc-freebsd:3000/admin
2022/01/05 08:16:36 server started
2022/01/05 08:16:36 main interface at http://pc-freebsd:3000
2022/01/05 08:16:36 admin interface at http://pc-freebsd:3000/admin
4. Access the administrative dashboard to finalize the configuration.
@ -81,11 +81,11 @@ Here we want our [Rdio Scanner](https://guthub.com/chuot/rdio-scanner) instance
Password:
root@pc-freebsd:/home/rdio/rdio-scanner # ./rdio-scanner -listen :80
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 08:19:38 server started
2022/01/04 08:19:38 main interface at http://pc-freebsd
2022/01/04 08:19:38 admin interface at http://pc-freebsd/admin
2022/01/05 08:19:38 server started
2022/01/05 08:19:38 main interface at http://pc-freebsd
2022/01/05 08:19:38 admin interface at http://pc-freebsd/admin
## Listening with SSL with self-signed certificates
@ -94,8 +94,8 @@ It is advised to share your [Rdio Scanner](https://github.com/chuot/rdio-scanner
We can create such self-signed certificates by running [Rdio Scanner](https://github.com/chuot/rdio-scanner) with the **-ssl_create** argument.
rdio@pc-freebsd:~/rdio-scanner $ ./rdio-scanner -ssl_create
2022/01/04 10:32:17 generating ssl certificate files
2022/01/04 10:32:19 ssl files created
2022/01/05 10:32:17 generating ssl certificate files
2022/01/05 10:32:19 ssl files created
This has generated these files in the same folder as your [Rdio Scanner](https://github.com/chuot/rdio-scanner) executable.
@ -114,12 +114,12 @@ Now we use the self-signed server certificate to run our instance.
> -ssl_key_file server.key \
> -ssl_listen :443
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 10:34:29 server started
2022/01/04 10:34:29 main interface at http://pc-freebsd
2022/01/04 10:34:29 main interface at https://pc-freebsd
2022/01/04 10:34:29 admin interface at https://pc-freebsd/admin
2022/01/05 10:34:29 server started
2022/01/05 10:34:29 main interface at http://pc-freebsd
2022/01/05 10:34:29 main interface at https://pc-freebsd
2022/01/05 10:34:29 admin interface at https://pc-freebsd/admin
## Save your advanced configuration to a config file
@ -131,7 +131,7 @@ You don't want to have to type everytime a long list of arguments. No problem, y
> -ssl_key_file server.key \
> -ssl_listen :443 \
> -config_save
2022/01/04 10:37:00 rdio-scanner.ini file created
2022/01/05 10:37:00 rdio-scanner.ini file created
All of your parameters passed as arguments to [Rdio Scanner](https://github.com/chuot/rdio-scanner) have been saved to an INI file which has the same arguments/values list.
@ -148,12 +148,12 @@ Then simply run [Rdio Scanner](https://github.com/chuot/rdio-scanner) without an
Password:
root@pc-freebsd:/home/rdio/rdio-scanner # ./rdio-scanner
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 10:38:28 server started
2022/01/04 10:38:29 main interface at http://pc-freebsd
2022/01/04 10:38:29 main interface at https://pc-freebsd
2022/01/04 10:38:29 admin interface at https://pc-freebsd/admin
2022/01/05 10:38:28 server started
2022/01/05 10:38:29 main interface at http://pc-freebsd
2022/01/05 10:38:29 main interface at https://pc-freebsd
2022/01/05 10:38:29 admin interface at https://pc-freebsd/admin
## Install Rdio Scanner as a service

View file

@ -42,8 +42,8 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
[rdio@pc-linux ~]$ mkdir rdio-scanner
[rdio@pc-linux ~]$ cd rdio-scanner
[rdio@pc-linux rdio-scanner]$ unzip \
> ~/Downloads/rdio-scanner-linux-amd64-v6.1.1.zip
Archive: /home/rdio/Downloads/rdio-scanner-linux-amd64-v6.1.1.zip
> ~/Downloads/rdio-scanner-linux-amd64-v6.1.2.zip
Archive: /home/rdio/Downloads/rdio-scanner-linux-amd64-v6.1.2.zip
inflating: rdio-scanner
inflating: rdio-scanner.pdf
@ -51,11 +51,11 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
[rdio@pc-linux rdio-scanner]$ ./rdio-scanner
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 09:11:48 server started
2022/01/04 09:11:48 main interface at http://pc-linux:3000
2022/01/04 09:11:48 admin interface at http://pc-linux:3000/admin
2022/01/05 09:11:48 server started
2022/01/05 09:11:48 main interface at http://pc-linux:3000
2022/01/05 09:11:48 admin interface at http://pc-linux:3000/admin
4. Access the administrative dashboard to finalize the configuration.
@ -78,11 +78,11 @@ Here we want our [Rdio Scanner](https://guthub.com/chuot/rdio-scanner) instance
[rdio@pc-linux rdio-scanner]$ sudo ./rdio-scanner -listen :80
[sudo] password for rdio:
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 09:14:00 server started
2022/01/04 09:14:00 main interface at http://pc-linux
2022/01/04 09:14:00 admin interface at http://pc-linux/admin
2022/01/05 09:14:00 server started
2022/01/05 09:14:00 main interface at http://pc-linux
2022/01/05 09:14:00 admin interface at http://pc-linux/admin
## Listening with SSL with self-signed certificates
@ -91,8 +91,8 @@ It is advised to share your [Rdio Scanner](https://github.com/chuot/rdio-scanner
We can create such self-signed certificates by running [Rdio Scanner](https://github.com/chuot/rdio-scanner) with the **-ssl_create** argument.
[rdio@pc-linux rdio-scanner]$ ./rdio-scanner -ssl_create
2022/01/04 09:15:03 generating ssl certificate files
2022/01/04 09:15:05 ssl files created
2022/01/05 09:15:03 generating ssl certificate files
2022/01/05 09:15:05 ssl files created
This has generated these files in the same folder as your [Rdio Scanner](https://github.com/chuot/rdio-scanner) executable.
@ -110,12 +110,12 @@ Now we use the self-signed server certificate to run our instance.
> -ssl_listen :443
[sudo] password for rdio:
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 09:16:47 server started
2022/01/04 09:16:47 main interface at http://pc-linux
2022/01/04 09:16:47 main interface at https://pc-linux
2022/01/04 09:16:47 admin interface at https://pc-linux/admin
2022/01/05 09:16:47 server started
2022/01/05 09:16:47 main interface at http://pc-linux
2022/01/05 09:16:47 main interface at https://pc-linux
2022/01/05 09:16:47 admin interface at https://pc-linux/admin
## Save your advanced configuration to a config file
@ -127,7 +127,7 @@ You don't want to have to type everytime a long list of arguments. No problem, y
> -ssl_key_file server.key \
> -ssl_listen :443 \
> -config_save
2022/01/04 09:19:29 rdio-scanner.ini file created
2022/01/05 09:19:29 rdio-scanner.ini file created
All of your parameters passed as arguments to [Rdio Scanner](https://github.com/chuot/rdio-scanner) have been saved to an INI file which has the same arguments/values list.
@ -143,12 +143,12 @@ Then simply run [Rdio Scanner](https://github.com/chuot/rdio-scanner) without an
[rdio@pc-linux rdio-scanner]$ sudo ./rdio-scanner
[sudo] Mot de passe de rdio :
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 09:20:40 server started
2022/01/04 09:20:40 main interface at http://pc-linux
2022/01/04 09:20:40 main interface at https://pc-linux
2022/01/04 09:20:40 admin interface at https://pc-linux/admin
2022/01/05 09:20:40 server started
2022/01/05 09:20:40 main interface at http://pc-linux
2022/01/05 09:20:40 main interface at https://pc-linux
2022/01/05 09:20:40 admin interface at https://pc-linux/admin
## Install Rdio Scanner as a service

View file

@ -44,7 +44,7 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
C:\Users\rdio> cd rdio-scanner
C:\Users\rdio\rdio-scanner> tar -xvf ^
..\downloads\rdio-scanner-windows-amd64-v6.1.1.zip
..\downloads\rdio-scanner-windows-amd64-v6.1.2.zip
x rdio-scanner.exe
x rdio-scanner.pdf
@ -52,11 +52,11 @@ ALWAYS DOWNLOAD THE LATEST VERSION OF [RDIO SCANNER](https://github.com/chuot/rd
C:\Users\rdio\rdio-scanner>rdio-scanner
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 13:48:48 server started
2022/01/04 13:48:48 main interface at http://pc-windows:3000
2022/01/04 13:48:48 admin interface at http://pc-windows:3000/admin
2022/01/05 13:48:48 server started
2022/01/05 13:48:48 main interface at http://pc-windows:3000
2022/01/05 13:48:48 admin interface at http://pc-windows:3000/admin
4. Access the administrative dashboard to finalize the configuration.
@ -78,11 +78,11 @@ Here we want our [Rdio Scanner](https://guthub.com/chuot/rdio-scanner) instance
C:\Users\rdio\rdio-scanner>rdio-scanner -listen :80
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 10:53:31 server started
2022/01/04 10:53:31 main interface at http://pc-windows
2022/01/04 10:53:31 admin interface at http://pc-windows/admin
2022/01/05 10:53:31 server started
2022/01/05 10:53:31 main interface at http://pc-windows
2022/01/05 10:53:31 admin interface at http://pc-windows/admin
## Listening with SSL with self-signed certificates
@ -91,8 +91,8 @@ It is advised to share your [Rdio Scanner](https://github.com/chuot/rdio-scanner
We can create such self-signed certificates by running [Rdio Scanner](https://github.com/chuot/rdio-scanner) with the **-ssl_create** argument.
C:\Users\rdio\rdio-scanner>rdio-scanner -ssl_create
2022/01/04 10:58:51 generating ssl certificate files
2022/01/04 10:58:54 ssl files created
2022/01/05 10:58:51 generating ssl certificate files
2022/01/05 10:58:54 ssl files created
This has generated these files in the same folder as your [Rdio Scanner](https://github.com/chuot/rdio-scanner) executable.
@ -109,12 +109,12 @@ Now we use the self-signed server certificate to run our instance.
-ssl_key_file server.key ^
-ssl_listen :443
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 11:05:43 server started
2022/01/04 11:05:43 main interface at http://pc-windows
2022/01/04 11:05:43 main interface at https://pc-windows
2022/01/04 11:05:43 admin interface at https://pc-windows/admin
2022/01/05 11:05:43 server started
2022/01/05 11:05:43 main interface at http://pc-windows
2022/01/05 11:05:43 main interface at https://pc-windows
2022/01/05 11:05:43 admin interface at https://pc-windows/admin
## Save your advanced configuration to a config file
@ -126,7 +126,7 @@ You don't want to have to type everytime a long list of arguments. No problem, y
-ssl_key_file server.key ^
-ssl_listen :443 ^
-config_save
2022/01/04 11:08:28 rdio-scanner.ini file created
2022/01/05 11:08:28 rdio-scanner.ini file created
All of your parameters passed as arguments to [Rdio Scanner](https://github.com/chuot/rdio-scanner) have been saved to an INI file which has the same arguments/values list.
@ -141,12 +141,12 @@ Then simply run [Rdio Scanner](https://github.com/chuot/rdio-scanner) without an
C:\Users\rdio\rdio-scanner>rdio-scanner
Rdio Scanner v6.1.1
Rdio Scanner v6.1.2
----------------------------------
2022/01/04 11:11:28 server started
2022/01/04 11:11:28 main interface at http://pc-windows
2022/01/04 11:11:28 main interface at https://pc-windows
2022/01/04 11:11:28 admin interface at https://pc-windows/admin
2022/01/05 11:11:28 server started
2022/01/05 11:11:28 main interface at http://pc-windows
2022/01/05 11:11:28 main interface at https://pc-windows
2022/01/05 11:11:28 admin interface at https://pc-windows/admin
\pagebreak{}

35
docs/update-from-v5.md Normal file
View file

@ -0,0 +1,35 @@
# Updating from version 5
[Rdio Scanner](https://github.com/chuot/rdio-scanner) has its server component completely rewritten in [GO](https://go.dev). Therefore, it is no longer possible to upgrade to version 6 as with previous versions.
You need to download the latest Rdio Scanner release from the [releases tab](https://github.com/chuot/rdio-scanner/releases) on the [main page](https://github.com/chuot/rdio-scanner).
> REMEMBER TO ALWAYS BACKUP YOUR DATABASE BEFORE ATTEMPTING AN UPDATE.
## Update steps for the standard sqlite database
- Stop your version 5 instance.
- Copy your old version 5 `database.sqlite` to a new folder where version 6 will be installed.
- Rename the database copy to `rdio-scanner.db`, the new default name.
- Run the new version 6 executable to update the database.
- Keep reading the PDF document that comes with the version 6 to make your instance as a service.
## Update steps for mysql/mariadb database
- Stop your version 5 instance.
- Make a backup of your MySQL/MariaDB database.
- Start the new version 6 executable with the proper -db_* arguments, see the `-h` output for more details.
- Keep reading the PDF document that comes with the version 6 to make your instance as a service.
## What if it is too late
Revert back to the latest [version 5.2.9](https://github.com/chuot/rdio-scanner/tree/3f2b184558e82317a010bd667ac3972f30998b1c) with the following commands:
- cd .../rdio-scanner
- git checkout 3f2b184
- cd client
- npm ci
- npm run build
- cd ../server
- npm ci
- restart your Rdio Scanner instance as usual

View file

@ -46,15 +46,15 @@ The color is _green_ by default, but can be customized by the system or by the t
| Button | Description |
| -------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ![LIVE FEED](../images/webapp-control-livefeed-partial.png?raw=true) | When active, incoming audio will be played according to the active systems/talkgroups on the **SELECT TG** panel. The LED can also be _yellow_ if playing audio from the archive while **LIVE FEED** is inactive, this is called **offline playback mode**. Disabling **LIVE FEED** will also stop any playing audio and will clear the listening queue. |
| ![HOLD SYS](../images/webapp-control-holdsys.png?raw=true) | Temporarily maintain the current system in live feed mode. |
| ![HOLD TG](../images/webapp-control-holdtg.png?raw=true) | Temporarily maintain the current talkgroup in live feed mode. |
| ![REPLAY LAST](../images/webapp-control-replay.png?raw=true) | Replay the current audio from the beginning or the previous one if there is none active. |
| ![SKIP NEXT](../images/webapp-control-skip.png?raw=true) | Stop the audio currently playing and play the next one in the listening queue. This is useful when playing boring or encrypted sound. |
| ![AVOID](../images/webapp-control-avoid.png?raw=true) | Activate and deactivate the talkgroup from the current or previous audio. |
| ![SEARCH CALL](../images/webapp-control-search.png?raw=true) | Display the archived audio panel. |
| ![PAUSE](../images/webapp-control-pause.png?raw=true) | Stop playing queue audio. Useful if you have to answer the phone without losing what's queued up for playing. |
| ![SELECT TG](../images/webapp-control-select.png?raw=true) | Display the systems/talkgroups selection panel where you decide which audio you want to listen to in _LIVE FEED_ mode, not in offline playback mode. |
| ![LIVE FEED](./images/webapp-control-livefeed-partial.png?raw=true) | When active, incoming audio will be played according to the active systems/talkgroups on the **SELECT TG** panel. The LED can also be _yellow_ if playing audio from the archive while **LIVE FEED** is inactive, this is called **offline playback mode**. Disabling **LIVE FEED** will also stop any playing audio and will clear the listening queue. |
| ![HOLD SYS](./images/webapp-control-holdsys.png?raw=true) | Temporarily maintain the current system in live feed mode. |
| ![HOLD TG](./images/webapp-control-holdtg.png?raw=true) | Temporarily maintain the current talkgroup in live feed mode. |
| ![REPLAY LAST](./images/webapp-control-replay.png?raw=true) | Replay the current audio from the beginning or the previous one if there is none active. |
| ![SKIP NEXT](./images/webapp-control-skip.png?raw=true) | Stop the audio currently playing and play the next one in the listening queue. This is useful when playing boring or encrypted sound. |
| ![AVOID](./images/webapp-control-avoid.png?raw=true) | Activate and deactivate the talkgroup from the current or previous audio. |
| ![SEARCH CALL](./images/webapp-control-search.png?raw=true) | Display the archived audio panel. |
| ![PAUSE](./images/webapp-control-pause.png?raw=true) | Stop playing queue audio. Useful if you have to answer the phone without losing what's queued up for playing. |
| ![SELECT TG](./images/webapp-control-select.png?raw=true) | Display the systems/talkgroups selection panel where you decide which audio you want to listen to in _LIVE FEED_ mode, not in offline playback mode. |
## Select panel
@ -69,7 +69,7 @@ Here you select which systems/talkgroups/groups you want to listen to while in _
The first section concerns group selection. This section can be disabled from the configuration file, but is active by default. Each button has three states:
| Button | State |
| -------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| ![ON](./images/webapp-select-group-on.png?raw=true) | All talkgroups, from any systems, that correspond to this group are actives. If you press it while it is active, it will make these talkgroups inactives. |
| ![OFF](./images/webapp-select-group-off.png?raw=true) | All talkgroups, from any systems, that correspond to this group are inactives. If you press it while it is inactive, it will make these talkgroups actives. |
| ![PARTIAL](./images/webapp-select-group-partial.png?raw=true) | Some talkgroups, from any systems, that correspond to this group are actives and some are inactives. If you press it while it is active, it will make all these talkgroups active. |

View file

@ -315,10 +315,13 @@ func (controller *Controller) IngestCall(call *Call) {
system.Talkgroups = append(system.Talkgroups, talkgroup)
}
if controller.Options.AutoPopulate || system.AutoPopulate {
if controller.Options.AutoPopulate || (system != nil && system.AutoPopulate) {
switch v := call.units.(type) {
case Units:
populated = true
if system.Units == nil {
system.Units = Units{}
}
system.Units.Merge(&v)
}
}

View file

@ -296,6 +296,7 @@ func (dirwatch *Dirwatch) ingestTrunkRecorder(p string) error {
if call.IsValid() {
dirwatch.controller.Ingest <- &call
}
if dirwatch.DeleteAfter {
if err = os.Remove(p); err != nil {
@ -305,7 +306,6 @@ func (dirwatch *Dirwatch) ingestTrunkRecorder(p string) error {
return err
}
}
}
return nil
}

View file

@ -21,7 +21,7 @@ require (
github.com/remyoudompheng/bigfft v0.0.0-20200410134404-eec4a21b6bb0 // indirect
github.com/stretchr/testify v1.7.0 // indirect
golang.org/x/mod v0.5.1 // indirect
golang.org/x/net v0.0.0-20211216030914-fe4d6282115f // indirect
golang.org/x/net v0.0.0-20220105145211-5b0dc2dfae98 // indirect
golang.org/x/sys v0.0.0-20211216021012-1d35b9e2eb4e // indirect
golang.org/x/text v0.3.7 // indirect
golang.org/x/tools v0.1.8 // indirect

View file

@ -47,8 +47,8 @@ golang.org/x/net v0.0.0-20190620200207-3b0461eec859/go.mod h1:z5CRVTTTmAJ677TzLL
golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
golang.org/x/net v0.0.0-20211015210444-4f30a5c0130f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20211216030914-fe4d6282115f h1:hEYJvxw1lSnWIl8X9ofsYMklzaDs90JI2az5YMd4fPM=
golang.org/x/net v0.0.0-20211216030914-fe4d6282115f/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/net v0.0.0-20220105145211-5b0dc2dfae98 h1:+6WJMRLHlD7X7frgp7TUZ36RnQzSf9wVVTNakEp+nqY=
golang.org/x/net v0.0.0-20220105145211-5b0dc2dfae98/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
golang.org/x/sync v0.0.0-20190423024810-112230192c58/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=

View file

@ -161,7 +161,7 @@ func (groups *Groups) Read(db *Database) error {
group := Group{}
if err = rows.Scan(&id, &group.Label); err != nil {
continue
break
}
if id.Valid && id.Float64 > 0 {

View file

@ -218,7 +218,7 @@ func NewLogResults(logOptions *LogOptions, db *Database) (*LogResults, error) {
log := Log{}
if err = rows.Scan(&id, &dateTime, &log.Level, &log.Message); err != nil {
continue
break
}
if id.Valid && id.Float64 > 0 {

View file

@ -73,7 +73,7 @@ func ParseSdrTrunkMeta(call *Call, controller *Controller) error {
}
}
s = regexp.MustCompile(`^(?:P:)*([0-9]+)`).FindStringSubmatch(m.Title())
s = regexp.MustCompile(`([0-9]+)`).FindStringSubmatch(m.Title())
if len(s) > 1 && len(s[1]) > 0 {
if i, err = strconv.Atoi(s[1]); err != nil {
return err

View file

@ -275,7 +275,7 @@ func NewSearchResults(searchOptions *SearchOptions, client *Client) (*SearchResu
for rows.Next() {
searchResult := SearchResult{}
if err = rows.Scan(&id, &dateTime, &searchResult.System, &searchResult.Talkgroup); err != nil {
continue
break
}
if id.Valid && id.Float64 > 0 {

View file

@ -309,7 +309,7 @@ func (systems *Systems) Read(db *Database) error {
}
if err = rows.Scan(&rowId, &system.AutoPopulate, &blacklists, &system.Id, &system.Label, &led, &order); err != nil {
continue
break
}
if rowId.Valid && rowId.Float64 > 0 {

View file

@ -161,7 +161,7 @@ func (tags *Tags) Read(db *Database) error {
tag := Tag{}
if err = rows.Scan(&id, &tag.Label); err != nil {
continue
break
}
if id.Valid && id.Float64 > 0 {

View file

@ -145,7 +145,7 @@ func (talkgroups *Talkgroups) Read(db *Database, systemId uint) error {
talkgroup := &Talkgroup{}
if err = rows.Scan(&frequency, &talkgroup.GroupId, &talkgroup.Id, &talkgroup.Label, &led, &talkgroup.Name, &talkgroup.Order, &talkgroup.TagId); err != nil {
continue
break
}
if frequency.Valid && frequency.Float64 > 0 {

View file

@ -15,4 +15,4 @@
package main
const Version = "6.1.1"
const Version = "6.1.2"