Unexpected Languages

Proposed Actions for unexpected languages


For the Chatbot API to detect the language of a user intent, your Inbenta solution has to include multiple Inbenta instances in different languages.

Inbenta's language detection can only recognize the languages associated with your instances. If you need other languages to be detected as well, you may need to use another language detection system from a third-party provider.

Several methods exist to detect the language of the user intent.

Redirect the user to the proper site (recommended by Inbenta)

After you detect that the user intent uses one of your other instance languages, you can show a message that offers to redirect them to the site that has a chatbot in this language. This is particularly recommended for integrations that use the SDK languageDetector method of the JS client.

The best possible method to present this message to end users is by creating one or more specific intents in the Chatbot KB.

Create specific intents in the Chatbot Knowledge Base (recommended by Inbenta) 

You can either create one single intent or dialog with specific message(s) in the Knowledge Base for all languages, or one per language. To call this intent, you have two options:

  1. Set a variable (e.g. "different_language_detected") with the language detection result. Then, perform a direct call to a dialog that uses this variable to determine how to proceed.
    • Inbenta suggests this method because it gives you more flexibility. 
  2. Check the language detection result client-side, then perform a direct call to the desired intent(s). 

You can use either one of these methods to easily change the message to your users without changing the code deployed in production. The adapter documented here includes a full example of this option: It uses a direct call to a specific dialog to handle the response to the user, based on the detected language results.

The image below shows the dialog that the adapter uses:


These are Inbenta's suggestions for the best way to handle user intents in unexpected languages, but other solutions are possible.