According to the U.S. State Department, 600,000 to 800,000 people are trafficked across international borders every year, of which 80% are female and half are children. While I do not have the money to end this horrendous activity by writing a cheque, what I do have is a very particular skills, skills I have acquired over a very long career. With these skills I built Mayday to create a nightmare scenario for every trafficker out there by engaging more people about the problem and giving them the tools to report incidents of trafficking they see faster.
What it does
Mayday is a Facebook Messenger bot committed to ending human trafficking. Mayday has two main functions: get a fact about human trafficking and to file a report if the user sees an instance of trafficking. The facts are meant to educate the user human trafficking and recognize the signs. The form helps user’s act when they see incidents of trafficking.
This bot uses Amazon Lex and Amazon Comprehend to help users fill out the form faster and navigate the bot. Images are an option for the form and Amazon Rekognition helps with analyzing these images. Amazon Translate helps Spanish speakers use natural language to navigate the bot as well. The data from Amazon Comprehend and Amazon Rekognition help bot administrators triage the most important incident reports.
Mayday is a bot that is extensible enough to help meet the needs of a variety of stakeholders by separating content from code and using a Serverless Application Repository structure.
How I built it
Amazon API Gateway handles integration into Facebook Messenger with AWS Lambda handling the logic. Amazon Lex and Amazon Comprehend enhance the user experience for users of the bot while also helping stakeholders find the most relevant reports faster. Amazon Translate helps Spanish speaking users to utilize natural language within the bot. Users are encouraged to include an image in their human trafficking reports. Amazon Rekognition helps moderate these images for stakeholders. Finally, the AWS Serverless Application Repository structure makes deployment super-fast.
Challenges I ran into
Time, I did not get to build all the things I wanted.
Accomplishments that I'm proud of
First time I used Amazon Comprehend and Amazon Translate. I tried to make my instructions as verbose as possible so that developers know exactly how to use different parts of the platform, how to deploy Facebook specific features like the persistent menu for a variety of circumstances, and make the codebase as extensible as possible to meet the needs of a variety of stakeholders. Also, I created a basic but AI enhanced admin web app to view and manage any reports a user submits.
What I learned
Still pretty new at making Serverless Application Repositories so I am still learning how to make a great repository. Second thing was how to use Amazon Comprehend and Amazon Translate.
What's next for Mayday
Translating the bot into Mandarin Chinese will also be useful since China is the fastest growing region of human trafficking activity. Then creating bots for WeChat and SMS will need to be done to reach more users.
Polaris runs the United States Human Trafficking Hotline. The main long-term goal for Mayday is to work with relevant stakeholders like Polaris to see how we can help complement their human trafficking hotline with the bot.