I'm working on a skill that asks user for city names and checks where these cities are located (using geolocation service). I'm using AMAZON.City
for en-GB
and AMAZON.US_CITY
for en-US
as slot types.
The problem I've encountered is that Alexa makes strange choices when choosing among places with the same or very similiar name. An example is Brussels - when I speak it using Alexa simulator on developer.amazon.com
set to en-GB
, it recognizes it as Brussells (notice two L letters), Missouri, but when I switch to en-US
, I get Brussels, the capital of Belgium (which is definitely a desired one for en-GB).
I had the en-GB version tested by a native speaker (as english is not my mother tongue) and Brussels was again recognized as a tiny hamlet in Missouri instead of a state capital.
The list of such potential mistakes is quite big: https://en.wikipedia.org/wiki/List_of_US_places_named_for_non-US_places
Is there a way to be more specific with these slot types, to always select most important city when multiple choices are available ?
Changing slot type from Amazon.City
to AMAZON.GB_CITY
fixed the problem for Brussels. The reasons might be twofold:
while both Amazon.City
and AMAZON.GB_CITY
are described in documentation as recognizing names "commonly used by speakers in the United Kingdom", Amazon.City
description adds: "This slot type recognizes common variations of city names"
Amazon.City
is marked as "public beta", while AMAZON.GB_CITY
is "available" (october 2018)
https://developer.amazon.com/docs/custom-skills/slot-type-reference.html