Health Bot Instances
There are 3 health bot instances: personal, development, and production. In the list below, each is linked to the instance.
Never make changes directly in the production instance. All changes to the production instance should happen by importing scenarios from the development instance.
When exporting the Localization file for import into another server, make sure the filters are cleared. If you have the localization messages filtered, only those items will get exported.
Scenarios
The chat bot flow is broken into 2 scenarios spread across 6 files: a wrapper, which contains CDC specific questioning, and the core protocol, which contain the core protocol split across five files for adult vaccinated, pediatric vaccinated, adult unvaccinated symptomatic, adult unvaccinated asymptomatic, and pediatric unvaccinated triage questions. Further, there are two versions of these 2 scenarios, one for just English and one for the other languages. The English chat bot points to the English wrapper and that wrapper calls the English cores. Similarly, CDC websites in the other languages point to the Non-English wrapper, and that wrapper invokes the Non-English cores. The reason English and Non-English are split is due to the time is takes to get translations for new content. We can publish the new English content while waiting for those translations.
Available scenarios
- English Wrapper
- Name: COVID-19 - CDC Wrapper
- Scenario ID: covid19
- English Vaccinated Core Protocol
- Name: COVID-19 - Vaccinated Core
- Scenario ID: covid19_vax_core
- English Vaccinated Pediatric Core Protocol
- Name: COVID-19 - Pediatric VACCINATED CORE
- Scenario: covid19_vax_core_pediatric
- Non-English Wrapper
- Name: COVID-19 - CDC Wrapper - Other Languages
- Scenario ID: covid19_non_eng
- Non-English Core Protocol
- Name: COVID-19 - Core Protocol - Other Languages
- Scenario ID: covid19_core_non_eng
- Non-English Pediatric Core Protocol
- Name: COVID-19 - Pediatric Core Protocol - Other Languages
- Scenario ID: covid19_core_pediatric_non_eng
- Non-English Adult Asymptomatic Protocol
- Name: COVID-19 - Core Protocol Asymptomatic - Other Languages
- Scenario ID: covid19_core_asymptomatic_non_eng
- Non-English Vaccinated Core Protocol - Other Languages
- Name: COVID-19 - Vaccinated Core
- Scenario ID: covid19_vax_core_non_eng
- Non-English Vaccinated Pediatric Core Protocol
- Name: COVID-19 - Pediatric VACCINATED CORE - Other Languages
- Scenario: covid19_vax_core_pediatric_non_eng
Localization
The bot uses the Azure Health Bot's built in localization feature for bot translations. This means that the majority (if not all) of the visual text content that is shown in the bot is defined within this tool. The Web UI for the bot passes in the locale to use and the health bot knows which strings to pull into the scenario. You can import an external Excel file with the strings or edit directly within the tool. This Excel file exported from the tool will be put in GitHub and sent to the translation team when translations are needed.
CDC currently supports 5 languages, and all use the same file:
English (US)
Korean
Vietnamese
Chinese (Simplified)
Spanish (US)
When defining strings, use stringID names that make sense for what type of text content the ID is representing. For example, if you are adding a new COVID symptom, you could name it CDC/covid_symptoms/<new_symptom>. Strings are imported into the scenario using this, where string ID is replaced with the ID of the string you defined:
customLocalizedString["stringID"]
In addition to just text content, you can use Markdown and JavaScript arrays in the text field. You can see that some of the content we have uses markdown and arrays.
For additional information, see Microsoft's documentation on localization.