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

Allow unlimited alerts for those with .edu emails #29

Open
mlissner opened this issue Feb 21, 2024 · 10 comments
Open

Allow unlimited alerts for those with .edu emails #29

mlissner opened this issue Feb 21, 2024 · 10 comments
Labels
courtlistener enhancement Making an existing feature better

Comments

@mlissner
Copy link
Member

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:

  • It involves no extra code in CL
  • It provides one flow for our users: Become a member -> Get benefits
  • It ensures that .edu people always get the full benefits package
  • It reinforces that we're a non-profit, which is good stewardship of the next generation of donors. :)

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

@mlissner
Copy link
Member Author

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
Copy link

  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
Copy link
Member Author

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
Copy link

  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
Copy link
Member Author

  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
Copy link

jeniferw commented Feb 26, 2024 via email

@mlissner
Copy link
Member Author

mlissner commented Mar 6, 2024

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
Copy link
Member Author

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.

@mlissner mlissner transferred this issue from freelawproject/courtlistener Sep 25, 2024
@mlissner mlissner added enhancement Making an existing feature better courtlistener labels Sep 25, 2024
@anseljh
Copy link
Member

anseljh commented Nov 4, 2024

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
Copy link
Member Author

mlissner commented Nov 4, 2024

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

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
courtlistener enhancement Making an existing feature better
Projects
Status: Main Backlog
Development

No branches or pull requests

4 participants