Some calls require a long time to wait on the phone and are repetitive calls, such as calls for claims, calls to reserve a restaurant, calls to renew car insurance, etc...
Also, I recently saw the news that Alexa will be able to make voice calls soon.
So I thought it would be great if a skill could ask you a few questions and then speak for you on those long phone calls.
What it does
This Alexa skill doesn't dial the phone number to call yet, but if you put a smartphone nearby, this Alexa skill can speak for you to reserve a table for dinner on Friday with your friends.
To achieve this, the skill first asks you some information (day, time, number of diners) ... and then it asks you to call the restaurant and put the phone nearby, because from that moment on, this Alexa skill will negotiate for you to get the table reservation.
How I built it
I've used Alexa conversations (beta) to implement this Alexa skill. I have also added audio and visual templates (Alexa Presentation Language - APL).
In addition, the skill requests permission to access the user's name and phone number, in case the restaurant asks for a name and phone number to record the table reservation.
I've used SSML (Speech Synthesis Markup Language) when Alexa tells the waiter the phone number, so that it sounds like a phone number and not like a number in the millions.
Challenges I ran into
This has been my first Alexa skill using Alexa conversation, which has been the most important challenge.
Afterwards, working on a dialogue in which the first part is the user talking to Alexa and the second part is Alexa talking to the waiter, has sometimes been a bit complicated.
The time spent to build the conversation model is very slow compared to "interaction model" skills, so I've taken the opportunity to make some drawings to explain the skill.
Accomplishments that I'm proud of
I'm convinced that the idea is good and has potential. It's easy to scale the skill to new conversations such as: car insurance renewal, claiming an internet bill, making an appointment at the hairdressing salon, etc...
The result obtained works :)
What I learned
I've learned to do skills with Alexa conversations and all that it involves: api definitions, annotate dialog, new slot type with properties, etc...
What's next for You call
I want to add new dialogues, to renew the insurance, to ask for a better price on the internet service or to make an appointment at the hairdresser. And try it in the real world!
I have yet to investigate how to use data-binding in the APLs used by Alexa Conversations.
I also want to add Speech Synthesis Markup Language (SSML) in Alexa conversations responses.