Skip to content

Hybrid meetings (room + Talk conversation) never appear on the Talk dashboard #19471

Description

@Rikdekker

Tip

How to use GitHub

  • Please use the 👍 reaction to show that you are affected by the same issue.
  • Please don't comment if you have no relevant information to add. It's just extra noise for everyone subscribed to this issue.
  • Subscribe to receive notifications on status change and new comments.

Steps to reproduce

  1. Create a calendar event and fill the location field with a physical room (e.g. Meeting room 2.04)
  2. Add a Talk conversation to that event with the "Add Talk conversation" button
  3. Open Talk and look at the dashboard on the home screen

Expected behaviour

The meeting shows up as an upcoming meeting, the same way a call-only meeting does.

Actual behaviour

The meeting is not listed at all.

The Calendar app only writes the call link to LOCATION when that field is
still empty. For a hybrid meeting the room address is already there, so the
link goes to DESCRIPTION instead (see
AddTalkModal.vue#L199-L214).
CalendarIntegrationService searches LOCATION only, so those events are
never found.

This is not an edge case: booking a room and a conversation is the normal
shape of a hybrid meeting.

What I measured

Same calendar, three events, searching for /call/:

Event On the dashboard
Link in LOCATION yes
Room in LOCATION, link in DESCRIPTION no
Room in LOCATION, link in CONFERENCE no

CONFERENCE (RFC 7986) looks like the right property for this, but it cannot
be searched — the CalDAV search index does not cover it:

LOCATION -> 1 hit
CONFERENCE -> 0 hits
DESCRIPTION -> 1 hit

Which way should this go?

Two directions, and I would rather hear which one you prefer before opening a PR:

  1. In Talk — also search DESCRIPTION and isolate the URL from the
    surrounding prose. Small and self-contained, but it means matching a link
    inside free text.
  2. In the server — make CONFERENCE searchable, then Talk can look for the
    property that actually means "this is where the call is". Cleaner, but it
    is a server change and Calendar would have to start writing that property.

I have option 1 working with unit tests on
this branch,
and I am happy to open a PR if that is the direction you want.

Talk app

Talk app version: 25.0.0

Custom Signaling server configured: no

Custom TURN server configured: no

Custom STUN server configured: no

Server configuration

Operating system: Debian GNU/Linux 13 (trixie), Docker

Web server: Apache

Database: MySQL

PHP version: 8.5.10

Nextcloud Version: 35.0.0

Calendar app version: 6.6.0-rc.2

Activity

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

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions