nextcloud / nextcloud/nextcloud-talk-recording

Error "No configured signaling secret" with Docker

Open
#87 9 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
34
Forks
16
Avg merge
5d 5h
Merged PRs (30d)
4

Description

Steps to reproduce
  1. In talk, create a new conversation
  2. Add the participants
  3. Click the "Start call" button
  4. Check the box labeled "Start recording at the same time as the call."
  5. Click the "Start call" button
Expected behaviour

The video call is being recorded.

Actual behaviour

The recording seems to start, then crashes.

Server configuration

Web server:
Apache 2.4.66

Database:
MySQL/MariaDB 11.8.6

PHP version:
8.4.16
Zend Engine v4.4.16,

Nextcloud version: (see Nextcloud admin page)
33.0.2

List of activated apps
If you have access to your command line run e.g.:
sudo -u www-data php occ app:list
from within your Nextcloud installation folder
  • spreed: 23.0.4
Nextcloud configuration
If you have access to your command line run e.g.:
sudo -u www-data php occ config:list system
from within your Nextcloud installation folder
 "system": {
        "instanceid": "***REMOVED SENSITIVE VALUE***",
        "passwordsalt": "***REMOVED SENSITIVE VALUE***",
        "secret": "***REMOVED SENSITIVE VALUE***",
        "trusted_domains": [
            "192.168.0.224",
            "82.64.35.61",
            "nextcloud.assolsf05.fr",
            "signal.assolsf05.fr",
            "record.assolsf05.fr",
            "nextcloud.uelasfrance.org"
        ],
        "trusted_proxies": "***REMOVED SENSITIVE VALUE***",
        "forwarded_for_headers": [
            "X-Forwarded-For",
            "HTTP_X_FORWARDED_FOR"
        ],
        "talk_signaling_server": "https:\/\/signal.assolsf05.fr",
        "talk_signaling_secret": "a5…7c",
        "overwriteprotocol": "https",
        "datadirectory": "***REMOVED SENSITIVE VALUE***",
        "dbtype": "mysql",
        "version": "33.0.2.2",
        "overwrite.cli.url": "https:\/\/nextcloud.assolsf05.fr",
        "dbname": "***REMOVED SENSITIVE VALUE***",
        "dbhost": "***REMOVED SENSITIVE VALUE***",
        "dbport": "",
        "dbtableprefix": "oc_",
        "mysql.utf8mb4": true,
        "dbuser": "***REMOVED SENSITIVE VALUE***",
        "dbpassword": "***REMOVED SENSITIVE VALUE***",
        "installed": true,
        "maintenance_window_start": 1,
        "mail_smtpmode": "smtp",
        "mail_sendmailmode": "smtp",
        "mail_from_address": "***REMOVED SENSITIVE VALUE***",
        "mail_domain": "***REMOVED SENSITIVE VALUE***",
        "mail_smtphost": "***REMOVED SENSITIVE VALUE***",
        "mail_smtpport": "465",
        "mail_smtpsecure": "ssl",
        "mail_smtpauth": 1,
        "mail_smtpname": "***REMOVED SENSITIVE VALUE***",
        "mail_smtppassword": "***REMOVED SENSITIVE VALUE***",
        "default_locale": "fr_FR",
        "default_phone_region": "FR",
        "default_timezone": "Europe\/Paris",
        "filelocking.enabled": true,
        "memcache.distributed": "\\OC\\Memcache\\Redis",
        "memcache.local": "\\OC\\Memcache\\Redis",
        "memcache.locking": "\\OC\\Memcache\\Redis",
        "redis": {
            "host": "***REMOVED SENSITIVE VALUE***",
            "port": 6379,
            "timeout": 0
        },
        "maintenance": false,
        "theme": "",
        "loglevel": 1,
        "versions_retention_obligation": "disabled",
        "forbidden_filename_characters": [
            "<",
            ">",
            ":",
            "\"",
            "|",
            "?",
            "*",
            "\\",
            "\/"
        ],
        "forbidden_filename_extensions": [
            " ",
            ".",
            ".filepart",
            ".part"
        ],
        "files.chunked_upload.max_size": 536870912,
        "forbidden_filename_basenames": [
            "con",
            "prn",
            "aux",
            "nul",
            "com0",
            "com1",
            "com2",
            "com3",
            "com4",
            "com5",
            "com6",
            "com7",
            "com8",
            "com9",
            "com\u00b9",
            "com\u00b2",
            "com\u00b3",
            "lpt0",
            "lpt1",
            "lpt2",
            "lpt3",
            "lpt4",
            "lpt5",
            "lpt6",
            "lpt7",
            "lpt8",
            "lpt9",
            "lpt\u00b9",
            "lpt\u00b2",
            "lpt\u00b3"
        ]
    }
