Skip to content

Conversation

@xandris
Copy link

@xandris xandris commented Jan 5, 2026

The logic in CallActivity ends up comparing our nextcloud session id to the call session ID when handling a "call participants changed" message. If hasMCU, then compare call session IDs, otherwise compare nextcloud session IDs.

See: #5452

🏁 Checklist

  • ⛑️ Tests (unit and/or integration) are included or not needed
  • 🔖 Capability is checked or not needed
  • 🔙 Backport requests are created or not needed: /backport to stable-xx.x
  • 📅 Milestone is set
  • 🌸 PR title is meaningful (if it should be in the changelog: is it meaningful to users?)

@xandris
Copy link
Author

xandris commented Jan 5, 2026

/backport to stable-22.0

am i doing this right

@xandris xandris force-pushed the bugfix/5452-call-dropped-with-hpb branch 2 times, most recently from 5e8026a to 0be6e1c Compare January 5, 2026 00:50
The logic in CallActivity ends up comparing our nextcloud session id to the call session ID when handling a "call participants changed" message.  If hasMCU, then compare call session IDs, otherwise compare nextcloud session IDs.

See: nextcloud#5452
Signed-off-by: Alexandra Parker <alex@etherbunny.net>
@xandris xandris force-pushed the bugfix/5452-call-dropped-with-hpb branch from 0be6e1c to 1046c84 Compare January 5, 2026 01:02
@AndyScherzinger AndyScherzinger requested a review from mahibi January 6, 2026 21:55
@AndyScherzinger AndyScherzinger added the 3. to review Waiting for reviews label Jan 6, 2026
@mahibi
Copy link
Collaborator

mahibi commented Jan 8, 2026

Thank you @xandris i will have a look soon!
I will take care of backports if necessary

@xandris
Copy link
Author

xandris commented Jan 9, 2026

ty @mahibi lmk if i need to change something i don't want to make more work for y'all

@mahibi
Copy link
Collaborator

mahibi commented Jan 12, 2026

ty @mahibi lmk if i need to change something i don't want to make more work for y'all

no worries and thanks for contributing!
I just tested and for now i'm confused as i can't reproduce the bug you try to solve, but it appears only with the PR 🙈
I will take another closer look soon!

@ponfertato
Copy link

ponfertato commented Jan 13, 2026

The error is related to the HPB server and only on the current version of the Talk app on Android, there is no such bug in iOS

After creating a call, when connecting from an Android device to a call in the application, an attempt is made to connect, while other clients connect the call and even another interlocutor can be heard (in both directions), while the application continues to attempt to connect to the call and after a certain time the call from the client on Android is disconnected

изображение изображение

strukturag/nextcloud-spreed-signaling logs:

