A small library to allow locale speech to be maintained seperately to the skill logic using it
This is done by registering "stores", classes that can support one or more locales.
The easiest kind of store to create is a DictionaryLocaleStore.
You can create stores for specific locales (en-GB, fr-CA) or general language (en, fr)
var store = new DictionaryLocaleSpeechStore();
store.AddLanguage("en", new Dictionary<string,object>
{
{ "key", "value" },
{ "ssmlKey", new Speech(new PlainText("ssml value {0}")) }
}
LocaleSpeech will check for specific, then general, in that order.
var factory = new LocaleSpeechFactory(store);
This uses the request locale
var localeSpeech = factory.CreateClient(skillRequest);
Generate IOutputSpeech objects based on store keys
ResponseBuilder.Tell(localeSpeech.Get("key"));
ResponseBuilder.Ask(localeSpeech.Get("ssmlKey",specificValue);