"apps": {
    "spreed": {
        "allowed_groups": "[]",
        "default_group_notification": "1",
        "enabled": "yes",
        "federation_enabled": "yes",
        "federation_only_trusted_servers": "1",
        "has_reference_id": "yes",
        "installed_version": "23.0.4",
        "project_access_invalidated": "1",
        "recording_servers": "***REMOVED SENSITIVE VALUE***",
        "signaling_servers": "***REMOVED SENSITIVE VALUE***",
        "signaling_ticket_secret": "***REMOVED SENSITIVE VALUE***",
        "signaling_token_privkey_es256": "***REMOVED SENSITIVE VALUE***",
        "signaling_token_pubkey_es256": "***REMOVED SENSITIVE VALUE***",
        "stun_servers": "***REMOVED SENSITIVE VALUE***",
        "turn_servers": "***REMOVED SENSITIVE VALUE***",
        "types": "dav,prevent_group_restriction",
        "recording\/amxab8ty": "***REMOVED SENSITIVE VALUE***"
    }
}
Browser

Browser name:
Firefox

Browser version:
150.0.1

Operating system:

  • Clients : Windows 10, Windows 11, /e/OS 3.7 (Android 15)
  • Servers : Debian 13 Trixie
Browser log
Insert your browser log here, this could for example include:
a) The javascript console log
b) The network log
c) ...

Hello,

I explain my architecture.

On one side I’ve installed Nextcloud on a Raspberry Pi 5 with the basic LAMP webarchive technique on Raspberry Pi OS 13 Trixie.

On the other side I’ve got a traditional computer with Debian 13 Trixie. There I installed Docker, Docker compose, Ngnix Proxy Manager, High Performance Backend,
With this documentation : https://github.com/nextcloud/nextcloud-talk-recording/blob/main/docs/installation.md I installed the gecko driver and dependencies.

Then I used this documentation https://github.com/nextcloud/nextcloud-talk-recording/issues/45 to install the talk-recording Docker.

In the docker-compose.yml file there is the SIGNALING_SECRET parameter.

Moreover I created the recording.conf file in the folder /conf/ and link to the folder /etc/nextcloud-talk-recording/ and /option/.

But when I check the log of the nc-recording Docker with the command :

docker logs -t nc-recording

The result is :

WARNING:selenium.webdriver.common.selenium_manager:The geckodriver version (0.35.0) detected in PATH at /usr/bin/geckodriver might not be compatible with the detected firefox version (136.0); currently, geckodriver 0.36.0 is recommended for firefox 136.*, so it is advised to delete the driver in PATH and retry ERROR:nextcloud.talk.recording.Server:Failed to start recording: https://nextcloud.assolsf05.fr/ amxab8ty
 Traceback (most recent call last):
   File "/usr/local/lib/python3.13/site-packages/nextcloud/talk/recording/Server.py", line 170, in _startRecordingService
     service.start(actorType, actorId)
     ~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^
   File "/usr/local/lib/python3.13/site-packages/nextcloud/talk/recording/Service.py", line 211, in start
     self._participant.joinCall(self.token)
     ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^
   File "/usr/local/lib/python3.13/site-packages/nextcloud/talk/recording/Participant.py", line 519, in joinCall
     raise Exception(f"No configured signaling secret for {settings['server']}")
 Exception: No configured signaling secret for wss://signal.assolsf05.fr

The result of the command geckodriver -V is :
geckodriver 0.36.0 (a3d508507022 2025-02-24 15:57 +0000)

Please help me.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with docker-compose.yml, recording.conf, and the traceback in nextcloud/talk/recording/Participant.py at line 519. Run docker logs -t nc-recording and compare the recording container's SIGNALING_SECRET configuration with the wss://signal.assolsf05.fr endpoint. Done means a Talk recording starts without the missing signaling-secret error.

Written by the indexing model from the issue text.

Assessment

Tech stack
docker, python
Domain
backend, devops
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.