Ask Alexa or Google Assistant what your nearest food banks need

I’ve been working in the chatbot and voice app space for a while, and — currently having some spare time, thanks to a lot of my work having disappeared due to the Covid-19 situation — I’ve been looking for some new side projects to play with.

I had looked at the the Jovo cross-platform voice development platform in the past (for example see https://medium.com/@mariomenti/creating-a-cross-platform-voice-app-using-jovo-f9ee373569c — but please note, this is from more than two years ago, and now completely out of date). I have been following Jovo over the last couple of years, so I was aware that a lot has changed and that the platform is now a lot more capable and advanced, but hadn’t actually had the chance to build something with it.

So when I came across this tweet by a friend on Twitter, I immediately thought that this might be a cool (and useful) little project to dive back into Jovo with— #voiceforgood, right?

“API” is my catnip 😺

Give Food is a UK charity Jason is involved in, that supports food banks across the country, and aims to index the current needs of all these food banks — in other words, they will (hopefully) know what any particular food bank is most in need of, at any given time.

The API they developed exposes the locations and the current needs of food banks across the UK, so 3rd party applications can now use that data to show where your nearest food banks are, and what exactly they need most right now.

So, off I went, and installed and re-familiarised myself with the Jovo framework — there is a very good quick start here. Compared to two years ago, when a lot of things needed to be set up separately and manually within each voice platform, if you target the two main voice platforms (Alexa and Google Assistant), then with the current version of Jovo almost everything is set up automatically for you. This is really neat and will genuinely save you a lot of time!

There are a number of other Jovo integrations available (for example Samsung’s Bixby, Facebook Messenger, Twilio’s Autopilot), and these tend to require a little more manual configuration, but it will almost certainly be a lot less effort than having to maintain separate projects and code bases for these platforms. So Jovo lets you keep all your code in one project, and deploy to these separate voice and chatbot platforms.

Fast forward to a few days later, and both Amazon and Google have approved the apps. Here’s how to try them out (reminder that due to the data that Give Food covers, both these apps are UK only and not available in other countries):

Alexa:

Skill Store link: https://www.amazon.co.uk/dp/B08BYGRZ7R

Say “Alexa, open Give Food”, or “Alexa, ask Give Food to find food banks”.

This will ask you to open the Alexa app on your phone, and give the skill permission to access the postcode of your Alexa device. We need this in order to be able to tell you which food banks are near you 😊.

When you open the Alexa app on your phone as directed, you will see a request from “Give Food”. Give it permission to access your device country and postcode, and tap “Save Permissions”.

You only have to do this once, and then you can say “Alexa, open Give Food” again and it will use your device location to tell you about your nearest food banks, and what they currently need most.

Google Assistant:

Say “Hey Google, talk to Give Food”, or “Hey Google, ask Give Food where my nearest food bank is”.

This will ask you for permission to access your location. We need this in order to be able to tell you which food banks are near you 😊.

If you say “Yes”, we’ll remember this and won’t ask you again. If we do keep asking you every time, it might be because your Google account “Privacy & personalisation” settings don’t allow Google to store that information. If that’s the case, you can either just let us ask each time (we don’t mind!), or else within your Google account management settings, enable “Web & App Activity”, and within that, check the “Include Chrome history and activity from sites, apps and devices that use Google services” checkbox. With these settings enabled, we’ll be able to store your device location and not ask you every time.

The rest is pretty self-explanatory — it will tell you your nearest food bank and their needs, and you can say “Yes” to hear more details of that food bank (address, phone number, email address etc.), or you can say “Next” to see the food bank that’s next nearest to you. And so on.

This is very much a first version and not hugely sophisticated, so if you have any feedback or suggestions for improvements, please let me know! Thanks so much! 🙏

inquisitive hacker. swiss-brit. runner. things I love: cats, japan, drums, vegan curries, noisy & mathy music. tech stuff: APIs, chat & voice interfaces