sammi’s conversational interface is handled by api.ai. google speech api allows us to listen to voice input, which is redirected into our agent and transformed into intents and entities. a custom digital voice from watson closes the loop.
snowboy hotword detection to listen for “hey, sammi”. sammi's responses are based on her swedish grandmother personality. randomness ensures unanticipated scenarios are taken care of.
socket.io controls the eyes, animated in a webpage. sammi’s eyes can express 8 basic types of emotion, the same number as humans. a thermal printer provides additional support for communications and small tokens.
node.js glues everything together, along with an express app to allow for occasional remote control and debugging. sammi goes to sleep around 7, to prevent overheating of electronic components and carry out clean-up.