-
Notifications
You must be signed in to change notification settings - Fork 1
Feature: 'ping/poke' owner of ticket during trade to nudge them to complete #100
Comments
All of this is predicated on a dream for a native SeatShare mobile application that would reduce the need for as much SMS chatter (for most users). That being said, these bits would be far easier to bite off in the interim, and offer a fall-back for future users that don't want to install the application or have simple feature phones. The current setup for requesting a ticket is rudimentary. It logs an entry into a
Item 1 above is somewhat covered by the notification that is generated when you are assigned the ticket (as in, the ticket owner makes the assignment of the ticket to you, the user). This is still just an email notification, as that's the only communication channel currently available.
Item 2 introduces the fun bits.
Item 3 could be a one-off, user initiated action that just sends the message "John Doe pinged you about the ticket for September 30 in Geeks Watching Hockey". If the model changes significantly, these could be automated a bit so that it follows the logic "ping the user 24 hours before the scheduled start time if a requested ticket's status has not been updated in that period of time, and ping them again 3 hours prior to the scheduled start time if it still has not been updated."
Item 4 has Twilio written all over it, as I have no idea how else we would go about receiving text messages, translating them to webhooks and acting on them accordingly. I do ❤️ this idea though. Update: We're sending outbound SMS using Twilio, but nothing yet on processing received messages. We could identify the user by their mobile phone number, but figuring out which ticket they are acting upon may be a bit trickier unless they included some other identifier, e.g. |
Discussed this with @stephenyeargin some last night but I am going to attempt to provide an .ics endpoint that contains as much data as we have about the group status and the individual user's ticket status for each event. Would also provide some built-in calendar reminders for various types of events. iOS and Android Calendar will already notify you of any reminders that show up in the iCal feed. Not the dream solution, but seems like a decent stop-gap where we get to piggyback on the Apple/Android user experience. |
I've added a |
Signed up for a trial Twillio account. |
❗❗❗ Related to parts of #100 Prior to this PR, the only notification option offered for when a ticket was requested or assigned was via email. We need something a bit more robust than that, so I integrated with Twilio to send text messages. This PR introduce the `twilio-ruby` gem and associated configuration environment variables: ```bash export TWILIO_ACCOUNT_SID=some_sid export TWILIO_AUTH_TOKEN=some_token export TWILIO_OUTBOUND_NUMBER=the_number ``` I also fixed a handful of minor annoyances with tests and the way the profile form behaved. I've run through the sandbox credentials and was able to get confirmation of a successful email send. Additionally, the `global_phone` gem was requred in order to meet Twilio's spec for all numbers to be sent in E.164 format (e.g. +15555551234) and to do that reliably for future phone numbers if we ever offer international messaging. I've added HoundCI to this repository, so it will gripe about a bunch of stuff. I'll take care of the styleguide errors throughout the day tomorrow.
Shipped some ICS stuff in #196, #202, #203, #204 (try, try again) but it currently does not include specific ticket details for your group/event. There still needs to be some sort of |
@kzettel yesterday made a passing comment... something along the lines of 'I was getting a bit worried there for a second if the trade would go through... it'd be nice to have some ability to poke the ticket owner to see if they could ack the trade'
So, some thoughts:
These are just a few thoughts, and I'm just now looking at the code so I have no concept of the LOE required here. Thoughts/comments/whatever appreciated.
The text was updated successfully, but these errors were encountered: