PuppetBot is a cloud powered chatter robot (chatbot) written in python. It is a robot which can have conversations with the end users. PuppetBot has a camera and is capable of staring conversation when it detects a human face in front of it. It is an actual robot which can make voice appropriate lip movements. PuppetBot uses AWS Lex as its chatbot engine. AWS Rekognition for face detection. AWS Polly for converting conversations into visemes, which are used as an input to control lip movements. Here is a video of the PuppetBot in action.
Voice based chatbot is a stripped down version of PuppetBot. This setup just needs a Raspberry Pi, USB microphone and speaker. Before starting the chatbot we need to configure the Raspberry Pi and build a cloud backend. Instructions to configure the Raspberry Pi are here and to build a cloud backend are here and here.
cd PuppetBot
sudo python bot.py audiobot start
Before starting the PuppetBot follow the instructions from hardware, configure raspberry pi and cloud backend pages.
cd PuppetBot
sudo python bot.py puppetbot start