Help with Talk port change in AIO

Support intro

Sorry to hear you’re facing problems. :slightly_frowning_face:

The community help forum (help.nextcloud.com) is for home and non-enterprise users. Support is provided by other community members on a best effort / “as available” basis. All of those responding are volunteering their time to help you.

If you’re using Nextcloud in a business/critical setting, paid and SLA-based support services can be accessed via portal.nextcloud.com where Nextcloud engineers can help ensure your business keeps running smoothly.

Getting help

In order to help you as efficiently (and quickly!) as possible, please fill in as much of the below requested information as you can.

Before clicking submit: Please check if your query is already addressed via the following resources:

(Utilizing these existing resources is typically faster. It also helps reduce the load on our generous volunteers while elevating the signal to noise ratio of the forums otherwise arising from the same queries being posted repeatedly).

Some or all of the below information will be requested if it isn’t supplied; for fastest response please provide as much as you can. :heart:

The Basics

  • Nextcloud Server version (e.g., 29.x.x):
    • aio latest
  • Operating system and version (e.g., Ubuntu 24.04):
    • ubuntu24
  • Web server and version (e.g, Apache 2.4.25):
    • aio latest
  • Reverse proxy and version _(e.g. nginx 1.27.2)
    • npm - nginx proxy manager - v2.12.6 © 2025
  • PHP version (e.g, 8.3):
    • aio latest
  • Is this the first time you’ve seen this error? (Yes / No):
    • no
  • When did this problem seem to first start?
    • n/a
  • Installation method (e.g. AlO, NCP, Bare Metal/Archive, etc.)
    • aio latest
  • Are you using CloudfIare, mod_security, or similar? (Yes / No)
    • no

Summary of the issue you are facing:

Running setup: aio on VM + NPM on another VM.

I need to change the port 3478 for the udp traffic. Talk chat app works, talk video/calls dont work. Clients keeps disconecting.

Searched trough the forums and github, but the solutions and changes didint work.

Setup:

Firewall:

  • added allow to 3587 and forward to the IP of the VM

Nginx Proxy manager:

  • added host on IP and port 11000 and setup SSL and advanced as per manual here on the forums:
  • client_body_buffer_size 512k;
    proxy_read_timeout 86400s;
    client_max_body_size 0;

AIO using docker compose:

  • changed port for talk to 3578

Log entries

Talk docker instance

0.0.0.0:3578->3578/tcp, 0.0.0.0:3578->3578/udp, [::]:3578->3578/tcp, [::]:3578->3578/udp nextcloud-aio-talk

The output from the container managment:

2025-10-25T05:50:26.599933464Z [WARN] Janus is deployed on a private address (172.18.0.8) but you didn't specify any STUN server! Expect trouble if this is supposed to work over the internet and not just in a LAN...

and:

2025-10-25T05:50:27.609874529Z mcu_common.go:110: Maximum bandwidth 1048576 bits/sec per publishing stream
2025-10-25T05:50:27.609909857Z mcu_common.go:117: Maximum bandwidth 2097152 bits/sec per screensharing stream
2025-10-25T05:50:27.609913742Z mcu_janus.go:164: Using a timeout of 10s for MCU requests
2025-10-25T05:50:27.609916697Z mcu_janus.go:176: No candidates allowlist
2025-10-25T05:50:27.609919330Z mcu_janus.go:188: No candidates blocklist
2025-10-25T05:50:27.610858127Z mcu_janus.go:369: Connected to Janus WebRTC Server 1.3.2 by Meetecho s.r.l.
2025-10-25T05:50:27.610871752Z mcu_janus.go:377: Found JANUS VideoRoom plugin 0.0.10 by Meetecho s.r.l.
2025-10-25T05:50:27.610875291Z mcu_janus.go:382: Data channels are supported
2025-10-25T05:50:27.610878206Z mcu_janus.go:386: Full-Trickle is enabled
2025-10-25T05:50:27.611216830Z mcu_janus.go:393: Created Janus session 7529275842384821
2025-10-25T05:50:27.611617926Z mcu_janus.go:400: Created Janus handle 3033443205357053
2025-10-25T05:50:27.611627415Z main.go:297: Using janus MCU
2025-10-25T05:50:27.611631973Z hub.go:454: Using a timeout of 10s for MCU requests
2025-10-25T05:50:27.611688498Z backend_server.go:112: No IPs configured for the stats endpoint, only allowing access from 127.0.0.1
2025-10-25T05:50:27.611823170Z main.go:378: Listening on 0.0.0.0:8081
2025-10-25T05:51:20.458078834Z client.go:352: Client from 192.168.90.226 has RTT of 7 ms (7.061415ms)
2025-10-25T05:51:20.458209955Z throttle.go:303: Failed attempt on "HelloResume" from 192.168.90.226, throttling by 100ms


