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

Linking collaboration things™ #11015

Closed
nickvergessen opened this issue Sep 3, 2018 · 20 comments
Closed

Linking collaboration things™ #11015

nickvergessen opened this issue Sep 3, 2018 · 20 comments

Comments

@nickvergessen
Copy link
Member

nickvergessen commented Sep 3, 2018

Currently we have multiple things™ that can be shared to a group of people:

  • Boards of the dash app
  • Conversations of the talk app
  • Files/folders of the files app
  • Calendars of the calendar app

The idea is to allow apps to link all those different things™ together, for easier and fast collaboration. E.g. a project could consist of a conversation, a dashboard and multiple shared folders. Those should all be "linked" with each others and have a quick access option available, e.g. in the sidebar.

cc @juliushaertl

@Spartachetto
Copy link

Spartachetto commented Sep 3, 2018

You could consider if this is related to #7435 .

"Linking collaboration things could be a case of "linking things".... if the tech details allow it.

@nickvergessen
Copy link
Member Author

Yes, thanks I didn't know that issue existed. It will lay the basement for this on a technical level. But mentioning calendars etc is a whole other story.

@Spartachetto
Copy link

Spartachetto commented Sep 17, 2018

@nickvergessen I think you could have a look at https://help.nextcloud.com/t/email-automation-comparable-to-mixmax-gmelius-cloudhq-etc/36699

He is asking for Email automation comparable to MixMax, Gmelius, CloudHQ etc . This includes also integration between the email client and calendar and kanban (deck).

That could be interesting information for this issue...

@sehucke
Copy link

sehucke commented Sep 24, 2018

Would love to see this feature in NC.

I think the key point - beside the UI - is to have an extensible concept so that other apps could add their own "things" the users can reference from other apps. E.g. if I would write a recipes app I would "instantly" be able to reference a recipe in a calendar appointment and vice versa. Maybe something like a publish/subscribe service for object referencing. This could also provide a central API (and maybe UI components) for auto completion.

@nickvergessen
Copy link
Member Author

Similar to Spartachetto you also got it wrong. This issue here is not about autocompletion or anything.

@sehucke
Copy link

sehucke commented Oct 4, 2018

So what is it all about - if it is not about "anything"? :-)

The main point I was making was not about an autocompletion feature... It was instead: If you try to "link collaboration things" please have the big picture in mind - I mean all the plugins and not only the ones you guys at Nextcloud take (very good) care of. Therefore an extensible system would be great.

... Just read the first comment again while writing... Now I am wondering: Did you mean something that is more like Microsoft Teams instead? Indeed, that would be a nice feature for enterprises and has imho a huge potential to push NC forward.

Regardless of what you meant, I think both features would be very valuable. ;-)

@Spartachetto
Copy link

I reread the initial description of this issue and the description on #7435...
@nickvergessen is completely right: these two issues are different.
Yet I do share the hope of @sehucke and I am sure that (if technically possible) you will take into account the broader needs when realizing this feature.
I also agree on the fact that this feature looks really useful!

@juliusknorr
Copy link
Member

juliusknorr commented Oct 19, 2018

@nextcloud/designers Here are some mockups based on what we discussed in Berlin and with @nickvergessen regarding the user interface:

Selecting a resource can be done in two ways.

  • A) Apps register a callback to render their own view for selecting (e.g. filepicker)
  • B) Apps register a callback to search for available resources (e.g. the deck app will just return a list of available boards)

Creating a new collection

image

A new collection is created if the user starts linking two ressources together. Therefore he first picks the type of Resource he wants to add. For a file, a filepicker is launched and after the file is selected a new collection is created. The user should be able to enter a name for the collection right after creating. By default we should aim to have meaningful names. For linking with a talk conversation, we simply could take the name of that conversation as a collection name.

Adding more ressources to an existing collection

image

THe user can also add more items to existing collections. For boards we would offer the resource selection (B) as a search input. After selecting "Link to a board" the input field switches to a select input for boards from the deck app.

Adding a resource to an existing collection

image

Adding to existing collection can also happen from resources, which don't have any linkage yet. The "Add to collection" select input can also be used to search for existing collections.

Feedback is very welcome 😉

@nickvergessen
Copy link
Member Author

We could also make names mandatory and the start of a collection.
So basically you click "Add to a collection" first option is "New collection", when clicked a name input field is shown, otherwise you get autocompletion of your existing collections.

@juliusknorr
Copy link
Member

So basically you click "Add to a collection" first option is "New collection", when clicked a name input field is shown, otherwise you get autocompletion of your existing collections.

Also fine by me 👍

@nextcloud/designers How should we integrate this into the files sidebar? Sould this be merged into the regular sharing UI or should we have a separate tab for the collaboration linking?

cc @jancborchardt Please have a look as well.

@Spartachetto
Copy link

It could be useful also to have contacts connected to the collection.

At least I really would like to have the possibility to share all the contacts connected with a specific activity with other colleagues, together with the files and the events.

@MorrisJobke
Copy link
Member

@juliushaertl @nickvergessen Looks like we need to move this to 16, because the plan for the first beta is to release on Thursday.

@MorrisJobke MorrisJobke modified the milestones: Nextcloud 15, Nextcloud 16 Nov 7, 2018
@jancborchardt
Copy link
Member

