Chatbot

Moscow Muler

Moscow Muler is a SMS-based bot I built that users can chat with, play party games, send selfies and receive customized drinks according to the facial attributes showing on their pictures, such as their age, gender, makeup, hair color and mood. It's powered by two APIs, Microsoft Azure - Cognitive Science - Face, and Cocktail DB. The bot was built with Ruby and Sinatra framework.

Individual Project
Time Span: September - October 2018

Check out my code on Github >>

How I Started It

I first thought about building a chatbot about food and drinks. I found that a lot of food/drink-related apps are about nutrition and calories, they are very healthy but they take away the fun part of enjoying food and drinks. Then I thought about what young people do nowadays. They love taking selfies, sharing stuff on social media, showing their personalities and having fun in nightlife. With this user persona, I decided to create a chatbot that can offer customized cocktails based on emotions on selfies.

Define Personality

Moscow Muler’s speaking style is casual and funny and he often uses emoji to express his emotion. Besides learning what he can do, the users can understand his personality better through fun facts and the “Never Have I Ever” game with him. The facts and jokes are based around drinks and nightlife to reflect his “virtual bartender” and “party host” identity. Directions on trigger words and what questions can be asked are given so that the dialog flow is always clear. Sometimes the users will get customized response to their selfies, such as “I like the lipstick you have on”.

(Online Image)

User Journey

There are guiding messages and trigger words to keep the conversation going.

Polish Conversation

Adding fillers can help keeping the users be engaged and patient during waiting time. My bot usually takes more than 5 second during the cocktail recommendation feature, it will say “please wait, I am making your cocktail now” to keep the user engaging and ease the awkwardness during wait. Sometimes the user asks for something that is beyond my bot’s capabilities, such as ordering food and getting information about bars, the user journey will end suddenly if my bot says “sorry I can’t help you with that”. An optimization opportunity here is that my bot should provide other routes for the users to smoothly continue navigating, which could be the Yelp app, a website and other specialized bots.

(Online Image)

The Development Process

Woo-hoo! So How Does It Actually Looks Like?

Onboarding Users

Customized Repsonses

Party Games

Video Demo

My Thoughts about Human & Bot

Imagine if we are able to transmit consciousness into robot bodies and if this will be the new form of human life, the way we evaluate ethics in today’s human civilization may not be the same scope when we look at the new form of human life anymore. Just take a moment and think out of the box, if consciousness is the only reflection and the identity that we define who we are, instead of race, gender, age and all these kinds of labels that we put on ourselves, do we still have racism, gender-related crimes, national-to-national issues and the other ethical problems? Think about in the animal world, all they worry about is not being cannibalized. But in the human world, we are a bit more advanced and we no long worry about cannibalizing each other because we already have lots of other ways to gain food. We worry about something more advanced, such as law, ethics, history, civilization, race, gender, society, social status and health. Animals won’t understand what we worry about, same as the frog in the well knows nothing of the great ocean. But we as mankind, we know nothing of the outside world of our own either. Only when we no longer worry about race, gender, health, biological appearance, shall we explore and achieve a much higher level of wisdom and intelligence. 

(Online Image)