freelawproject / foresight

Where we discuss and prioritize new features
2 stars 1 forks source link

Allow unlimited alerts for those with .edu emails #29

Open mlissner opened 8 months ago

mlissner commented 8 months ago

A couple reasons to do this:

  1. It should be fairly easy.
  2. It'll give librarian-types another reason to mention us in their guides.
  3. It'll get people using our systems early.
  4. Everybody else does this, I think, so we should too.

I think there are two technical ways to go about it:

  1. Give them free membership benefits at a particular level if they have .edu email addresses. We're looking into how feasible this is in Neon.

  2. Just provide anybody that logs in CL with member benefits, leaving Neon out of it.

I prefer number one, if we can do it:

We'll follow up with whether option one is feasible!

mlissner commented 8 months ago

OK, we talked to our Neon rep today. She doesn't have any clever tricks on her end, so the solution is:

  1. @jeniferw makes a new form that allows these people to become members for free.
  2. We check email addresses when people confirm confirm them (after signing up or changing it).
  3. When we detect a .edu email address, we send an email saying, "Congrats, you get free benefits", and it includes the link to Jenifer's form.
  4. People use the form to sign up.
  5. We get webhooks and apply the member benefits accordingly.

Two pieces that need more thought:

  1. How do we verify if students are sharing that link all over the place? I think the easiest way is that when we get the webhook in step 5, we only apply it to accounts that have confirmed .edu accounts. (Q: What do we do if not? Do we email the user?)
  2. What happens if somebody changes their email address away from a .edu? Do we revoke their membership and send them a note? I think that's probably right, but probably kind of hard? Perhaps memberships can timeout somehow and we won't need to do this?
johnhawkinson commented 8 months ago
  1. How do we verify if students are sharing that link all over the place? I think the easiest way is that when we get the webhook in step 5, we only apply it to accounts that have confirmed .edu accounts. (Q: What do we do if not? Do we email the user?)

I'm confused as to whether you're encouraging or discouraging link sharing.

  1. What happens if somebody changes their email address away from a .edu? Do we revoke their membership and send them a note? I think that's probably right, but probably kind of hard? Perhaps memberships can timeout somehow and we won't need to do this?

I'd suggest you just run a report every 6 months and see if it's becoming a problem.

mlissner commented 8 months ago

I'm confused as to whether you're encouraging or discouraging link sharing.

Discouraging it, generally, but it's fine among other students.

I'd suggest you just run a report every 6 months and see if it's becoming a problem.

Yeah, that could work, but we're pretty bad at that kind of thing. Jenifer is better at it than I am, but I try to automate these kinds of things if I can. :)

jeniferw commented 8 months ago
  1. Membership level created in Neon - requiring renewal every 6 months.
  2. Workflow set up in Neon - so when the account is pushed from CL to Neon via API an email will be sent with the .edu membership form to claim their membership.
  3. Not sure how to confirm that the .edu email address is still valid when they renew - but will check with Neon support.
  4. Email includes options to instead opt for the paid membership that includes additional benefits (primarily swag) or a tax-deductible donation.
mlissner commented 8 months ago
  1. Great.

  2. The workflow is able to check if it's a .edu?

  3. The best way to confirm an email address is valid is to send it an email, so rather than bothering to confirm, we can just send the email and see if it bounces.

  4. Great!

jeniferw commented 8 months ago

I was able to put the condition in the account created field that the email address contains .edu.

image

The workflow did catch jenifer+membership.edu@free.law And did not send the email to jenifer+membership@free.law So it looks like it works.

There might be a chance that someone has an email address that contains .edu other than at the end - but I think the chance is so small it would be okay.

mlissner commented 8 months ago

So this is up and more or less functional. The way it will work is:

  1. There's a form on Neon that Jenifer set up that gives people free memberships and sends a webhook event to CL.

  2. The form is advertised two ways:

    • In our documentation (maybe in the FAQs?)
    • If somebody signs up on CourtListener or changes their email address, we already push that information to Neon as an account. When we do, if the email address contains .edu, we send them a note saying that they can sign up for a free account, and providing the link.
  3. Once somebody gets the link to the form (whether from our documentation or the email) and becomes a member, Neon pushes that to CL and they get benefits.

  4. Not completed: If CL sees that the membership is a free .edu membership, it checks the user's email address, that it ends with .edu. If so, great. If not, it sends an email to the user to tell them that they do not qualify for a .edu account and encouraging them to sign up for a regular one. (This check allows us to post the link publicly without worry of abuse.)

  5. When the membership expires, Neon pushes that to CL, and CL removes the benefits. Memberships are set to expire after six months.


Thoughts:

  1. Jenifer, if somebody already has a free membership (or a non-free one), and they change their email address, do we send them the email anyway? I guess ideally we wouldn't.

  2. Jenifer, when the membership expires, do we send another email automatically so they can re-up it?

What did I miss? Is the above more or less correct and does it cover all the bases?

mlissner commented 5 months ago

Responses from Jenifer:

  1. No, they wouldn't get an email when they change their email, so that's good.

  2. Yes, they get a reminder after 5.5 months, as they should.

anseljh commented 1 week ago

Just noting that a lot of alumni use an .edu address. I have an @alum.berkeley.edu one, and I haven't been a student there in more than 20 years.

mlissner commented 1 week ago

Yeah, that's fine. If you're organized enough to keep your alum email working, fine, you win. :)