Log from a dropped call:
-25T05:54:59.899398682Z  session-ping-limit:200]] config-local:map[attachments:[allowed folder] call:[predefined-backgrounds predefined-backgrounds-v2 can-upload-background start-without-media blur-virtual-background] chat:[read-privacy has-translation-providers has-translation-task-providers typing-privacy summary-threshold] conversations:[can-create list-style description-length] experiments:[enabled] federation:[enabled incoming-enabled outgoing-enabled only-trusted-servers] previews:[max-gif-size] signaling:[session-ping-limit hello-v2-token-key]] features:[audio video chat-v2 conversation-v4 guest-signaling empty-group-room guest-display-names multi-room-users favorites last-room-activity no-ping system-messages delete-messages mention-flag in-call-flags conversation-call-flags notification-levels invite-groups-and-mails locked-one-to-one-rooms read-only-rooms listable-rooms chat-read-marker chat-unread webinary-lobby start-call-flag chat-replies circles-support force-mute sip-support sip-support-nopin chat-read-status phonebook-search raise-hand room-description rich-object-sharing temp-user-avatar-api geo-location-sharing voice-message-sharing signaling-v3 publishing-permissions clear-history direct-mention-flag notification-calls conversation-permissions rich-object-list-media rich-object-delete unified-search chat-permission silent-send silent-call send-call-notification talk-polls breakout-rooms-v1 recording-v1 avatar chat-get-context single-conversation-status chat-keep-notifications typing-privacy remind-me-later bots-v1 markdown-messages media-caption session-state note-to-self recording-consent sip-support-dialout delete-messages-unlimited edit-messages silent-send-state chat-read-last federation-v1 federation-v2 ban-v1 chat-reference-id mention-permissions edit-messages-note-to-self archived-conversations-v2 talk-polls-drafts download-call-participants email-csv-import conversation-creation-password call-notification-state-api schedule-meeting edit-draft-poll conversation-creation-all important-conversations unbind-conversation sip-direct-dialin dashboard-event-rooms mutual-calendar-events upcoming-reminders sensitive-conversations threads message-expiration reactions call-end-to-end-encryption] features-local:[favorites chat-read-status listable-rooms phonebook-search temp-user-avatar-api unified-search avatar remind-me-later note-to-self archived-conversations-v2 chat-summary-api call-notification-state-api schedule-meeting conversation-creation-all important-conversations sip-direct-dialin dashboard-event-rooms mutual-calendar-events upcoming-reminders sensitive-conversations] version:22.0.1] from https://nc.an.on.m.com/ocs/v2.php/cloud/capabilities have not changed
2025-10-25T05:55:00.423815237Z client.go:350: Client anonym= has RTT of 4 ms (4.542654ms)
2025-10-25T05:55:01.375941459Z client.go:352: Client from an.on.m has RTT of 29 ms (29.427087ms)
2025-10-25T05:55:01.381068317Z hub.go:935: Register user 30@backend-1 from an.on.m in unknown-country (Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:144.0) Gecko/20100101 Firefox/144.0) dasdasdasd= (private=dasdasdasdasd-dasdasdasdasd=)
2025-10-25T05:55:01.477620275Z clientsession.go:453: Session dasdasdasdasdasd= joined room uusdxd4g with room session id dasdasdasdasd+dasdasda/asdasdasd/dasdasdads+asdasdasd+dasdasd+asdasdasd/dsasdasdasd+asdasdasd
2025-10-25T05:55:01.477646763Z clientsession.go:253: Permissions of session ddasdasdasdasd= changed: [publish-audio publish-video publish-screen control]
2025-10-25T05:55:01.648679203Z room.go:787: Session asdasdasdasdsd= joined call uusdxd4g
2025-10-25T05:55:01.683001507Z mcu_janus.go:754: Attached subscriber to room anonym of publisher dasdasdasdasda= in plugin janus.plugin.videoroom in session anonym as anonym
2025-10-25T05:55:01.683024331Z clientsession.go:986: Subscribing video from dasdasdasd= as 5 in session dasdasdasd=
2025-10-25T05:55:01.705128914Z mcu_janus.go:632: Attached video as publisher dasdasdas to plugin janus.plugin.videoroom in session dasdasdasd
2025-10-25T05:55:01.705485311Z mcu_janus.go:618: Created room dasdasdasd {janus.plugin.videoroom map[permanent:false room:dasdasdasd videoroom:created]}
2025-10-25T05:55:01.705815447Z mcu_janus.go:699: Publisher dasdasdasdasdasd= is using handle dasdasdasd
2025-10-25T05:55:01.705820463Z clientsession.go:908: Publishing video as 6 for session dasdasdasd=
2025-10-25T05:55:01.706470353Z mcu_janus.go:754: Attached subscriber to room dasdasd of publisher dasdadasda= in plugin janus.plugin.videoroom in session anonym as anonym
2025-10-25T05:55:01.706481764Z clientsession.go:986: Subscribing video from dasdasdasdasd= as 7 in session anonym
2025-10-25T05:55:01.707042620Z [ERR] [plugins/janus_videoroom.c:janus_videoroom_handler:10203] No such feed (1)
2025-10-25T05:55:01.707199001Z [WARN] [dasdasdas] Peer video fallback SSRC: anonym
2025-10-25T05:55:01.707276290Z mcu_janus_subscriber.go:231: Publisher dsadasdasdasd= not sending yet for video, wait and retry to join room anonym as subscriber
2025-10-25T05:55:01.739120377Z mcu_janus_client.go:165: Started listener &{{janus.plugin.videoroom map[room:anonym started:ok videoroom:event]} map[] anonym anonym}
2025-10-25T05:55:05.713775181Z client.go:350: Client dasdasdasdasd= has RTT of 1 ms (1.001413ms)
2025-10-25T05:55:06.143348395Z client.go:350: Client dasdasdasd-dasdasdasdasd== has RTT of 93 ms (93.872326ms)
2025-10-25T05:55:06.215715679Z client.go:350: Client dasdasdasdasdasd== has RTT of 7 ms (7.031713ms)
2025-10-25T05:55:08.760959040Z [WARN] [dasdasd] ICE failed for component 1 in stream 1, but let's give it some time... (trickle pending, answer received, alert not set)
2025-10-25T05:55:08.791595608Z [WARN] [asdasda] ICE failed for component 1 in stream 1, but let's give it some time... (trickle pending, answer received, alert not set)
2025-10-25T05:55:10.184820155Z clientsession.go:467: Session dasdasdasdasdasd= left call uusdxd4g
2025-10-25T05:55:10.184845394Z clientsession.go:467: Session dasdasdasdasdasd= left call uusdxd4g
2025-10-25T05:55:10.185245291Z mcu_janus_publisher.go:68: Publisher dasdasdasd: associated room has been destroyed, closing
2025-10-25T05:55:10.185341870Z mcu_janus_publisher.go:149: Room asdasdasdasd destroyed
2025-10-25T05:55:10.185351606Z mcu_janus_publisher.go:68: Publisher dasdasdasdasd: associated room has been destroyed, closing
2025-10-25T05:55:10.185354302Z mcu_janus_publisher.go:149: Room dasdasdasdasd destroyed
2025-10-25T05:55:10.185571605Z janus_client.go:481: Unable to deliver message {
2025-10-25T05:55:10.185578320Z    "janus": "detached",
2025-10-25T05:55:10.185580525Z    "session_id": sadasdasd,
2025-10-25T05:55:10.185582503Z    "sender": dasdasdasd
2025-10-25T05:55:10.185584303Z }. Handle dasdasdas gone?
2025-10-25T05:55:10.186004051Z janus_client.go:481: Unable to deliver message {
2025-10-25T05:55:10.186009381Z    "janus": "detached",
2025-10-25T05:55:10.186011695Z    "session_id": dasdasdads,
2025-10-25T05:55:10.186013667Z    "sender": asdasdasd
2025-10-25T05:55:10.186015549Z }. Handle dasdasdasd gone?
2025-10-25T05:55:10.186155111Z janus_client.go:481: Unable to deliver message {
2025-10-25T05:55:10.186164218Z    "janus": "detached",
2025-10-25T05:55:10.186166273Z    "session_id": dasdasdasd,
2025-10-25T05:55:10.186168033Z    "sender": dasdasdad
2025-10-25T05:55:10.186169883Z }. Handle dasdasdasd gone?
2025-10-25T05:55:10.328927562Z clientsession.go:467: Session anonym= left call uusdxd4g
2025-10-25T05:55:11.707657006Z hub.go:2754: Could not send MCU message {"type":"requestoffer","sid":"","roomType":"video","payload":null} for session anonym to anonym=: context deadline exceeded

