By leveraging the availability and popularity of the Facebook Messenger platform around the world, Art Auction opens up the selling and buying of artworks to a global audience. This both increases the audience spectrum for artists in various countries, as well as increases the array of choices for global art lovers. In addition, Art Auction encourages the selling of artworks at base accessible, which can then be increased based on demand, during the auction stage.

What it does

Out Art Auction bot automates the user process for buying as well as selling art. When more than two people have selected the same artwork, it will be put up for bidding during a specific time slot, which the user will be notified of via a Facebook message from the bot. By starting with any simple text prompt such as a greeting, the user will be able to select between "Buy Art" or "Sell Art" quick replies, which will then send them the appropriate prompts. During the "Sell Art" set of prompts, the user will be prompted to upload their artwork, as well as the title of the piece, year of creation, initial bidding price, category (i.e. Painting, Sculpture, or Photography), and dimensions. During the "Buy Art" set of prompts, the user will be able to select their preferred category and price range of artworks. The artworks matching their description will be shown via a Messenger Generic Template Carousel. The buyer will then be sent a prompt to await further instructions for bidding on the work, as applicable.

How we built it

Our bot using automated responses is built using Node.js and vanilla javascript. It retrieves user data and sends user messages via Facebook's Graph API with the Art Auction page access token; It uses the sender's psid for customized responses like first and last name. It makes use of the Messenger Platform Quick Replies, Templates, and Buttons payload and properties, to create fancier automated page responses. The code is hosted on Heroku (free tier), which has a delay on the first interaction. User entered data is saved and retrieved from a cloud MongoDB database. The bidding management is being built using with Node.js

Challenges we ran into

Design challenges involved taking into consideration all forms of user interactions and potential scenarios, as well as implementing appropriate information entry verification. Technical challenges we ran into mostly involved setting up our app, and connecting it to the webhook for our Page and having a local environment to test it (this was resolved using Ngrok tunneling). As well, some time was spent going through docs and playing with Facebook Samples' code, to figure out how to use the various Messenger Platform features, as well as retrieve specific user information via Facebook's Graph API. It was nice also getting to use Javascript Promises, async functions, and overall, dealing with a lot of the details of the language through this hackathon.

Accomplishments that we're proud of

Through this hacakthon, we are proud of addressing a real-world problem regarding a more accessible interface for artists and world-wide buyers. Through our application, anyone in the world with access to Facebook can also access a world-wide array of artists and their art.

What we learned

Through this hackathon, we gained experience and depth in systems thinking, creating user flows, and understanding chatbot conversation design. From a technical perspective, we also learned about webhooks, localhost tunneling, and Facebook Messenger Platform features.

What's next for Art Auction

From a business and design perspective, we want to continue expanding the different types of art sold through Art Auction and also create feedback loops for different user input scenarios. From a technical perspective, we will be completing the live auction aspect of our application in the coming weeks.

Share this project: