synthetic
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.
attitude
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.
multi-mood
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.
interface
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.