Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

After installation of the NuGet package, a new "<digizuite>" element has been added to your web.config's "configuration" element. It has been added as the last child element of "configuration".Here is an example of how it can look:it's time to setup the connection to you Digizuite DAM instance. Add the DAMIntegrationConfiguration to your startup class. The configuration should be added after the AddCms due to TinyMCE initialization. Here is an example. The paramaters in the connection, will be delivered by Digizuite.

Code Block
languagexmlc#
  services.AddDigizuiteDAM(
             <digizuite baseGuid="74EAEAD1-B892-431A-BEDF-7226E2CEDDCB" redirectvideostream="false" disablenotifications="false" validFullSearchNamespaces="EPiServer.Find.Cms.ContentIndexer,EPiServer.Find.Cms.IndexingJobService"> new Digizuite.Optimizely.Configuration.DAMIntegrationConfiguration()
               <cache folderName="Digizuite" tempFolderName="DigizuiteTemp" timeout="10:00"/>
	  <media defaultVideoFormat="50040" defaultImageFormat="50034" defaultDestination="10010" />{
             <mediaManager url="" />     <digizuiteIntegrationDatabaseName siteUrl= "[ConnectionString]" guid="" subscriptions="1" deleteBlob="false" />,
            <cdn baseUrl="" destinationId="" />     <connectionConnection baseUrl="https://dam-dfe.digizuite.com" user="Episerver" secret="55f2f63f09ff4f73f75fbb7d7e6e69b0" versionId="/1/" />= new Digizuite.Models.DigizuiteConfiguration()
                 <roleMappings>   {

  <add DigizuiteRole="Episerver Users" EpiserverRoles="Everyone" />       <add DigizuiteRole="Episerver Editors" EpiserverRoles="WebEditors,ContentEditors" />       <addBaseUrl DigizuiteRole="Episerver Administrators" EpiserverRoles="Administrators,WebAdmins" /> new Uri("https://[DAM url]"),
            </roleMappings>     <fallbackIconMappings>       <addSystemUsername documentType= "video" extensions="mp4,avi,mov,flv,mwv,mkv,avchd,h264,vob,m4v" />Episerver",
              <add documentType="sound" extensions="wav,aiff,mp3,aac,ogg,wma,flac,alac" />       <addSystemPassword documentType= "zip" extensions="zip,tar,iso,par,7z,rar" />55f2f63f09ff4f73f75fbb7d7e6e69b0",
              <add documentType="presentation" extensions="ppt,pptx,key,odp,pps" />       <addConfigVersionId documentType= "images/5/" extensions="png,tif,gif,raw,eps,jpg,bmp,psd,svg,ai" />
                <add documentType="spreadsheet" extensions="xls,xml,csv,xlsx,numbers" /> }
     <add documentType="text" extensions="docx,doc,pdf,rtf,txt,opd" />     </fallbackIconMappings>   </digizuite>

Main Digizuite Element

...

});
Info
titleDemo environment

For testing the connector, you can use the demo environment. Be aware that this environment is controlled by Digizuite and willl be reset occasionally. Meaning content you upload will be delete.

Connection = new Digizuite.Models.DigizuiteConfiguration() {
     BaseUrl = new Uri("https://dam-dfo.digizuite.com"),
     SystemUsername = "Episerver",
     SystemPassword = "55f2f63f09ff4f73f75fbb7d7e6e69b0",
     ConfigVersionId = "/1/"
}


DAMIntegrationConfiguration parameters


NameTypeRequiredDefaultDescription
DatabaseNamestring
baseGuidNo(a hardcoded guid)A guid that is used as the 'foundation' to generate all the assets Content Guid. Usually you won't have to change this.stringnameNo""The name with which the integration identifies itself - for example when sending editor notificationsboolredirectvideostreamNofalseDefault behavior is to have Episerver act as a video proxy for video assets. If this is set to true, Episerver will instead redirect the video streams to the DAM directly.booldisablenotificationsNofalseIf set to true, will supress editor notifications from the integration.boolautoattachNotrueControls if the Digizuite Content Provider should automatically attach after initialization to an entry point automatically created. If this is false, you will need to manually configure the content provider.stringautoattachnameNo"Digizuite"The name of the entry point automatically created in Auto Attach mode.stringvalidFullSearchNamespacesNoEPiServer.Find.Cms.ContentIndexer,EPiServer.Find.Cms.IndexingJobServiceComma-separated list of valid namspaceses. Here you add the valid namespaceses that are allowed to do a full search and requesting all assets from Digizuite through our DigizuiteContentProvider. By default is is only the Find indexing that are allowed.boolpreventdigizuitemediatypesinepiserverfolderNotruePrevent that Digizuite media types can be uploaded to a Episerver media folder.

...

Yes
The databaseName is the name of the database that you are running your Optimizely application in. We have experienced in some applications that it is not enougt to only add the name of the database, but it should have the hole connection string. You can get the connection string like this: 
_configuration.GetConnectionString("EPiServerDB")
ConnectionDigizuiteConfigurationYes
This object contains the connection parameters to the Digizuite DAM instance.
RoleMappings
List<RoleMappingElement>
No

