Inspiration

WhatsApp is an ubiquitous program that everyone uses. However, unlike competitors like Telegram, it does not have an API for personal accounts, which limits the use of the application to solely communication via calls or messaging. Considering the growth of smart assistances and chatbots in other mediums, we were looking to offer similar functions to something we use very often - WhatsApp.

What it does

wa++ is a library that allows programs to interact with users via WhatsApp. wa++ enables you to turn your personal WhatsApp account into a chatbot, whose program you can either use current pre-added functionalities or you can build your own simply. The possibilities are limitless - listed below are examples of functionalities we have pre-added into the software.

for Self:

  • Auto reply to specific messages (when you are in DnD mode)
  • Set personal reminders that will message you during set time
  • Answer your personal questions, regarding weather, general knowledge etc.
  • Journal your day by conversing with a bot
  • Support your health - log diet, exercise, set medication reminders etc.

for Groups:

  • Set group reminders for specific friends
  • Search for past information covered in past discussions
  • Targeted messaging - send to specific members within the group chat
  • Time management bot - set alarms for specific task
  • Mathematical tools - quick calculation
  • Discussion note taking bot

for Fun:

  • Solve individual puzzles e.g. guess the number, hangman
  • Play group based games like Werewolf and Avalon
  • Spam your friends quickly and effortlessly
  • Returns the message you just sent
  • Bot that randomly sends nonsensical gibberish to you
  • Joke telling bot

How we built it

We used Python and a framework called Selenium to automate the browser interaction for Whatsapp Web. First, we wrote the API functions that our bots would be built on, such as sending and receiving messages. After ensuring that these functions worked as intended, we then proceeded to build some simple bots to demonstrate the API, such as an auto-reply bot and games like hangman and guess the number. We also tried to get as many friends as possible to test our bots, to make sure they worked properly.

Challenges we ran into

  • Not having enough time since we wasted too much time on a previous idea
  • Having to scan the QR code each time we ran the bots

Accomplishments that we're proud of

  • Having it work
  • Building games that our friends enjoyed playing

What we learned

  • You can get something working in 12 hours

What's next for wa++

  • More bots
  • Ability to interact with many chats at once
  • Automatically signing in into Whatsapp Web when loading the bot

Built With

Share this project:

Updates