About the Client
The client is a household name in the US, best known for its plumbing products, faucets, sinks and fixtures. Its kitchen and bathroom products are synonymous with luxury, innovation and aesthetic design.
The client also operates in the hospitality space, operating and owning several resorts, hotels and golf clubs around the world.
The client’s kitchen and bathroom products were synonymous with luxury, innovation and aesthetic design. In keeping with its tradition of creating innovative and engaging user experiences, the company embarked on a digital transformation journey to re-imagine their product portfolio as smart and connected products. The client viewed the growth of IoT as a major disrupting force in its business and wanted to take a “first-mover” advantage by transforming its current product range into a smart, connected portfolio of products.
Part of the client’s product transformation initiative include integration and control from popular voice-based products such as Amazon Echo (powered by Amazon Alexa) and Google Home (powered by Google Assistant).
The vision was to allow users to turn on and turn off water, control water temperatures and showerheads and drain out water in the bathrooms. In the kitchen, users could ask the kitchen water dispenser to dispense an exact volume of water. Music and lighting could also be triggered by voice.
Silicus designed and developed a “skill” that could be downloaded from the Alexa or Google home app store. The Voice enabled service exposed APIs for processing the skills, it is a web app deployed as part of the solution.
When users control products via voice, the Alexa or Google Home skill in the Cloud triggers and gets authenticated via the client’s Azure IoT hub platform.
Implementation steps for Alexa and Google Home were similar in most aspects, and Silicus successfully integrated both services within the client’s Azure IoT enabled product platform.
Amazon Alexa & Google Home Integration
Within Alexa, voice commands are translated into intents and each intent is defined in the Cloud. The client can use different choice of words to convey the same intent – these combinations are pre-defined and stored within the intent. Once a command triggers, the appropriate intent is identified, and the suitable control API is invoked (e.g.: Faucet API). Once the API is invoked, and a message is composed, and the desired command is communicated to the Azure IoT Hub. The IoT hub then interprets the message and signals the device (faucet) to turn on or off.
A collection of all intents with the related APIs and control logic and is called a “skill” in Alexa terminology. Using the Alexa Skill Set (ASK) kit, various custom skills were developed for kitchen and bathroom products. Some examples:
Alexa, ask <xyz> to turn on my faucet.
Alexa, ask <xyz> to fill my sink.
Alexa, ask <xyz> to check my water usage.
Alexa, ask <xyz> to how much water I’ve used.
Alexa, ask <xyz> to give me 1 cup of water.
Alexa, ask <xyz> to dispense water for 30 seconds.
The same process was followed for Google Home integration.
Initial Authentication & Registration
When a product is first being set up for Alexa or Google Home voice control, the user is first authenticated on the voice platform and the account is linked to the client’s platform account. This federated identify and authentication management This will enable the user to perform all voice-based operations in a secure manner.
Silicus helped the client craft an intuitive and modern registration experience via a mobile app with a wizard-based workflow that guided the customer through the entire registration and authentication process.
The integration underwent significant testing to ensure the commands were interpreted correctly. Automated test scripts were written to create commands using different word choices to achieve consistency and reliability.
Manual testing was comprehensive and involved command utterances with multiple voices types, modulations, speed etc. When developing a skill, utterances were coded to tell Alexa what to expect. This can mean typing out dozens of very slight variations of questions and statements — basically anything that a user would say to get the result they want.
This testing takes an utterance and turns it into a JSON payload as if it was coming from Alexa. The testing was an integral part of the development and overall it took about 3 months’ time to develop and deliver for Alexa.
Amazon Alexa, Google Home
Azure IoT Hub
Ahead of the Competition
Enabling its kitchen and bathroom products to be controlled via voice set the client apart from its competition. At the same time, getting it wrong or releasing a version with faulty response to commands would have tarnished the client’s brand. Silicus ensured the Alexa and Google Home integrations were released without any glitches or adverse customer feedback.
Award Winner at CES 2018
Despite the stringent timelines and the challenges around hardware and Azure IoT platform version changes, Silicus could deliver a fully functional solution that was demonstrated at CES 2018. The innovative voice and IoT enabled smart bathroom product was awarded the “2018 CES Innovation Award” honoree in the Smart Home category.