Skip to content
This repository has been archived by the owner on May 20, 2024. It is now read-only.

Place conversations & subscriptions #986

Closed
djahnie opened this issue Mar 28, 2018 · 13 comments · Fixed by karrot-dev/karrot-backend#662
Closed

Place conversations & subscriptions #986

djahnie opened this issue Mar 28, 2018 · 13 comments · Fixed by karrot-dev/karrot-backend#662
Assignees
Labels

Comments

@djahnie
Copy link
Member

djahnie commented Mar 28, 2018

It was requested to have the possibility to subscribe to stores. Store subscribers would then be the only ones who–

The default could be that everyone is subscribed to every store to not have users be confused that they don't receive info anymore.

@djahnie
Copy link
Member Author

djahnie commented Apr 6, 2018

Last year in October @brnsolikyl (who I apparently am not able to properly mention, hm...) already asked for something very similar:

I wonder if there's any issue open where you discuss the idea of users being able to bookmark stores, so that in the future the pickups of those stores could be displayed first and also notifications for new messages on store walls. That's surely a low priority for now but could be significant in case groups grow in size and add many stores with regular pickups.

@tiltec
Copy link
Member

tiltec commented Oct 31, 2018

Some kind of store subscriptions would be helpful for having more notifications, for example

  • pickup gets created/modified/deleted
  • pickup series get created/modified/deleted
  • store changed
  • new feedback

@tiltec
Copy link
Member

tiltec commented Jan 25, 2019

#1240 adds store conversations and this seems a good opportunity to also think about subscriptions.

What does it mean when a user subscribes to a store?

  • do they get email notifications about store wall messages?
  • get pickup/feedback notifications?
  • get notifications when somebody edited the store?

Should it all be one setting ("subscribed" / "muted") or do we need to refine it further? What's the idea about usability? Adding more buttons and settings probably will make things worse...

@brnsolikyl
Copy link
Contributor

Awesome!

From a user perspective and recent tests I'd recommend to be very careful with extra notifications. I think it's the case of having some of the current notifications turned off by default (like wall messages and upcoming pickups) and when the person subscribes to a store, that would turn on message notifications for the wall on the store and also upcoming pickups that nobody signed up to.

I plan to work on a more elaborate proposal on notifications in the upcoming week, based on tests and feedback

@tiltec
Copy link
Member

tiltec commented Jan 31, 2019

Thinking a bit more about store wall in relation to subscriptions: should people who did not subscribe to a store be able to read and write on the store wall? I guess yes. I wonder if it's then fitting to have the store wall as "muted" conversation for those who didn't subscribe. It might be a bit annoying because they still get an entry in the "latest messages" menu then.
Otherwise I would have to introduce a concept of conversation participants that are even more muted...

@tiltec tiltec changed the title Store subscriptions Store conversations & subscriptions Feb 1, 2019
@tiltec
Copy link
Member

tiltec commented Feb 1, 2019

It seems all group members should be able to read/write into all group-related conversations (e.g. pickup chat, store wall). So there seem to be four levels of membership:

  1. non-members that don't have access
  2. group members with read/write access, but no notifications
  3. subscribers that get notifications (store subscriptions, people who joined the pickup)
  4. subscribers with "muted" notifications (e.g. no emails and greyed out bell notifications)

We currently have levels 0, 2 and 3 implemented, so level 1 is missing. I wonder if we actually need level 3 or if people should just unsubscribe if they don't want notifications anymore.

Maybe it helpful to get some more inspirations - looking our beloved Discourse forum software:
screenshot_2019-02-01_11-34-17

It seems our "muted" option is similar to their "tracking" option, and "non-muted" is similar to "watching". Their "normal" options seems useful to notify people if somebody replied to them, but our reply concept is different (goes into thread).

@tiltec
Copy link
Member

tiltec commented Feb 1, 2019

Had a chat with @nicksellen about possible implementation steps. Might add a group field to the conversation, and allow everyone in the group to read and write the conversation. For conversations where this should not be the case (e.g. conflict resolution is only readable to members), set an is_open field to False.

Notification details are yet to be defined:

  • when somebody unsubscribes the store, is it ok if store wall messages disappear from the latest messages menu, as if the person never was subscribed?
  • if somebody writes into a conversation without being participant (e.g. no pickup collector or no store subscriber), is it ok to assume they don't care about any response? might need some UI effort to explain this

@tiltec tiltec changed the title Store conversations & subscriptions Place conversations & subscriptions Feb 7, 2019
@tiltec
Copy link
Member

tiltec commented Feb 9, 2019

I made a prototype notification selector, to replace the existing "notification toggle":

screenshot_2019-02-09_21-49-30

@brnsolikyl
Copy link
Contributor

brnsolikyl commented Feb 10, 2019

In my opinion, subscription to a store = chat notifications for messages on the wall and pickup notifications (created, disabled, changed, etc.).

I like the selector above, because there should be an opt-out for email and push. However, no notifications at all should be simply equal to unsubscribing from the store. There's one little detail that I'd change in this selector, which is the icons. It can be a bit confusing judging only from the icons. I'd choose an e-mail icon for the "all", a green bell for the "some" and the eye or greyed out bell for the "none"

Besides the notifications, subscribed stores should show up first on the list of stores on sidenav, as well are the stores' "pickups waiting for you" on the group's wall page.

And all I wrote above is based solely on my opinion as an user, except for "there should be an opt-out for e-mail and push" which is a feedback that I heard from many who could not find it. We can ask for more input later after this is implemented.

@tiltec
Copy link
Member

tiltec commented Feb 10, 2019

I try to put the first version on dev.karrot.world in the next days, to give you a better feeling what the current state is.

My current version has place subscriptions and place conversation subscriptions slightly decoupled:

  • when (un)subscribing a place, the user also gets (un)subscribed from/to the conversation
  • when the user (un)subscribes from/to the conversation, this does not affect the place subscription

I made it so because conversations have a bit of their own life in the backend code, to tie them more closely to a place produces more tightly coupled code ("spaghetti" if we are not careful). But we could still do it if the current solution has significant drawbacks.

Some more questions:

  • should the "pickups waiting for you" only show pickups from the places the user is subscribed to?
  • should new members get prompted to subscribe to a store?

a place wall with subscriptions!
image

@tiltec
Copy link
Member

tiltec commented Feb 11, 2019

Next iteration! Added unread "chips" in the sidenav, sorted the stores to show subscribed ones first (and always show subscribed ones, even if they are not active).

image

I added a subscription toggle in the same style as the conversation notification toggle:
image

View on the group wall:
image

@tiltec
Copy link
Member

tiltec commented Feb 11, 2019

How should we go about archived places? I'd lean towards "closing" the conversation if the place is archived, and opening it again if it gets restored.

@tiltec
Copy link
Member

tiltec commented Feb 14, 2019

They are online on dev.karrot.world! I opened an issue for follow-up discussions: #1297

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

Successfully merging a pull request may close this issue.

3 participants