The Viabl.ai Platform allows the developer to deliver an application in a different language by applying a translation file at runtime. The process begins with the developer downloading a template CSV file containing all the words/phrases used in the user interface. This CSV file is composed of a number of system words/phrases used by the engine followed by those extracted from the dialog and questions objects. The dialogs are scanned for text in the captions, labels and emptytext properties of the controls and the questions are scanned for text in the object and list properties (it should be noted that the main value property is not included and it is expected that the developer will create/use a display text list property instead). The developer can then populate this template CSV file to provide the appropriate translations for the extracted words/phrases and then upload this back to the particular knowledge base. By appending the _xr_lang variable with the name of one of the translation files to the runtime URL (either Test Run, Publish or Deploy) will result in the user interface being translated accordingly.
The Knowledge Base Translation feature is accessible from the left-hand burger menu.
The usual starting point to create a template for the desired language is to use the Add New Language option.
Once this has been edited locally the CSV format file (UTF-8) should be uploaded using the Upload Language button. Each line in this file should consist of one word/phrase followed by its translated equivalent separated by a comma.
The Download CSV button will provide an updated translation template. If new phrases are added to the knowledge base after uploading a translation file then a fresh download of the translation file will include the phrases with existing translation text as well as the new untranslated phrases.
Once uploaded, the advanced deployment can use these language files and create a deployment for that particular language.
The deployment process will offer the languages available for that knowledge base.