The new busuu bot for Microsoft Teams

We made a smart vocabulary trainer for language learning using the Microsoft bot framework platform, a Node.js app and LUIS.

Adrian Rubio
Busuu Tech

--

How did everything start?

As you may know, we have already completed a few interesting projects related to bots. We created a Facebook bot some time ago (in a hack day) but it never went to production, and most recently we created the busuu app for Google Assistant (from my colleague Thomas Didierjean). So when Microsoft asked us to be part of this early stage for Microsoft Teams we saw it as a very good opportunity to continue improving our bot army :)

Creating a bot with Microsoft Bot Framework

When we started the integration of the bot on the MS Teams platform, we had to choose between two languages; try the unknown land of node.js and use the SDK that Microsoft provide, or integrate everything on our own using APIs and continue using our main code base language, PHP. As you could guess, we chose node.js because we had just 2 weeks to create a bot and we thought that it would be easier to use a new platform which has great built in support with the bot framework platform.

Once we decided on the language that we were to use (and after reading a few pages of documentation), we started to integrate the bot and we were quite impressed with the ability to quickly create a bot and the power of the platform. We had ready our first version (without LUIS and with a few problems in UX and few bugs) in just 3 days, allowing us to deploy our bot in all of these platforms:

But like many things, not everything perfect, for our case we found a few problems and not a lot of functionality because of how new the platform is. We had to do a few workarounds to make the bot work but we received some great support from the Microsoft team.

busuu Quizbot, What did we build?

As I mentioned before, we created a bot for Google Assistant, using one of our first lessons with an English interface and learning Spanish. This time however we wanted to create something different, we decided create a bot around our great feature called vocab training and here is what it looks like.

We could start with a easy hi and the bot will ask us a few questions about our desired learning language and level:

We start with a card where we can choose the number of questions that we want to the bot to create for us. We’ll use our awesome content made by our human education team, allowing us to create a quiz with more than 1000 different potential entities. Therefore we will have different content every time that a user starts their test.

Here you can see a few exercises examples:

As you can see we have 3 type of exercises. Multiple choice where the user has to choose the correct option. True or false, somewhat self explanatory, and finally dictation, where the user has to type the correct answer (probably the most challenging one).

Conclusion

Creating the bot using the Microsoft bot framework was easy and fun, you can create an easy bot quickly and deploy into several platforms with just one integration. We can’t wait to see how people enjoy and use this new bot!

I hope you enjoyed the post! And if this sounds great, you’d like to progress in your tech career, and you’ve got a love for learning languages (tech or otherwise!), we’ve got lots of open roles in our Tech team!

--

--