jancborchardt commented Nov 11, 2018

@nickvergessen @juliushaertl let’s have a proper design discussion about this at the Contributor Week. Having an additional concept of "Collection" does not really feel necessary. Just having a "Related" section would be a first good step and much less involved. It could start with simple suggestions, and then also evolve into a "Linked with" kind of thing.

All this needing to name things is a big barrier to even using it. People don’t want to spend time knowingly organize their stuff. It’s what Nextcloud should help them with.
If I have a folder called "Design team" shared to some people and then a Talk conversation "Design team" with the same people, it’s probably related and I don’t want to need to create a new collection called "Design team" manually.

@nickvergessen
Copy link
Member Author

Sure, let's talk about it, but we need to be able to have one resource in multiple collections and therefor you need to be able to distinguish them

@juliusknorr
Copy link
Member

juliusknorr commented Jan 11, 2019

I created some new mockups based on the design discussion we had with @jancborchardt and @skjnldsv at the hackweek. I also tried to come up with some usecase descriptions, so it is a bit clearer what the overall flow is:

Vocabulary

  • Resource type (e.g. File/Folder, Calendar, Deck board, Talk room)
  • Resource - single instance of a entity type (e.g. The folder "Design", the Board "Design planning")
  • Collection - 2-n resources grouped together

Asumptions

  • A collection consists of at least 2 entities
  • A collection has a name to make it easier to identify
  • There can be two collections containing the same entities

Use case 1: New collection

  • I create a folder called Android Design Mockups

  • There is a deck board called "Design overview" (which is shared with the design team)

  • I open the sharing sidebar of the "Android Design Mockups" folder

image

  • I click "Add to a collection"

  • A select box is shown
    image

    • As you type, existing collections will be searched, so a new element can easily be added to it
    • For each entity type there is the option to link the current entity (file in the example)
      • This will create a new collection, based on the name of the two entities linked together
  • I click "Link to a board"

  • A list of boards is shown
    image

  • I select the "Design overview" entry

  • A new collection named "Design overview / Android Design Mockups" is added to the list of existing collections
    image

  • Users who can access the "Design overview" get access to the "Android Design Mockups" folder

Usecase 2: Suggestion

  • User opens the sidebar of a folder called Design

  • The sharing tab shows the suggestion to create a new collection with entites of the same name
    image

  • E.g. There is a talk room called Design

  • The files sharing sidebar shows "Suggested linking: Create a collection with the talk room Design"

Usecase 3: Link to existing collection

  • There is a deck board called "Design overview" (which is shared with the design team)

  • There is a folder called "Android Design Mockups"

  • The board and the folder are linked in a collection named "Design overview / Android Design Mockups" (see use case 1)

  • A user from the design team a talk room "Android design discussion"

  • The user goes to the sharing sidebar in the talk app

  • The user clicks "Add to a collection"

  • The user sees the existing collection "Design overview / Android Design Mockups"

image

  • The user selects that collection

  • The talk room is added to the collection

  • The design group has access to the talk room "Android design discussion"

cc @jancborchardt @nickvergessen @nextcloud/designers @MorrisJobke @rullzer For feedback

@nickisashkir
Copy link

I work for a document management firm, and being able to link collaborations is huge. Especially for contracts. I want to be able to "links" my sub-contract with my contract for example.

In a project, we have files spread across. Like we organize Dashboards together, Dicom files together, and photographs together. There are some random pdf's in some folders. The organization makes sense and makes it extremely easy to find what we need and allows us to control permissions (ie: Only medical staff can see the DICOM, but, front-office staff can see the PDF history). but, with the collaboration links, someone with all access can easily jump from file to file.

@nickvergessen
Copy link
Member Author

Just for the record, in the started PR (#11871) entities are called resources

@jancborchardt
Copy link
Member

@juliushaertl very nice! Just some questions:

  • Will the name "Resource" ever be exposed in the interface? (I'd say not, "Collection" is the only new vocabulary we need here.)
  • I'd move the "Suggested linking" closer to the collections block, or is there a reason it's not?
  • Can we find another word for "Linking"? Like "Related from other apps" … not sure yet, but should be short.

@juliusknorr
Copy link
Member

Will the name "Resource" ever be exposed in the interface? (I'd say not, "Collection" is the only new vocabulary we need here.)

Yes, that was also my idea. It should be fine from the interface to just use collection.

I'd move the "Suggested linking" closer to the collections block, or is there a reason it's not?

👍 It is just there, because that was it in our mockup drawing from the hackweek.

Can we find another word for "Linking"? Like "Related from other apps" … not sure yet, but should be short.

We also need to use that term when offering different resources, like "Link to a calendar". How about using "connect"?

@jancborchardt
Copy link
Member

jancborchardt commented Jan 21, 2019

@juliushaertl alternatively, we use "Link to collection" as header for the section (instead of "add") and use "Link to board/mail/folder/…" for the suggestions.

Then for the "Suggested linking" we could keep using that. The issue was mainly that we used "Add" and "Link", and should use a uniform term. (Another possibility would be "Group to collection" or "Connect", as the "Link" will be confusing in the sharing settings?)

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

No branches or pull requests

7 participants