Our virtual office assistant was built for Alexa. We had to work intensely in its design and development to accurately project the idea behind its conception:
Design: Understanding the intents (tasks) and how to create utterances for it involves understanding of two things.
1) The natural conversation style of a user
2) How Alexa functions.
To work on the first point, we had to research in depth on how a conversation goes. Understand the session length and work on the fact that neither should it bore the user nor be harsh to it.
The request for the task to be done can be expressed in various ways, due to the flexibility and variation of spoken language in the real world. We had to make sure that at no point does the user feels that they're talking to a bot. The entire task has to be executed without the pressure of the failure or acting mechanical.
The second point was executed by researching extensively on Alexa's architecture. How she'd interact with AWS Lambda on receiving the utterances and accordingly execute the user's desired intent.
Its speech to text capability, the regionality and the limitation to its vocabulary had to be rigorously worked on to develop a non-mechanical yet concise utterances for the task.
Development: Working on this required complete understanding of the Alexa architecture and precise implementation. We developed an agnostic architecture which can work across all platforms or voice assistants like Alexa, Google Assistant, Cortana, Siri or Watson.
We developed a database which would be connected to an application (using NodeJs). This application shall receive the command or the task to be performed from Alexa decoded by AWS lambda.
The task will be performed, and accordingly the user will be guided throughout the process using voice user interface. Thus, the complicated process is made lucid and hands-free using our office assistant.