Configuration

Nextcloud

Under Talk i changed the ports for stun and turn to 3578 (from 3478)

Apps

Minimal set of apps, defaults from docker compose.

In Nextcloud security i have whitelisted the IP of NPM.

I have tried various solutions from the forums and github with no luck. I can chat but no calls.

The only thing im spotting is the turn error in the log from the talk container.

Anyone have a working solution to this issue? :slight_smile:

I can provide any logs reuested to debug this issue :slight_smile: thanks alot for any hints and help!

You didn’t mention anywhere if you actually have a router in front of that VM, or if your “firewall” is also acting as a router. Right now you’re mixing apples and oranges — opening ports in the VM firewall does nothing if your router doesn’t forward them to the AIO host.

added allow to 3587 and forward to the IP of the VM

Also, your port setup doesn’t match. You changed Talk to 3578, but your forwarding is for 3587, so traffic will never reach the container.

In addition, you only mentioned allowing UDP. For Talk (TURN) you should have both UDP and TCP 3478 open and forwarded directly from the router to the AIO host. NPM cannot handle UDP, so the media path must bypass it completely — only HTTPS (443/TCP) should go through NPM.

I have the default 3478 UDP+TCP forwarded from my router directly to the AIO host, and Talk works reliably (chat + calls). Try reverting to that setup first — it’s the configuration officially supported by Nextcloud AIO.

2 Likes

Sorry for the confusion and lack of info from my end. Those were typos on my post and I will revise the configs on all ends.

Firewall (router) is forwarding (currently) only the UDP on 3578 (since 3478 is used by another VM for netbird clients), its also set to forward the traffic the IP of the AIO nextcloud instance and not trough the NPM.

Ill update the firewal for both tcp/udp and see if that fixes the trick.

Thanks for reply! Ill update the thread if i have some more troubles!

1 Like

Deleted by author.