Skip to main content

Episerver 11 Connector Installation and Configuration (.NET Framework)

Episerver is now known as Optimizely. For the consistency, the documentation and Smartling interface refers to this software as Episerver.

This article will guide you through installing and configuring Episerver 11 (.NET Framework 4.x.x).
​
If you are working with Episerver 12 (.NET Core 5), read this documentation.

Please note that this Connector is a paid product. For pricing information, please reach out to your Smartling Customer Success Manager.

Prerequisites

  1. Create an ASP.NET site project for building your site and running on your Episerver instance

    • ASP.NET site project is managed by your developer. The project is a set of code repositories and resources that can be compiled, combined and deployed to an Episerver instance.

  2. Your Episerver instance, or site, should have Internet access, with no firewalls in place.

  3. Smartling Episerver plugin requires the following dependencies:
    ​

    • Episerver.CMS.AspNet [11.6.0, 12.0.0)
    • Episerver.CMS.Core [11.6.0, 12.0.0)
    • Episerver.CMS.UI.Core [11.4.5, 12.0.0)
    • Episerver.Commerce.Core [12.3.0, 14.0.0)
    • Episerver.ContentDeliveryApi.OAuth [2.6.0, 3.0.0)
    • Newtonsoft.Json [11.0.2, 13.0.0)
    • Smartling.Api [2.4.37, 3.0.0)
    • log4net [2.0.8, 3.0.0)

STEP ONE: Initialize Smartling API in Startup.cs.

  1. Site should have enabled EPiServer.ContentDeliveryApi.OAuth. Smartling relies on Episerver OAuth for authentication and authorization. Smartling integration does POST request to URL like: https://your.episerver.domain/api/episerver/auth/token

STEP TWO: Install the package

  1. Consult your Solutions Architect or Customer Success Manager to obtain the Smartling Nuget download link

  2. Download a locally Smartling Nuget package by the provided link

  3. Create a local folder that will be a source for the Smartling Nuget package

  4. Put the downloaded Smartling Nuget package into the folder

  5. Add the folder as a source for the Smartling Nuget packages in your IDE (including Visual Studio)

    Screenshot_2022-01-27_at_17.28.30.png
  6. Install the package to ASP.NET site project
    ​

    Screenshot_2022-01-27_at_17.28.39.png
  7. Configure database logging for Smartling.Translation namespace into a separate file

    • For support purposes, Smartling strongly recommended having Smartling database logs separate from other .NET Core 5 logs.

  8. Build website solution, i.e. build ASP.NET site project

  9. Ensure that there is a Smartling.Translation.Core.dll assembly in the bin folder after site deployment

    • This package should have bin folder where all the compiled and dependent code is resided.

  10. Check package works with an HTTP request

  11. When the installation is complete, simply provide your Smartling Solutions Architect with the following information so Smartling can complete the configuration of the Smartling Episerver Connector.

    • EpiServer URL (<schema>://<epi-server-host>:<port>/<protectedVirtualPath>).

    • User login and password that you created above

If you get an error flag, contact Technical Support or your Solution Architect, with the logs.

IP Whitelisting

In case you would like to limit access to Smartling API or provide access to your dev\sandbox environment you can whitelist the following IPs:

  • 52.200.226.107

  • 52.200.205.55

  • 52.86.212.212

  • 52.87.14.187

  • 54.243.240.47

Smartling integration will access to the following endpoints:

  • <schema>://<epi-server-host>:<port>/api/episerver/connect/token

  • <schema>://<epi-server-host>:<port>/<protectedVirtualPath>/smartling.translation/*

Connecting Episerver to Smartling

  1. Create an Episerver Connector project type in your Smartling Account.

  2. From within this project, click Settings > Episerver Settings

  3. Click Connect to Episerver.

  4. Choose to connect by a user login (username and password)

  5. The following are some URL settings that the connector uses for Authentication:

      • apiUrl (mandatory): This URL is used to get access to EPiServer in general. Usually, it is just a host, e.g. http://172.30.21.102/`

      • authApiUrl (optional): This setting is a path to Auth endpoint. It should be a path without a host. Default value is /api/episerver/auth/token. The connector concatenates apiUrl with authApiUrl to get the full endpoint for Authentication

      • apiVirtualPath (optional): EPiServer uses /episerver virtual path by default. So, the hosted connector may use something like http://172.30.21.102/episerver/smartling.translation/pages/13` for getting content. If you want to change this setting, you should give Smartling a new value, eg /api thus connector will build a content URL with another segment, e.g. `http://172.30.21.102/api/smartling.translation/pages/13`.

      • basePreviewUrl(optional): The preview is taken by the connector, and it makes HTTP request to take preview HTML. The URL of your Epi instance is unknown for the connector - the apiUrl is used by default. The Epi site can be configured in EPiServer with a public site URL. It does work for simple site infrastructure, but your site may have separated Author and Publish EPiServer instances. The connector needs the Author instance of the EPiServer, not Publish.

      • sslVerificationMode (optional): In case of a site has separated Author and Publish EPiServer instances, Author instance may have an invalid SSL certificate. Access to the Author instance can be restricted via IP-whitelist. In this case, sslVerificationMode can be set to DISABLED - hosted connector will not check SSL certificate of the EPiServer.

  6. Click Connect to Episerver to save your subdomain, or cancel to exit the menu.

  7. Click Allow to authorize the Smartling Episerver Connector.

Your Episerver instance will now be connected to your Smartling project. Now you're ready to configure your Episerver Connector.

Did this answer your question?