mitodl / open-discussions

BSD 3-Clause "New" or "Revised" License
10 stars 2 forks source link

unsubscribe API support for MM learners #160

Open pdpinch opened 7 years ago

pdpinch commented 7 years ago

This builds on #112

Users will want to be able to unsubscribe from channels so they don't appear in their feed.

When a user is unsubscribed through their own action, we need to keep track of the unsubscription to make sure the user isn't automatically resubscribed by a percolate query. Since reddit only tracks subscriptions and not unsubscriptions, we'll need to maintain the user's unsubscriptions in the open-discussions app, and add a test on the subscription API to make sure the user hasn't already unsubscribed.

pdpinch commented 7 years ago

This is blocked until we complete the MVP

pdpinch commented 6 years ago

@rhysyngsun @noisecapella I know we have an add_subscribed API (I've used it in MicroMasters). Do we not have an unsubscribe API?

rhysyngsun commented 6 years ago

@pdpinch we do and we don't. We do have an API to unsubscribe, but if a user unsubscribes there's nothing stopped MM from adding that subscription back in. That's what this issue is meant to address. We would need to add a model to track user unsubscribes and block updates from other apps when that record exists. But also allow somehow for the user to re-subscribe, which probably means we'd need a separate subscription management mechanism for users or at least a way to distinguish user requests from application requests.