What is Aimybox

Aimybox is an open source voice assistant that can be embedded into any mobile application.
It includes ready to use Android SDK, iOS SDK, HTTP API and assistant UI components for both Android and iOS.

Aimybox doesn't implement any speech-to-text, text-to-speech or NLU engines. Instead, it provides a ready to use connectors to many of third-party modules like Android Speechkit, Kaldi, Pocketsphinx, Google Cloud Speehkit, Aimylogic, Dialogflow, Rasa AI and others. Aimybox implements a comprehensive voice assistant architecture and glues all these components with each other in a proper way.

Thus every developer could pick some appropriate components for speech-to-text, text-to-speech and NLU, assemble an Aimybox instance and embed voice capabilities into their application with minimal effort.

😼 Simple tutorial

We recommend to start with our simple tutorial to see how it's easy to build voice assistant using Aimybox and Aimylogic.

How to start using Aimybox

All you need to embed a voice assistant into your Android application is to make the next simple steps.

1. Clone Aimybox sample app

The easiest way to try Aimybox - is to clone ready to use Android application from Aimybox Github repository.

You have to use some Android IDE to build your app like Android Studio

Then you have just connect any Android device to your PC via USB and click on green play button to build and deploy your voice assistant.
A new Android will be launched on your device and you can just tap on the microphone button and say something to see how your assistant reacts.

2. Create your own voice skill

Of course Aimybox enables you to create your own voice features with any language.
All you need to do - is to select an appropriate NLU engine and create the voice skill using it. Please refer to the documentation of selected NLU to learn how to create a voice skill.

Aimybox is fully open SDK thus it provides a ready to use connectors for many of well-known NLU engines as well as Aimylogic - another product by Just AI

3. Connect voice skill to the app

Once you've created a voice skill you have to connect it with your Aimybox powered app. Each NLU engine module describes how to do this.

For example, if you use Aimylogic as a NLU engine, you have to create an Aimybox channel, copy it's webhook address and paste it into the Aimybox initialisation block

val dialogApi = AimyboxDialogApi("", unitId, "https://yourwebhookaddressgoeshere.com")

Where to go next

Learn more about how to use Aimybox in Aimybox basics. If you would like to deep into the architecture to implement your own component, please read this article.
Was this article helpful?
Thank you!