When reading EULAs I have a hard time focusing on the very long content. EULAgy converts the text to voice and allows me to listen to EULAs during a commute, while I cook dinner, or as I lay down to sleep.
What it does
EULAgy takes any text, converts it to an mp3 and then persists the file in a database or S3 bucket. Doing the conversion only once saves time and money.
EULAgy also uses Amazon Comprehend to extract and count key phrases and do sentiment analysis.
EULAgy can be deployed on AWS or used from the command line.
EULA uses S3 to store artifacts from conversion and analysis. This saves time and money since your application won't have to execute these expensive operations every time you want the mp3 or key phrases information.
How I built it
- Amazon Comprehend
- Amazon Polly
- AWS S3
Challenges I ran into
PostgreSQL on RDS
Initially I was using RDS to persist mp3 and other data, but technical issues forced me to move to S3 for persistence.
- I am new to the
byteadatatype and it took me a while to the conversion correct
- I couldn't figure out how to use AWS RDS instances from Circle CI to run tests
- I could use RDS instances from my local machine, but was getting timeouts when trying to read data from RDS from Lambda
Accomplishments that I'm proud of
This can be used for any text, not just EULAs! Hopefully others will find this functionality helpful in their work, even if it isn't EULA-related.
What I learned
- Amazon's AI library tools are easy to use even if you're not an AI expert!
- The conversion and analysis utilities provided by the AWS SDK are pretty fast!
- How to manipulate files in S3
I initially used Amazon RDS to store records (including mp3 data) but abandoned that approach for S3 storage. (Look in the repository history to see the RDS code that was ripped out.)
byteausage and conversion to store mp3 data
- PostgreSQL on RDS is fast enough to persist and server mp3s quickly
- PostgreSQL on RDS is fast enough to use for unit testing from my local machine
What's next for EULAgy
- Creating an Alexa Skill as a reference implementation. This skill will read EULAs from Echo devices and display results of key phrase analysis for devices with screens.