Automatically translate knowledge articles
Knowledge Management in Microsoft Dynamics CRM 2016 lets you create knowledge articles in one language and translate them into other languages. Having your knowledge articles available in the different languages of your user base greatly increases the impact of the knowledge you maintain. In turn, this has a positive impact in driving employee and customer self-service scenarios.
Currently when you translate a knowledge article, CRM copies all the related information like Title, Keywords, Description, and Content into the translated version of the article. For example, when you translate an English article into Spanish, CRM copies the English article content into the Spanish article. At that point, you can manually translate the Spanish version.
Manual translation is expensive
While translating your knowledge base to help your users sounds like a great idea, the cost of translation prevents most companies from making it a reality. Translating content can be a significant investment for small or medium business owners.
Introducing automatic translation
Automatic Translation is a sample solution you can download and configure to enable Knowledge Managers in your organization to author and translate articles using machine translation. The sample solution can be downloaded from the Git repository. In the sample solution, we leverage the power of the Microsoft Translator API. Your Knowledge Managers can instantly make their knowledge available to all your customers in a matter of few clicks. This also drastically reduces your company’s translation cost.
How do I configure the Automatic Translation sample solution?
Download the Automatic Translation sample solution from the Git repository and import the managed solution into your CRM organization. The solution adds a sitemap entry for the AutomaticKMTranslationSetting entity under Service. This helps you manage Automatic Translation-related settings. As part of the initial configuration, you need to enter your Microsoft Translate API ClienID and Client Secret. The plugins use this to translate content with Microsoft Translate API using your subscription.
Please see Signing Up for Microsoft Translator to sign up for the Microsoft Translator API. At this time, you can take advantage of a free 2 million characters per month subscription available to all users.
Currently, the Automatic Translation sample solution persists the Microsoft Translator API key in plain text. You can use the permission model of CRM to restrict access to the , or you can use SQL data encryption options.
To automatically translate knowledge articles when you create a knowledge article translation, make sure that IsAutoTranslationEnabled is set to Yes.
How it works
The sample solution registers the AutoTranslationPlugin for the Create message of the KnowledgeArticle entity. It is a registered pre-operation in the event pipeline in a synchronous execution mode. When you create a knowledge article translation, the plugin is triggered. From the schema model of the KnowledgeArticle entity, the plugin identifies if it is a translation that is being created and from which language it is being translated from. All these details are passed to the Microsoft Translator API. The Microsoft Translator API respects the HTML fragments in your content and only translates the non-HTML content. Currently, the plugin handles the auto translation of the Title, Content, Description, and Keywords fields of the translation that is being created. You can modify the plugin to handle translation of other custom fields that you might be interested in.
The solution also supports the translation of content on demand. For example, if you have created a Spanish translation for an English article, you can enter English text in the Spanish article to translate it with .