client.go:350: Client auY... has RTT of 1290 ms (1.29070471s)
client.go:350: Client VNz...= has RTT of 419 ms (419.300091ms)
room.go:787: Session VNz...= joined call ...
client.go:350: Client nLP... has RTT of 194 ms (194.551858ms)
capabilities.go:128: Capabilities expired for https://cloud.potatoenergy.ru/ocs/v2.php/cloud/capabilities, updating
capabilities.go:171: Capabilities map[config:map[attachments:map[allowed:false] call:map[blur-virtual-background:false breakout-rooms:true can-enable-sip:false can-upload-background:false enabled:true end-to-end-encryption:true live-transcription:false max-duration:0 predefined-backgrounds:[1_office.jpg 2_home.jpg 3_abstract.jpg 4_beach.jpg 5_park.jpg 6_theater.jpg 7_library.jpg 8_space_station.jpg] predefined-backgrounds-v2:[/custom_apps/spreed/img/backgrounds/1_office.jpg /custom_apps/spreed/img/backgrounds/2_home.jpg /custom_apps/spreed/img/backgrounds/3_abstract.jpg /custom_apps/spreed/img/backgrounds/4_beach.jpg /custom_apps/spreed/img/backgrounds/5_park.jpg /custom_apps/spreed/img/backgrounds/6_theater.jpg /custom_apps/spreed/img/backgrounds/7_library.jpg /custom_apps/spreed/img/backgrounds/8_space_station.jpg] recording:false recording-consent:0 sip-dialout-enabled:false sip-enabled:false start-without-media:false supported-reactions:[❤️ 🎉 👏 👋 👍 👎 🔥 😂 🤩 🤔 😲 😥]] chat:map[has-translation-providers:true has-translation-task-providers:true max-length:32000 read-privacy:0 summary-threshold:100 typing-privacy:0] conversations:map[can-create:false description-length:2000 force-passwords:false list-style:two-lines retention-event:28 retention-instant-meetings:1 retention-phone:7] experiments:map[enabled:0] federation:map[enabled:false incoming-enabled:false only-trusted-servers:true outgoing-enabled:false] previews:map[max-gif-size:3.145728e+06] signaling:map[hello-v2-token-key:-----BEGIN PUBLIC KEY-----
MFk...
l7g...
-----END PUBLIC KEY-----
 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 federated-shared-items message-expiration reactions chat-summary-api 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.7] from https://cloud.potatoenergy.ru/ocs/v2.php/cloud/capabilities have not changed
client.go:350: Client auY... has RTT of 1651 ms (1.651916711s)
clientsession.go:467: Session VNz...= left call ...
client.go:350: Client VNz...= has RTT of 86 ms (86.729179ms)
clientsession.go:467: Session VNz...= left call ...

nginx logs:

172.18.0.13 - ponfertato [13/Jan/2026:09:54:51 +0300] "GET /ocs/v2.php/apps/spreed/api/v3/signaling/settings?token=... HTTP/1.1" 200 711 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:54:52 +0300] "GET /ocs/v2.php/cloud/capabilities HTTP/1.1" 200 3711 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:54:53 +0300] "GET /ocs/v2.php/apps/spreed/api/v1/chat/...?lastCommonReadId=3937&lastKnownMessageId=3937&includeLastKnown=0&limit=100&setReadMarker=1&timeout=30&lookIntoFuture=1 HTTP/1.1" 200 348 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:54:53 +0300] "POST /ocs/v2.php/apps/spreed/api/v4/call/... HTTP/1.1" 200 83 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:54:53 +0300] "GET /ocs/v2.php/apps/spreed/api/v1/chat/...?setReadMarker=0&lookIntoFuture=1&lastKnownMessageId=3937&limit=100&includeLastKnown=0&markNotificationsAsRead=0 HTTP/1.1" 200 348 "-" "Mozilla/5.0 (Linux) Nextcloud-Talk v2.0.5"
172.18.0.13 - ponfertato [13/Jan/2026:09:54:53 +0300] "GET /ocs/v2.php/apps/spreed/api/v4/room/... HTTP/1.1" 200 1014 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - - [13/Jan/2026:09:54:54 +0300] "POST /ocs/v2.php/apps/spreed/api/v3/signaling/backend HTTP/1.1" 200 106 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.13 - - [13/Jan/2026:09:55:04 +0300] "POST /ocs/v2.php/apps/spreed/api/v3/signaling/backend HTTP/1.1" 200 106 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:09 +0300] "GET /ocs/v2.php/apps/spreed/api/v4/room/.../participants?includeStatus=true HTTP/1.1" 200 741 "-" "Mozilla/5.0 (Linux) Nextcloud-Talk v2.0.5"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:12 +0300] "GET /ocs/v2.php/apps/spreed/api/v4/room?modifiedSince=1768287282&includeStatus=true&includeLastMessage=true HTTP/1.1" 200 1797 "-" "Mozilla/5.0 (Linux) Nextcloud-Talk v2.0.5"
172.18.0.13 - - [13/Jan/2026:09:55:14 +0300] "POST /ocs/v2.php/apps/spreed/api/v3/signaling/backend HTTP/1.1" 200 106 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.4 - ponfertato [13/Jan/2026:09:55:22 +0300] "GET /ocs/v2.php/apps/serverinfo/api/v1/info?format=json&skipUpdate=false&skipApps=false HTTP/1.1" 200 1723 "-" "python-requests/2.32.5" "-"
172.18.0.13 - - [13/Jan/2026:09:55:24 +0300] "POST /ocs/v2.php/apps/spreed/api/v3/signaling/backend HTTP/1.1" 200 106 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:25 +0300] "GET /ocs/v2.php/apps/spreed/api/v1/chat/...?setReadMarker=0&lookIntoFuture=1&lastKnownMessageId=3938&limit=100&includeLastKnown=0&markNotificationsAsRead=0 HTTP/1.1" 304 0 "-" "Mozilla/5.0 (Linux) Nextcloud-Talk v2.0.5"
172.18.0.13 - - [13/Jan/2026:09:55:34 +0300] "GET /ocs/v2.php/cloud/capabilities HTTP/1.1" 304 0 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.13 - - [13/Jan/2026:09:55:35 +0300] "POST /ocs/v2.php/apps/spreed/api/v3/signaling/backend HTTP/1.1" 200 106 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:40 +0300] "DELETE /ocs/v2.php/apps/spreed/api/v4/call/... HTTP/1.1" 200 83 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:40 +0300] "GET /ocs/v2.php/apps/spreed/api/v1/chat/...?setReadMarker=0&lookIntoFuture=1&lastKnownMessageId=3938&limit=100&includeLastKnown=0&markNotificationsAsRead=0 HTTP/1.1" 200 331 "-" "Mozilla/5.0 (Linux) Nextcloud-Talk v2.0.5"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:42 +0300] "GET /ocs/v2.php/apps/spreed/api/v4/room?modifiedSince=1768287312&includeStatus=true&includeLastMessage=true HTTP/1.1" 200 1778 "-" "Mozilla/5.0 (Linux) Nextcloud-Talk v2.0.5"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:43 +0300] "DELETE /ocs/v2.php/apps/spreed/api/v4/call/... HTTP/1.1" 200 83 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:43 +0300] "GET /ocs/v2.php/apps/spreed/api/v4/room/... HTTP/1.1" 200 995 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:44 +0300] "GET /ocs/v2.php/apps/spreed/api/v1/chat/...?lastCommonReadId=3937&lastKnownMessageId=3937&includeLastKnown=0&limit=100&setReadMarker=1&timeout=0&lookIntoFuture=1 HTTP/1.1" 200 384 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:44 +0300] "GET /ocs/v2.php/apps/spreed/api/v4/room/... HTTP/1.1" 200 996 "-" "Mozilla/5.0 (Android) Nextcloud-Talk v22.0.3"
172.18.0.13 - - [13/Jan/2026:09:55:44 +0300] "POST /ocs/v2.php/apps/spreed/api/v3/signaling/backend HTTP/1.1" 200 106 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.13 - - [13/Jan/2026:09:55:54 +0300] "POST /ocs/v2.php/apps/spreed/api/v3/signaling/backend HTTP/1.1" 200 106 "-" "nextcloud-spreed-signaling/2.0.4~docker"
172.18.0.13 - ponfertato [13/Jan/2026:09:55:55 +0300] "GET /ocs/v2.php/apps/spreed/api/v4/room/.../participants?includeStatus=true HTTP/1.1" 200 736 "-" "Mozilla/5.0 (Linux) Nextcloud-Talk v2.0.5"

@xandris
Copy link
Author

xandris commented Jan 13, 2026

ya it didnt happen to me until i installed the hpb

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

3. to review Waiting for reviews

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants