Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Show upcoming events for the current conversation inside Talk #5909

Closed
1 of 4 tasks
Tracked by #43763
ChristophWurst opened this issue Apr 11, 2024 · 36 comments · Fixed by nextcloud/spreed#12902
Closed
1 of 4 tasks
Tracked by #43763

Show upcoming events for the current conversation inside Talk #5909

ChristophWurst opened this issue Apr 11, 2024 · 36 comments · Fixed by nextcloud/spreed#12902
Assignees
Labels
2. developing Work in progress enhancement New feature request Feature: Scheduling Anything around scheduling meetings, free-busy, resources, attendees and so on

Comments

@ChristophWurst
Copy link
Member

ChristophWurst commented Apr 11, 2024

Is your feature request related to a problem? Please describe.

As a Nextcloud Calendar and Talk user I often schedule meetings for individuals and groups. The meetings happen in Talk because we are a remote company.

If I am in Calendar, I can see upcoming events and where they take place.
If I am in Talk I can not see any of this information.

Describe the solution you'd like

When I open a conversation, check my calendar(s) for any events in the next x hours/days. Then list everything where the current conversation URL matches the LOCATION/URL of any of the events.

Work packages

  • API endpoint in server
  • Implementation in Talk web
  • Implementation in Talk clients
  • User manual documentation

Additional context

N/a

@ChristophWurst ChristophWurst added enhancement New feature request 0. to triage Pending approval or rejection Feature: Scheduling Anything around scheduling meetings, free-busy, resources, attendees and so on labels Apr 11, 2024
@jancborchardt jancborchardt moved this to 🧭 Planning evaluation / ideas in 🖍 Design team May 2, 2024
@ChristophWurst ChristophWurst self-assigned this May 2, 2024
@ChristophWurst ChristophWurst added 1. to develop Accepted and waiting to be taken care of and removed 0. to triage Pending approval or rejection labels May 2, 2024
@ChristophWurst ChristophWurst changed the title Show upcoming events for the current converstation inside Talk Show upcoming events for the current conversation inside Talk May 21, 2024
@ShGKme
Copy link
Contributor

ShGKme commented May 21, 2024

If I am in Talk I can not see any of this information.

How does it supposed to look on the Talk side?

Just a conversation description or something more complex, e.g., new UI element or sidebar's tab on web/desktop?

@provokateurin
Copy link
Member

Just a conversation description or something more complex, e.g., new UI element or sidebar's tab on web/desktop?

Maybe it could work like the OOO for events that are on the same or next day? It shouldn't be hidden somewhere deep in the sidebar since that defeats the purpose IMO.

@ShGKme
Copy link
Contributor

ShGKme commented May 21, 2024

Maybe it could work like the OOO for events that are on the same or next day?

Then it's not defined what to do if there is OOO already.

And that if there are several meetings planed or user want to know about the meeting in advance?

@provokateurin
Copy link
Member

Having and OOO status but also a scheduled meeting is unlikely, but still should be accounted for.
Maybe these messages could be stacked or in a carousel in some way?

@ShGKme
Copy link
Contributor

ShGKme commented May 21, 2024

I'm also not sure I understand how conversations and events get connected.

Can I have many events connected to one conversation?

Can I connect any existing event to a conversation, or it's only for conversations created from events?

@ChristophWurst
Copy link
Member Author

ChristophWurst commented May 21, 2024

The connection is a simple value match. Events that have the talk conversation set as LOCATION will count towards upcoming events. This could be an event you created for yourself, one in a calendar shared with you or an event where you were invited (team meeting).

Talk room to event relation is 1:n. Multiple events can have the same URL as location.

@ChristophWurst
Copy link
Member Author

A PoC can bee seen at nextcloud/server#45435.

@ShGKme
Copy link
Contributor

ShGKme commented May 22, 2024

In this case I'd vote for a new Tab in the sidebar to have an ability to see all the events.

Though, we always complain about the number of tabs making them small and unreadable...

@ChristophWurst ChristophWurst moved this from 📄 To do to 🏗️ In progress in 💌 📅 👥 Groupware team May 22, 2024
@ChristophWurst ChristophWurst added 2. developing Work in progress and removed 1. to develop Accepted and waiting to be taken care of labels May 22, 2024
@ChristophWurst
Copy link
Member Author

I think in a tab it would be hidden too much.

How about the header bar?

Bildschirmfoto vom 2024-05-22 16-43-26e

This could be a popover menu that shows the x next meetings when clicked

@marcoambrosini do you have any other ideas?

@marcoambrosini

This comment was marked as outdated.

@marcoambrosini marcoambrosini self-assigned this May 22, 2024
@marcoambrosini

This comment was marked as outdated.

@jancborchardt jancborchardt moved this from 📐 At design to 🏗️ At engineering in 🖍 Design team Jun 5, 2024
@MPStudyly
Copy link

MPStudyly commented Jun 5, 2024

General question: When clicking the "X", should the info appear again when entering the chat the next time? I guess that would make sense. Or is it too verbose?

What about having a setting for this? Per room and a global (default) one? Something along one of these:

  1. "Always (show/remember me of/notify me about) upcoming meetings when opening a (chat)room"
  2. "Show the upcoming meeting banner every time I open a (chat)room"
  3. "Show the upcoming meeting banner every time a (chat)room is opened"
  4. "Show the upcoming meeting banner only once per upcoming meeting"
  5. "Don't show (me) closed meeting notifications again"
  6. "Never remind (me) twice about upcoming meetings"

That are just a few ideas I was able to come up with so far 😅

* Remove button to show more and use the whole banner as a clickable area to do that

To hook on this one: I'd actually think it would be more intuitive to have the banner act as a link to the calendar when clicked. Ideally without "closing" i.e. leaving Talk, but opening in a new tab. It could also just open the list in the sidebar (if implemented) and show the event details there.

@marcoambrosini
Copy link
Member

marcoambrosini commented Jun 6, 2024

Hi @MPStudyly, we generally add a new setting only if absolutely necessary. I think that here if there is an upcoming meeting, it's good to show it on the day of the meeting. And if you dismiss it that 's it, we don't show it anymore for that meeting :)

It could also just open the list in the sidebar (if implemented) and show the event details there.

Yes that's the idea :)

@MPStudyly
Copy link

Hi @MPStudyly, we generally add a new setting only if absolutely necessary. I think that here if there is an upcoming meeting, it's good to show it on the day of the meeting. And if you dismiss it that 's it, we don't show it anymore for that meeting :)

While I understand your reasoning and second the idea to not clutter users with loads of settings, I wouldn't underestimate the need to customize even such details. Unfortunately I don't have a good idea (yet) on how to keep the general settings page as clean as possible while still allowing for such changes. Still, I know from my own experience in our company that a lot of users would love to tweak some minor stuff to their liking, especially around all sorts of notifications 😅

Don't let this stall the implementation though. I think having this feature to begin with is already a good start. Settings can always be added in later :)

It could also just open the list in the sidebar (if implemented) and show the event details there.

Yes that's the idea :)

Great to hear! Unexpectedly leaving the page (or app in this case) is always somewhat annoying 😅

@marcoambrosini
Copy link
Member

@nickvergessen & @ChristophWurst ping me when this gets picked up :)

@ChristophWurst ChristophWurst added 1. to develop Accepted and waiting to be taken care of and removed 2. developing Work in progress labels Jun 26, 2024
@ChristophWurst ChristophWurst moved this from 🏗️ In progress to 📄 To do in 💌 📅 👥 Groupware team Jun 26, 2024
@nickvergessen nickvergessen moved this from 🧭 Planning evaluation (don't pick) to 📄 To do (~10 entries) in 💬 Talk team Jun 27, 2024
@nickvergessen
Copy link
Member

Assigning @DorraJaouad for Talk frontend.
Server API is at nextcloud/server#45435

@jancborchardt will create a new screenshot of the last design idea how to put it in the header for now.

@marcoambrosini
Copy link
Member

@jancborchardt do you want to take over and assign to you then?

@jancborchardt
Copy link
Member

Here’s what I’m thinking for the web interface, very similar to what @ChristophWurst proposed.

  • Could use NcNoteCard, but if that’s too visible we can remove the blue bar on the left.
  • When clicked, it should open the Calendar to that event so people can check out the details, possible agenda in the description.

Board(2)

  • Key is that I want people to be always aware of the next event, so it should not be floating elsewhere, covering things, or be dismissable. @ChristophWurst this should also work for events further in the future than 7 days (cause Joas said the API right now only looks 7 days in the future?), as many meetings are monthly.
  • Joas, Andy and I decided against showing the event title since in most cases it will just be the same as the conversation title anyway.

On mobile it could go below the header bar. Much like @marcoambrosini’s mockup, but docked to the header instead of floating, not blue, and not dismissable.

@jancborchardt
Copy link
Member

@DorraJaouad do you have any questions regarding the mockup or does it make sense? :)

@DorraJaouad
Copy link

When clicked, it should open the Calendar to that event so people can check out the details, possible agenda in the description.

Is it by opening in a new tab to Calendar app (e.g: with event on the side bar in month view, but need to check if API could provide a link in payload) or we can make a modal showing details of the event so user can stay in Talk?

@nickvergessen
Copy link
Member

New tab (to reduce foreign code hosting and so desktop client is supported as well)

@ChristophWurst
Copy link
Member Author

@ChristophWurst this should also work for events further in the future than 7 days (cause Joas said the API right now only looks 7 days in the future?), as many meetings are monthly.

How far should we go?

Joas, Andy and I decided against showing the event title since in most cases it will just be the same as the conversation title anyway.

I'd still expose it in the API so we can include it in the future if this changes. I think the meeting title is only identical with very specific channels. E.g. in the design channel I'd appreciate to see if there is a weekly design team call or Mail design review.

@ChristophWurst ChristophWurst moved this from 📄 To do to 🏗️ In progress in 💌 📅 👥 Groupware team Jul 8, 2024
@ChristophWurst ChristophWurst added 2. developing Work in progress and removed 1. to develop Accepted and waiting to be taken care of labels Jul 8, 2024
@nickvergessen
Copy link
Member

How far should we go?

I would say 4 weeks or 31 days? Or maybe even API parameter?
Then API consumer can decide?

@jancborchardt
Copy link
Member

jancborchardt commented Jul 10, 2024

I would say 4 weeks or 31 days?

Yes, it would be cool if it’s something of that sort so monthly calls are covered.

I'd still expose it in the API so we can include it in the future if this changes. I think the meeting title is only identical with very specific channels. E.g. in the design channel I'd appreciate to see if there is a weekly design team call or Mail design review.

Yup sounds good, then we can adjust later on.

@DorraJaouad DorraJaouad moved this from 📄 To do (~10 entries) to 🏗️ In progress in 💬 Talk team Jul 16, 2024
@github-project-automation github-project-automation bot moved this from 🏗️ In progress to ☑️ Done in 💌 📅 👥 Groupware team Aug 15, 2024
@github-project-automation github-project-automation bot moved this from 🏗️ In progress to ☑️ Done in 💬 Talk team Aug 15, 2024
@github-project-automation github-project-automation bot moved this from 🏗️ At engineering to 🎉 Done in 🖍 Design team Aug 15, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2. developing Work in progress enhancement New feature request Feature: Scheduling Anything around scheduling meetings, free-busy, resources, attendees and so on
Projects
Archived in project
Archived in project
Development

Successfully merging a pull request may close this issue.

10 participants