FallbackIconMappings
List<IconMappingElement>
No

VideoPlaybackType
VideoPlaybackType
No
VideoPlaybackType.Streaming
The connector comes with 3 different option for video playback. You can read about the it at DFO 3.0.0 - 16 Video playback
DigizuiteWebhookElement
DigizuiteWebhookElement
No
Listening for Digizuite asset update events. When someone make a change to an asset in Digizuite DAM and event is raised which your Optimizely instanc gets and all cached data about the asset will be cleared.

Child element: DigizuiteConfiguration

The connection is the most important child element. This is where the main connection setting pointing to the DAM is specified. Typically you will replace this with connections settings you have gotten from your own DAM Center.

NameType
Name
RequiredDefaultDescription
string
BaseUrl
baseUrl
UriYes
Base url to the DAM Center
SystemUsernamestring
user
Yes
Sync user that the integration can use in the DAM Center
SystemPasswordstring
secret
Yes
The hashed secret that the integrations sync user should use.
ConfigVersionIdstring
versionId
Yes
A DAM Center can have many different products: Media Manager, DAM for Sitecore, Adobe Connector, Office Connector, etc. Each of these can have many versions. These versions facilitate having different configuration, searches, and other things, which can change the experience for the end user. These various versions are defined by their versionId. If the original version has versionId "/1/", then its first child will have "/1/0/". The versionId is an SQL data type called hierarchy ID. It is a tree structure.
A use case may be that you want to experiment with some configuration, so you create a new version of DFE in the DAM Center.
Then you can alter the versionId attribute on your EPi Server site to "/1/0/", and do your tests, while your public DFE integration still use the "/1/" versionId.

Child element:

...

The cache element controls the caching - both binary on-disk caching as well as some of the in-memory asset meta-data caching.

...

Child element: media

The media element defines the default media formats (DAM Center ID's) to retrieve if nothing else is specified. Usually the default settings will be sufficient.

...

Child element: mediaManager

If you have a Media Manager (version 5 or later) configured on your DAM Center, the integration to Episerver supports showing deep links to assets there. In order to do that, you must set the base url to the Media Manager.

...

 RoleMappings

Since access rights can be set on individual assets in the DAM Center, you can use the list of roleMappings to map DAM Center roles to Episerver roles in order to ensure proper permissions for various editor groups. The default configuration of these elements should be sufficient in most cases.

NameType
Name
RequiredDefaultDescription
DigizuiteRolestring
DigizuiteRole
Yes
n/a

The name of the role in Digizuite to map.
EpiserverRoles
List<string>
EpiserverRoles
Yes
n/a

A
comma separated
list of Episerver roles that be given similar permissions to the Digizuite Role.

Child element:

...

FallbackIconMappings

The fallbackIconMappings FallbackIconMappings list is in order to ensure that for assets where a proper thumbnail cannot be shown, we can map the various file extensions to a fitting icon. Typically the default should be sufficient.

Each element in this list has the settings below:

NameType
Name
RequiredDefaultDescription
DocumentTypestring
documentType
Yes
n/a

The icon for the document type - for instance "video" for a video icon.
stringextensions
Extensions
List<string>
Yes
n/a

A
comma separated
list of file extensions to map for the above document type.


Child element:

...

 DigizuiteWebhookElement

...

The digizuiteIntegration is used to setup DigizuiteWebhookElement for seting up the connection between Episerver and Digiziuite and listen for events in digizuite whenever an asset is updated. It is important that the guid is set and atleast one ot the chagetypes is added to the subscriptions property.

Each element in this list has the settings below:

...

Digizuite DAM and your Optimizely instance. So you will recive update notification when assets change.

n/a
NameTypeRequiredDefaultDescription
SiteUrlstring
siteUrlNo
Yes
This is the
episerver site
url
which Digizuite integration will call when a change occurs.stringguidNon/aThis is a guid that should be unique for each Episerver instance. Will be used to create a new endpoint in Digizuite DAM center.stringsubscriptionsNon/aA comma separated
that Digizuite use to send the notification to. We will append the routing to the controller to the url. [siteUrl]/episerver/digizuite/DigizuiteWebhook/Update
GuidstringYes
This is the unique identifier for the endpoint in Digizuite DAM. Just generate a new guid. 
SubscriptionsList<int>No
 new List<int> { 1 }
A list of changeTypes. Possible values are: AssetChanged = 1, MetafieldChanged = 2, TreeValueChanged = 4, ComboValueChanged = 8
DeleteBlob
bool
deleteBlob
No
false
FalseBy default this is false. Enable this if each instance of a loadbalanced enviroment has its own local blob storage
.

Child element: cdn

If you want a cdn provider in front of your assets. These settings is only supporting the assettype video.

Each element in this list has the settings below:

TypeNameRequiredDefaultDescriptionstringbaseUrlNon/aThis is the url to your cdn provider.stringdestinationIdNon/aThis is the destinationId to Digizuite, used when requeting assets. This distination should be configured in Digizuite DAM as "Use low security for asset stream"
.