Send swag requests via email
garyhtou opened this issue · comments
When a hackathon is approved AND it has requested swag, we need to send an email with the following:
- Organizer Name
- Hackathon Name
- Organizer Address
The email address receiving these requests is actually a Slack channel (#hq-mail
). DM me for that email address.
After sending the email, the responsibility of getting the stickers to the organizer is off our hands. The Mail Team is responsible from there on.
We only want to send one swag envelope per approved hackathon. If a hackathon is approved multiple times, we don't want to send multiple envelopes. I'd suggest having some sort of way to track shipments. Possibly a Swag::Shippment
model?? Here's some quick sudo code
# requested_at datetime field
class Swag::Shippment < ApplicationModel
after_create_commit :send_request
belongs_to :hackathon
has_one :mailing_address, through: :hackathon
def send_request
# send mailer
touch :requested_at
end
end
# existing Hackathon model
has_one :swag_shippment
# when marking a hackathon as approved, create a `swag_shippment` if it doesn't already exist
We will not be building out a full mail/swag tracking system within Hackathons Backend. @recursiveforte is working on a mail tracking dashboard for Mail Team. Once their new mail tracking dashboard is built, we'll be sending a POST to request mail shipments (rather than emailing a Slack channel)
The Swag::Shippment
model could also be designed to be for any type of physical mail (not just swag)
It's not necessary at this moment
I'm currently chatting with @recursiveforte about the observability of shipments after we POST them to #hq-mail
.
The email copy should be something along the lines of:
Please send a
hackathons.hackclub.com
sticker envelope to Gary Tou. Their address is:Hackathon Name c/o Gary Tou Address Line 1 Address Line2 City, State ZIP Country
Is anyone interested in taking this on?