nextcloud / nextcloud/nextcloud-talk-recording
Reload configuration while the recording server is running
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 34
- Forks
- 16
- Avg merge
- 5d 5h
- Merged PRs (30d)
- 4
Description
Right now if the configuration file is changed the recording server needs to be stopped and started again to use the new configuration. Therefore it is needed to manually check whether there is an active recording and then wait until it is finished before restarting the server (or to just restart the server right away, killing the recording).
It should be possible to reload the configuration while the recording server is running. This would make possible, for example, to allow additional backends or signaling servers without interfering in active recordings. Note, however, that not all values might be reloadable without restarting (for example, the listening IP address and port might need the recording server to be fully restarted). It is also expected that the values will not be applied to active recordings, but only to recordings started after the reload (for example, the encoding settings).
For consistency with the signaling server the configuration should be reloaded by sending a SIGHUP signal to the recording server. An ExecReload entry (ExecReload=/bin/kill -HUP $MAINPID) should be added to the systemd service file so the service can be reloaded with systemctl reload nextcloud-talk-recording.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by tracing how the recording server loads its configuration and inspect the referenced Debian service file at packaging/nextcloud-talk-recording/debian/nextcloud-talk-recording.service. Check which settings can be reloaded without affecting active recordings and how a SIGHUP is handled. Done means reload is available through systemctl reload while active recordings continue unchanged.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- linux, python
- Domain
- backend, devops
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100