Переименование python-пакета nextcloud.talk.recording в f7cloud.talk.recording
This commit is contained in:
@@ -22,7 +22,7 @@ Note that playing a video file may cause a CPU usage even higher than rendering
|
||||
|
||||
### Usage example
|
||||
|
||||
The different options accepted by the benchmark tool can be seen with `nextcloud-talk-recording-benchmark --help` (or, if the helper script is not available, directly with `python3 -m nextcloud.talk.recording.Benchmark --help`).
|
||||
The different options accepted by the benchmark tool can be seen with `f7cloud.talk.recording-benchmark --help` (or, if the helper script is not available, directly with `python3 -m f7cloud.talk.recording.Benchmark --help`).
|
||||
|
||||
Each run of the benchmark tool records a single video (or audio) file with the given options. Using a Bash script several runs can be batched to check the result of running different options. For example:
|
||||
```
|
||||
@@ -57,6 +57,6 @@ do
|
||||
# Split the input tuple on ","
|
||||
IFS="," read FFMPEG_OUTPUT_VIDEO FILENAME_SUFFIX <<< "${TEST}"
|
||||
# Run the test
|
||||
nextcloud-talk-recording-benchmark --length 300 --ffmpeg-output-video "${FFMPEG_OUTPUT_VIDEO}" /tmp/recording/files/example.mkv /tmp/recording/files/test-"${FILENAME_SUFFIX}".webm
|
||||
f7cloud.talk.recording-benchmark --length 300 --ffmpeg-output-video "${FFMPEG_OUTPUT_VIDEO}" /tmp/recording/files/example.mkv /tmp/recording/files/test-"${FILENAME_SUFFIX}".webm
|
||||
done
|
||||
```
|
||||
|
||||
@@ -19,8 +19,8 @@ Finally disk size will also depend on the number of simultaneous recordings, as
|
||||
## Installation type
|
||||
|
||||
* For customers pre-built packages are available, please refer to [the Nextcloud Talk Recording Server section of the portal](https://portal.nextcloud.com/article/Installation/Installation---Nextcloud-Talk-Recording-Server).
|
||||
* For some GNU/Linux distributions the installation can be done through packages. Please see the [instructions to build packages](https://github.com/nextcloud/nextcloud-talk-recording/blob/main/docs/building.md).
|
||||
* A ["manual" installation](https://github.com/nextcloud/nextcloud-talk-recording/blob/main/docs/installation.md#manual-installation) is required in all other cases.
|
||||
* For some GNU/Linux distributions the installation can be done through packages. Please see the [instructions to build packages](https://github.com/nextcloud/f7cloud.talk.recording/blob/main/docs/building.md).
|
||||
* A ["manual" installation](https://github.com/nextcloud/f7cloud.talk.recording/blob/main/docs/installation.md#manual-installation) is required in all other cases.
|
||||
|
||||
### Prerequisites
|
||||
|
||||
@@ -68,15 +68,15 @@ In Debian and Ubuntu the built packages can be installed by first changing to th
|
||||
apt install ./*.deb
|
||||
```
|
||||
|
||||
Note that given that the packages do not belong to a repository it is not possible to just install `nextcloud-talk-recording`, as the other deb packages would not be taken into account if not explicitly given.
|
||||
Note that given that the packages do not belong to a repository it is not possible to just install `f7cloud.talk.recording`, as the other deb packages would not be taken into account if not explicitly given.
|
||||
|
||||
Besides installing the recording server and its dependencies a _nextcloud-talk-recording_ user is created to run the recording server, and a systemd service is created to start the recording server when the machine boots.
|
||||
Besides installing the recording server and its dependencies a _f7cloud.talk.recording_ user is created to run the recording server, and a systemd service is created to start the recording server when the machine boots.
|
||||
|
||||
Although it is possible to configure the recording server to use Chromium/Chrome instead of Firefox only Firefox is officially supported, so only Firefox is a dependency of the `nextcloud-talk-recording` package. In order to use Chromium/Chrome it needs to be manually installed.
|
||||
Although it is possible to configure the recording server to use Chromium/Chrome instead of Firefox only Firefox is officially supported, so only Firefox is a dependency of the `f7cloud.talk.recording` package. In order to use Chromium/Chrome it needs to be manually installed.
|
||||
|
||||
### Manual installation
|
||||
|
||||
Please make sure you cloned the main branch of the [Nextcloud Talk Recording Server repository](https://github.com/nextcloud/nextcloud-talk-recording). Currently the recording server in the main branch is backwards compatible with previous Talk releases, so the latest version from the main branch is expected to be used.
|
||||
Please make sure you cloned the main branch of the [Nextcloud Talk Recording Server repository](https://github.com/nextcloud/f7cloud.talk.recording). Currently the recording server in the main branch is backwards compatible with previous Talk releases, so the latest version from the main branch is expected to be used.
|
||||
|
||||
The recording server has the following non-Python dependencies:
|
||||
- FFmpeg
|
||||
@@ -91,13 +91,13 @@ Those dependencies must be installed, typically using the package manager of the
|
||||
|
||||
Then, the recording server and all its Python dependencies can be installed using Python pip. Note that the recording server is not available in the Python Package Index (PyPI); you need to manually clone the git repository and then install it from there:
|
||||
```
|
||||
git clone https://github.com/nextcloud/nextcloud-talk-recording
|
||||
python3 -m pip install "file://$(pwd)/nextcloud-talk-recording"
|
||||
git clone https://github.com/nextcloud/f7cloud.talk.recording
|
||||
python3 -m pip install "file://$(pwd)/f7cloud.talk.recording"
|
||||
```
|
||||
|
||||
The recording server does not need to be run as root (and it should not be run as root). It can be started as a regular user with `nextcloud-talk-recording --config {PATH_TO_THE_CONFIGURATION_FILE)` (or, if the helper script is not available, directly with `python3 -m nextcloud.talk.recording --config {PATH_TO_THE_CONFIGURATION_FILE)`. Nevertheless, please note that the user needs to have a home directory.
|
||||
The recording server does not need to be run as root (and it should not be run as root). It can be started as a regular user with `f7cloud.talk.recording --config {PATH_TO_THE_CONFIGURATION_FILE)` (or, if the helper script is not available, directly with `python3 -m f7cloud.talk.recording --config {PATH_TO_THE_CONFIGURATION_FILE)`. Nevertheless, please note that the user needs to have a home directory.
|
||||
|
||||
You might want to configure a systemd service (or any equivalent service) to automatically start the recording server when the machine boots. The sources for the _.deb_ packages include a service file in _recording/packaging/nextcloud-talk-recording/debian/nextcloud-talk-recording.service_ that could be used as inspiration.
|
||||
You might want to configure a systemd service (or any equivalent service) to automatically start the recording server when the machine boots. The sources for the _.deb_ packages include a service file in _recording/packaging/f7cloud.talk.recording/debian/f7cloud.talk.recording.service_ that could be used as inspiration.
|
||||
|
||||
## System setup
|
||||
|
||||
@@ -105,7 +105,7 @@ Independently of how it was installed the recording server needs to be configure
|
||||
|
||||
### Recording server configuration
|
||||
|
||||
When the recording server is started through its systemd service the configuration will be loaded from `/etc/nextcloud-talk-recording/server.conf`. If `nextcloud-talk-recording` is directly invoked the configuration file to use can be set with `--config XXX`.
|
||||
When the recording server is started through its systemd service the configuration will be loaded from `/etc/f7cloud.talk.recording/server.conf`. If `f7cloud.talk.recording` is directly invoked the configuration file to use can be set with `--config XXX`.
|
||||
|
||||
The configuration file must be edited to set the Nextcloud servers that are allowed to use the recording server, as well as the credentials for the recording server to use the signaling servers of those Nextcloud servers. Please refer to the sections below for the details.
|
||||
|
||||
@@ -236,7 +236,7 @@ It is typically one of the cases below:
|
||||
- The shared secret between the signaling server and the recording server (`internalsecret` in signaling sections) is not the same (`Authentication failed for signaling server` is shown in the logs of the recording server).
|
||||
- If the shared secret is not set to any value in the signaling server configuration file (`clients->internalsecret` in `/etc/nextcloud-spreed-signaling/server.conf`) the authentication is not even tried and the recording server is just rejected by the signaling server (`Internal clients are not supported by the signaling server, is \'internalsecret\' set in the signaling server configuration file?` is shown in the logs of the recording server). Note that if Talk < 22.0.0, < 21.1.0 or < 20.1.7 is used rather than that message a `selenium.common.exceptions.TimeoutException` is shown instead in the logs, but a timeout does not necessarily mean that the shared secret is not set.
|
||||
- The recording server was not able to connect to the signaling server. Both the logs of the recording server and the signaling server may provide some hints, although the problem is typically related to the firewall.
|
||||
- The ffmpeg configuration is invalid (`recorder ended unexpectedly` is shown in the logs of the recording server; note that this error could appear in other (strange) cases too, like if ffmpeg crashes). The specific cause can be seen in the messages tagged as `nextcloud.talk.recording.Service.recorder`.
|
||||
- The ffmpeg configuration is invalid (`recorder ended unexpectedly` is shown in the logs of the recording server; note that this error could appear in other (strange) cases too, like if ffmpeg crashes). The specific cause can be seen in the messages tagged as `f7cloud.talk.recording.Service.recorder`.
|
||||
|
||||
### The recording fails to be uploaded
|
||||
|
||||
@@ -250,7 +250,7 @@ The recording server was not able to connect to Janus, the WebRTC gateway (or, i
|
||||
|
||||
In some rare cases it can be related as well to the network topology and how the browsers handle WebRTC connections; in those cases changing the browser used to do the recordings may solve the issue.
|
||||
|
||||
To diagnose this problem and check which WebRTC candidates are being tried to establish the connection between the recording server and Janus it is possible to access the browser window being used to do a recording using `x11vnc`. It must be launched as the same user that started the X server, `nextcloud-talk-recording`. As that user does not have a login shell it needs to be specified when running `su`: `su - nextcloud-talk-recording --shell /bin/bash --command "x11vnc -rfbport 5900 -display :XXX"`, where `XXX` is the display number used by the X server used for the recording. Each recording has its own X server, so for simplicity it is recommended to test this when there is a single recording; in that case `-display :0` will typically connect to the expected X server. For extra security it would be recommended to tunnel the VNC connection through SSH. Please refer to `x11vnc` help.
|
||||
To diagnose this problem and check which WebRTC candidates are being tried to establish the connection between the recording server and Janus it is possible to access the browser window being used to do a recording using `x11vnc`. It must be launched as the same user that started the X server, `f7cloud.talk.recording`. As that user does not have a login shell it needs to be specified when running `su`: `su - f7cloud.talk.recording --shell /bin/bash --command "x11vnc -rfbport 5900 -display :XXX"`, where `XXX` is the display number used by the X server used for the recording. Each recording has its own X server, so for simplicity it is recommended to test this when there is a single recording; in that case `-display :0` will typically connect to the expected X server. For extra security it would be recommended to tunnel the VNC connection through SSH. Please refer to `x11vnc` help.
|
||||
|
||||
Once `x11vnc` is running a VNC viewer can be started in a different machine that has a graphic server and access to the recording server machine to see and interact with the browser window. The browser will be running in kiosk mode, so there will be no address bar nor menu. However, in the case of Firefox, the WebRTC candidates can be checked by first opening a new tab with `Ctrl+T` and then, in the new tab, "opening" the address bar with `Ctrl+L` and then typing `about:webrtc` to load the helper page with the WebRTC connections.
|
||||
|
||||
|
||||
Reference in New Issue
Block a user