Technical details

Technical details for the Translator for SharePoint solution by Accelerator 365

Jump to


Overview

The Translator for SharePoint solution is architecturally a simple concept built upon the SharePoint Framework (SPFx) and Microsoft Azure AI Translator service. The translation is performed on-demand and follows this process:

  1. A SharePoint editor requests for a page translation through the Translator for SharePoint solution. A dialog box appears for the editor to notify them of the progress of their translation.
  2. Translator for SharePoint creates an item in a log to track this translation request.
  3. An API request is made to send the SharePoint page content to the Microsoft Translator service and Custom Translator if used.
  4. The translated content is received and pasted into the relevant SharePoint language page in the same web parts and format.
  5. The translation is complete.

Recommended deployment scope

It is expected that the Translator for SharePoint solution is made available only on specific areas of your SharePoint tenant as necessary, e.g., a home site or news site.

Therefore, it is recommended to select the Only enable this app option on deployment (see the Installation instructions page). This means the app is available for Site Owners to manually add to their site.


Required access endpoints

The following endpoints are accessed by the Translator for SharePoint solution, and it is a requirement that clients ensure they remain accessible in their network:

  1. Client Side Assets Library – SharePoint stores all client-side assets for SharePoint framework solutions, including Accelerator 365 solutions, in a central location in your SharePoint tenant. Ensure that access to the Client Side Assets Library is excluded from any organisational policies your company may have applied to SharePoint-hosted libraries and documents.
    https://[domain].sharepoint.com/sites/appcatalog/ClientSideAssets/AllItems.aspx
  2. License Server – Access to Reply’s licence tool to ensure the solution can validate the license that has been assigned to your SharePoint tenant.
    https://acceleratorlicenseapi.azurewebsites.net/
  3. Application Insights – As described in App telemetry, several URLs are required for our telemetry to function. These can be found in the Microsoft documentation.
  4. Translator for SharePoint trial - The trial version of Translator for SharePoint provides customers with 10 free translations per SharePoint tenant. This endpoint confirms the remaining free translations available for the SharePoint tenant.
    https://acceleratortranslatorapi.azurewebsites.net/
  5. Azure AI Translator - The Translator for SharePoint solution utilises the Microsoft Azure AI Translator service to perform content translation. The following endpoint should be accessible.
    https://api.cognitive.microsofttranslator.com

Data storage

Data for the Translator for SharePoint solution is stored in SharePoint lists. These lists are provisioned from the solution as and when required. The lists provisioned are:

List title Relative URL Purpose
Global Settings /Lists/WMTFS_GlobalSettings Storage of the configured global settings. 
Site Properties /Lists/WMTFS_SiteProperties Storage of the data source this SharePoint site is referencing. 
Translation Logs /Lists/WMTFS_TranslationLogs A log of all sequences in a translation when a translation request is made. 
Translation Statuses /Lists/WMTFS_TranslationStatuses Storage of the translation status for each page.

Architectural diagram

The Translator for SharePoint solution is a SharePoint Framework (SPFx) application extension that is installed in a SharePoint tenant app catalogue from the SharePoint Store. This means that all the necessary code, which is all client-side JavaScript, is stored within the SharePoint environment itself, and does not reference or load code stored externally.

For the translation service, the solution communicates with a Microsoft Azure AI service. This is expected to be a service also within the security perimeter of the relevant organization, i.e. in a Microsoft Azure subscription owned by your organization.

The diagram below represents the architecture of the solution.

Translator for SharePoint - Architectural diagram


Data flow

The Translator for SharePoint solution communicates with Microsoft Azure. All communication is triggered at the request of an editor. The diagram below represents the flow of information.

Translator for SharePoint - Data flow