Ticket #2094 (new enhancement)

Opened 2 years ago

Last modified 20 months ago

Make MUC more discoverable and easier to use

Reported by: beerfan Owned by: asterix
Priority: normal Milestone:
Component: usability Version:
Severity: normal Keywords:
Cc: misc@… OS:

Description

The group chat menu (Actions > Group Chat) provides very limited ability to join a conference room. It is also a bit of a mess with underlined headings which feel rather awkward. Discovering conference rooms and bookmarks should be integrated in the same place because new users can't be expected to know that they can be found in the "Discover services" dialog.

I have limited time at the moment but I'll try to add some proposed solution later.

Attachments

Change History

Changed 2 years ago by beerfan

In playing around with the various conference room (MUC) windows I

discovered something.

The in the service discovery window if you select a conference room service and click "Browse" then it opens a new window ("Browsing conference.gajim.org" for example) which lists the rooms for that host and it closes the service discovery window. This new browse window has no ability to change the host being browsed. However, if in the service discovery window the user types the service hostname (e.g., "conference.gajim.org") into the "Address" input then it lists the rooms for that host and changes the list and buttons at the bottom to be identical to the previously mentioned browse window but it keeps the "Address" input. All of this may be intentional.

My first proposal would be to add a room search function to the "Group Chat" menu by reusing the service discovery window. It could be called "List Rooms" or "Find Room" and it should attempt to open the service discovery window at some default conference server (perhaps the first account host if it has a conference service) if possible. Perhaps the available services for each account host could be cached somewhere if absolutely necessary to make this possible.

Therefore, the service discovery window (called the room list window from here on) should display the host being viewed (e.g., "conference.gajim.org") and the list of available rooms, if the users host has a conference service. If none of the users' hosts provides a conference service then perhaps the "Address" select input could be populated with a list of known conference hosts and optionally default to "conference.jabber.org".

Another button should be added to dialog to allow the user to bookmark rooms directly from the room list. Another column could be added to the room list to show if the room is bookmarked or not, though this may be unnecessary.

I'm still thinking about how to integrate the quick join window into the process. It should be quick and easy to join a known room but having a menu which includes both "List Rooms" and "Join New Room" and a list of bookmarks feels clumsy to me. They should probably be integrated into a single menu option somehow.

Keep in mind I'm a jabber newbie so these proposals are based on what I think would be easy for a newcomer to understand though they may not be inline with the "Jabber" way of doing things. I am not sure if it appropriate to list "conference servers" for example or if there is a preferable way of discovering things.

Changed 2 years ago by Liorithiel

And a big button with huge text: "Create new room" somewhere in window

with muc listing. Entering a nonexistent room is not intuitive.

Changed 2 years ago by beerfan

I think a "create new room" menu option would be more intuitive and

discoverable than a button in a group chat window (if I'm understanding your proposal correctly).

Perhaps the menu should be something like this.

"Actions" > "Group Chat"

 Join or create a room
 -----------------
 gajim
 jabber
 beachparty
 -----------------
 Manage bookmarks

The "account" lines should be removed from the menu. Knowing which jabber account a room bookmark is associated with is something users are not likely to care about. This information could be visible in the bookmarks management window but is unnecessary in the menu.

The "Join or create a room" menu option would give a clue that both can be done with the associated action. It should bring up a dialog that contains the following.

  1. "Conference Server" combobox which is editable so that the user can select from a list of known hosts or enter an unknown host.
  1. "Nickname" text box
  1. "Room" text box which serves as a search/filter
  1. "Password" text box
  1. A collapsible list box labels "Rooms" or similar which, when expanded would contain the rooms discovered on the selected conference server. When a server is first selected it might contain text informing the user that the room list is being accessed.

Finally, if Gajim detects that the account cannot store room bookmarks then the bookmark menu options should be hidden. It is perceivable as a bug when Gajim seems to save bookmarks but does not following a restart.

Changed 2 years ago by beerfan

Liorithiel, after rereading your comment yet again I think I understand

your proposal.

I don't think that adding a button to the "join a room" dialog is a good process even if it would be easier for a user to understand. We need to find a way to make it obvious that the user can either create a new room or join an existing room from the same dialog.

Using tooltips on a label should be avoided at all costs. This form of information is not discoverable for most users. The menu option label should make it clear what the dialog does. Failing that, using the dialog should be very clear once it is opened.

I'm not 100% happy with my proposed solution but I think it's a step in the right direction.

Changed 2 years ago by jim++

  • type changed from defect to enhancement

Changed 2 years ago by misc

  • cc misc@… added

Changed 20 months ago by anonymous

  • component changed from None to usability

Add/Change #2094 (Make MUC more discoverable and easier to use)

Author



Change Properties
<Author field>
Action
as new
as The resolution will be set. Next status will be 'closed'
to The owner will change. Next status will be 'new'
The owner will change to anonymous. Next status will be 'assigned'
 
Note: See TracTickets for help on using tickets.