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

Requests without topics - another entry to threading #418

Closed
4 tasks done
mrsimpson opened this issue Jul 19, 2018 · 5 comments
Closed
4 tasks done

Requests without topics - another entry to threading #418

mrsimpson opened this issue Jul 19, 2018 · 5 comments

Comments

@mrsimpson
Copy link
Member

mrsimpson commented Jul 19, 2018

Replacing #179 based on the last product refinement

Motivation

Currently, requests are the heavy threads based on topics only.
This limits their usage and requires casual users to understand the data model and room types. In order to allow more flexible processes for asking a question (#145, #178), the request must not only be created on the basis of a topic but also on any public or private channel.

Also, people need to join a channel in order to create a thread which is cumbersome for newbies and in some cases unwanted (private groups shall remain privatem, still someone might want to ask a question for it) .

Purpose

As a user who wants to ask something, I want to start a question/request/thread for any room without joining the room in order to get help from those experts.

Threads are a common feature across multiple chat platforms and mostly accepted by users. There's a loooooong ungoing discussion RocketChat#1112 how to implement threads in RC.

This issue is about enabling threading without the need to use the fullblown request/topics mechanism.

Tasks

  • provide a simple "create thread" UI. For this, the createRequest template can pretty much be copied. However, it should only contain one single input for the initial message.
  • As parent room, a configured room (by default "General") should be selected. This selection might optionally be changed by the user by showing the input field.
  • Keep the room type if based upon c or p
  • It shall be configurable whether threads shall be enabled or not. If disabled, the buttons from the action menu and the home screen starter shall be hidden.

Remarks

  • A thread shall only be identifiable as such by having featuring a parentRoomId and optionally a originMessageId.
  • Technically, the package should not focus on "questions" or "asking something", but it shall be as independent from Assistify as possible - and thus contributable. The UI texts can be overwritten for Assistify with "Ask a question" (instead of "create a thread")
  • As long as the custom room types exist, there will be tabs on the creation screen. The removal of requests and topics is not necessarily part of this issue. It's only important that when implementing this feature, there is not explicit dependency to requests and/or topics. However, the order of the room types could be changed in order to make the requests less prominent.
@mrsimpson
Copy link
Member Author

@janrudolph your feedback, please.

@mrsimpson
Copy link
Member Author

Technical remarks

  • Start a new package assistify:threading
  • Potentially, start from a plain branch of RC develop
  • Copy the request creation screen, the method to create a request and other artifacts related to threading to this new package
  • We may leave out the custom rendering of the thread created message as this is another dependency towards a modification
  • Make it build (remove "syntax"-errors)

@janrudolph
Copy link

janrudolph commented Jul 20, 2018

@mrsimpson I am missing the part of defining the parent room. Do we configure it in the admin backend?

By the way, UI design of "ask a question"

ask-question

optional: right sidebar shows a hint that a knowledge base will be present soon

hint-knowledgebase

@janrudolph
Copy link

janrudolph commented Jul 20, 2018

@mrsimpson Is the implementation of the knowledge base in public and private channels also scope of this issue?
Edit: No, it is not. Please see #419

@ruKurz
Copy link

ruKurz commented Sep 6, 2018

Should be resolved by releasing less-is-more

@ruKurz ruKurz added this to the less-is-more milestone Sep 6, 2018
@ruKurz ruKurz closed this as completed Sep 11, 2018
@ghost ghost removed the progress:working label Sep 11, 2018
vickyokrm added a commit that referenced this issue Oct 2, 2018
vickyokrm pushed a commit that referenced this issue Oct 2, 2018
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

3 participants