How to configure a multi-lingual bot

This document helps you configure the chatbot in your favorite language.

Refer to change the language of the chatbot labels.

 

Speech to text

Any voice input given to the chatbot is converted to the configured language using the settings below.

In Orbita, you can only choose the languages supported by Google for Speech to text conversion.

Refer, https://cloud.google.com/dialogflow/es/docs/reference/language

Google Dialogflow

New Agent

  1. Create an Agent in Dialogflow. See, How to Create an agent.

     

  2. Name the Agent and select a default language from the dropdown.

Existing Agent (temporary)

For an existing Agent, you can add languages by clicking on the icon under the gear icon.

In the languages tab, select a language from the dropdown to add the language to your agent.

You can see the list of languages added to an Agent under the Agent name in the side menu.

Experience Designer

Go to the Bot Manager flow > Bot Provider V2 node > Bot In Parser and add the below code.

msg.payload.languageCode = "<language tag>"

Refer, https://cloud.google.com/dialogflow/es/docs/reference/language for the Language tag.
You will get the Language tag from the Tag* column.

Experience Manager

Chatbot Settings

Navigate to Project Side navigation menu >Chatbot Settings > Settings tab and add the below code to the appSettings object.

"speechToTextLanguage": "Language Code"

Refer, for the Language Code.

Deployment

Go to Side Navigation menu > Develop > Deployment > Goggle Tab

Select your Agent and Language from the dropdown.

The language selected in the Deployment screen should already be added in the Dialogflow agent.

Text to speech

The text is converted to speech in the preferred language with the settings below.

Experience Designer

You can change the output voice settings of your voice agent by changing the properties in the Experience Designer > Bot Manager flow> Bot Provider V2 node > Text To Speech Config.

You can use "languageCode": "es-ES" and "ssmlGender": "FEMALE" properties for Spanish(Female voice).

To be more specific, use "name": "es-ES-Wavenet-B" Spanish(Male) to use Standard or Wavenet voices.

Property

Description

Property

Description

"languageCode": "en-US"

You can select the language accent in which you want the output voice using this property.

You can choose from the below:

Arabic — ar-XA, Bengali (India) — bn-IN, Chinese (Hong Kong) — yue-HK, Czech (Czech Republic) — cs-CZ, Danish (Denmark) — da-DK, Dutch (Netherlands) — nl-NL, English (Australia) — en-AU, English (India) — en-IN, English (UK) — en-GB, English (US) — en-US, Filipino (Philippines) — fil-PH, Finnish (Finland) — fi-FI, French (Canada) — fr-CA, French (France) — fr-FR, German (Germany) — de-DE, Greek (Greece) — el-GR, Gujarati (India) — gu-IN, Hindi (India) — hi-IN, Hungarian (Hungary) — hu-HU, Indonesian (Indonesia) — id-ID, Italian (Italy) — it-IT, Japanese (Japan) — ja-JP, Kannada (India) — kn-IN, Korean (South Korea) — ko-KR, Malayalam (India) — ml-IN, Mandarin Chinese — cmn-CN, Mandarin Chinese (Taiwan) — cmn-TW, Norwegian (Norway) — nb-NO, Polish (Poland) — pl-PL, Portuguese (Brazil) — pt-BR, Portuguese (Portugal) — pt-PT, Romanian (Romania) — ro-RO, Russian (Russia) — ru-RU, Slovak (Slovakia) — sk-SK, Spanish (Spain) — es-ES, Swedish (Sweden) — sv-SE, Tamil (India) — ta-IN, Telugu (India) — te-IN, Thai (Thailand) — th-TH, Turkish (Turkey) — tr-TR, Ukrainian (Ukraine) — uk-UA, Vietnamese (Vietnam) — vi-VN.

"ssmlGender": "FEMALE"

You can also choose the gender for the voice output.

You can choose from FEMALE and MALE.

"name": "en-US-Wavenet-G"

You can try out different variations on how the voice output can be with this property.
Refer to Google documentation on voices

"audioEncoding": "MP3"

You can choose the audio encoding of your choice from the below mentioned.

  1. LINEAR16 - Uncompressed 16-bit signed little-endian samples (Linear PCM).

  2. MP3 - MP3 audio.

  3. OGG_OPUS - Opus encoded audio wrapped in an ogg container.

Troubleshooting

If you have carefully followed this document and configured your multilingual chatbot but cannot get it to work in the language you desired,

Remove App Settings function node

  1. Go to Experience Designer>Bot Manager flow

  2. Look for the App Settings function node.

  3. Remove the App Settings function node and the connected nodes/flow.

  4. Deploy the flow

Reset the Settings in the Bot View Template node

  1. Go to the Experience Designer>Bot Manager flow >Bot View template > Settings tab.

     

  2. Remove the existing code in the Settings tab and click Done. (All the properties will be reset to default)

  3. Deploy the flow.

Your chatbot should now work in the configured language.