Skip to main content
Skip table of contents

Configuring web.config Files

The following configuration is essential for a DPE-inside system to work properly.

A web.config file is the configuration file for a web app in the Microsoft IIS web server. 

The following areas can be configured in the web.config files:

(Shared) Temp Folders

Temp folders are used for storing temporary files and for sharing cached files (e.g. on-the-fly audio conversion, on-the-fly waveform creation). Especially for file caches used from various components running on different computers it is important that the temp folder is configured to an accessible file share.

If no temp folder is defined, DPE uses the standard temp folder provided by the operating system, e.g. %SystemRoot%\temp. If not existing, the temp folder(s) will be re-created automatically.

Both web.config files contain the optional parameter TempFolder in <appSettings>, eg.<add key = "TempFolder" value="C:\Temp" /> . Any folder can be specified as temp folder for DPE. It the temp folder is shared then both web.config files should have the same temp folder configured.

TempFolder

  • Optional, set the temp folder for DPE

    Workflow-based on-the-fly creation of lores audio or waveform requires the TempFolder to be set to a shared folder.

  • Whatever temp folder is used, a subdirectory "Dpe" will be created. Components may further create subdirectories inside:

<Temp Folder>\DPE\ may contain the following subdirectories:

  • Download, for Download.ashx, used for:
    • Protocol-Export with traversal-check
    • Parameter-Export
    • Workflow-Template-Export
  • Upload, for Upload.ashx, used for:
    • Protocol-Import with traversal-check
    • uses "Upload"
    • Workflow-Template-Import
  • MediaCache, for Media.ashx with on-the-fly conversion and cleanup
  • WaveformCache, for WaveformService with cleanup

Automated Cleanup of Temp Folders

The following parameters can be used to customize the automated cleanup of temp folders:

Waveform Cache

For WaveformCache folder in DpeWebApplication web.config

CODE
<add key="WaveformCache.Cleanup.LowWaterMarkGb" value="10" />
<add key="WaveformCache.Cleanup.HighWaterMarkGb" value="20" />

WaveformCache.Cleanup.LowWaterMarkGb

  • Low water mark. Disk usage after cleanup task was executed, default value = 10 (GB)

WaveformCache.Cleanup.HighWaterMarkGb

  • High water mark. If disk usage is above high water mark, delete oldest files (last access date) until disk usage is lower than low water mark, default value = 20 (GB)

Audio Conversion Cache

CODE
<add key="AudioConversionCache.Cleanup.LowWaterMarkGb" value="10" /> 
<add key="AudioConversionCache.Cleanup.HighWaterMarkGb" value="20" />

For MediaCache folder in DpeWebApplication web.config

AudioConversionCache.Cleanup.LowWaterMarkGb

  • Low water mark. Disk usage after cleanup task was executed, default value = 10 (GB)

AudioConversionCache.Cleanup.HighWaterMarkGb

  • High water mark. If disk usage is above high water mark, delete oldest files (last access date) until disk usage is lower than low water mark, default value = 20 (GB)

Automatic Logout function

Note

Since DPE 2.5 authentication is not using IIS Forms authentication anymore. Therefore this feature is not available anymore.

DPE application's pages have an automatic logoff time option which can be configured in the web.config file in the DpeWebapplication folder of your installation. The timeout is specified in minutes.

XML
<authentication mode="Forms">
  <forms name="MyFormsAuthCookie" timeout="2880" slidingExpiration="true" loginUrl="Logon.aspx" ticketCompatibilityMode="Framework40" />
</authentication>

Cross-Origin Resource Sharing (CORS)

CorsAllowOrigin

  • Optional, configures CORS, e.g. http://crossdpe:8046
  • It is standard procedure that web sites only can access web services of the same domain (http://[domain name]/). With CORS the DPE server can allow other client machines to use the DPE Services within another clients web applications.
  • Enable/configure CORS support in web.config:

    CODE
    <add key="CorsAllowOrigin" value="[domain]"/>
  • To allow all cross domain calls to DPE services, enter e.g.

    CODE
    <add key="CorsAllowOrigin" value="*"/>

Change the Default SAF Service Port

The communication between the SAF servers and the SAF Monitor section of the DPE Admin is using port 31810 as default. The port must be open in the Firewall configuration, see DPE Firewall Settings. To change the port number enter the following lines into the Web.config within the appsettings element:

CODE
<appSettings>
 <add key="SafServicePort" value="[PORT]"/> 
</appSettings>

Configure Retries and Timeouts For Notification

For clients being registrered as observer in the DPE WebServices (such as WorkflowService or JobQueueService, the retries and timeouts for notifications are defined as follows in the section appSettings (Default settings in seconds):

CODE
<add key="NotificationTimeout" value="10"/> 
<add key="NotificationRetries" value="1"/> 
<add key="NotificationThreads" value="2"/>

NotificationTimeout

  • Optional, default values should be sufficient!
  • Default: 10

NotificationRetries

  • Optional, default values should be sufficient.
  • Default: 1

NotificationThreads

  • Optional, default values should be sufficient
  • Default: 2

Configure on-the-fly Audio & Waveform creation

OnTheFlyAudioConversion.Enabled

  • Allows to switch off on-the-fly audio conversion
  • Default: true

OnTheFlyAudioConversion.LocalEnabled

  • Deprecated. Enables local on-the-fly audio conversion. Please use workflow-based on-the-fly audio conversion instead (which is the default).
  • Default: false

OnTheFlyAudioConversion.Format

  • Overrides the default lores format for the on-the-fly audio conversion.
  • Default: [FILETYPE]RAW[FORMAT]MPEG-LAYER3[SAMPLERATE]48000[BITRATE]128[MODE]Stereo[RELAXED_ERROR_CHECK]1

OnTheFlyAudioConversion.Extension

  • Overrides the default allowed extension for lores audio files.
  • Default: .mp3

OnTheFlyWaveform.Enabled

  • Allows to switch off on-the-fly waveform creation
  • Default: true.

Further web.config settings for DpeWebApplication

Standard

ServiceRootAddress

  • Normally auto-detected, only needed for decentralized environments, e.g. //MyDpe/DpeWebApplication

SafServiceBindTo

  • Optional, normally auto-detected, needed in environments with more than one network Adapter, e.g. 10.1.254.15

SafServiceAutomaticStart

  • Optional, starts SafService together with AppPool, e.g. true
  • Default: false

ThreadPoolMinThreads

  • Optional. Sets the minimum amount of threads waiting in the ThreadPool. Available since DPE 1.9.33. BrowserBridgeService long polling requires a lot of thread pool threads. Value should be not lower than the number of DPE clients.
  • Default: 100 (set from DpeSetup)

ExtToType + ExtToClass

  • When streaming files to DPE via the UploadMedium.ashx service, DPE maps file extensions to medium types and entry classes. This is used for example when dropping a file onto Content Manager entry list.

    Default mappings can be configured and adapted in web.config.

    Example for adding OGG to medium type Audio and to entry class Audio:

    CODE
    <add key="ExtToType" value="Audio=wav,mp2,mp3,flac,bwf,mus,aac,m4a,ogg"/>
    <add key="ExtToClass" value="Audio=wav,mp2,mp3,flac,bwf,mus,aac,m4a,ogg"/>

    Only the media type or classes specified will be changed from the default, e.g. in the above example mapping for Video would not be changed.


    The complete syntax is:

    CODE
    MediumTypeSpecifier1|MediumTypeSpecifier2|...

    Where MediumTypeSpecifier is

    CODE
    MediumType=Ext1,Ext2,Ext3,...

    Where Ext can be specified with or without leading dot. It is also possible to specify no extension at all.

    It also possible to disable a mapping by specifying no extension at all, e.g.

    CODE
    <add key="ExtToType" value="Audio=wav,mp2,mp3,flac,bwf,mus,aac,m4a,ogg|Video=|Text="/>


    Current default media type mappings are

    • Audio=wav,mp2,mp3,flac,bwf,mus,aac,m4a
    • Video=mxf,mp4,mov
    • Graphic=jpg,png,gif,bmp,tga
    • Text=txt
    • Text.InfoText=rtf
    • Zip-Archive.Zip-File=zip
    • Data.SpeechToText=s2t
    • Data.Waveform=waveform

    Current default entry class mappings are

    • Audio=wav,mp2,mp3,flac,bwf,mus,aac,m4a
    • Video=mxf,mp4,mov
    • Graphic=jpg,png,gif,bmp,tga
    • Text=txt,rtf
    • Zip-Archiv=zip

Scaling

  • Only needed when the machine you are running the DPE Server has a windows scaling factor not equal to 100%.

  • Inside from IIS we cannot reliable detect the windows scaling factor needed for correct conversion of line heights in RTF documents. If you have for example a windows scaling of 125% on your backend server set this value to 125.

SkipReverseDns

  • The DPE Server tries to detect the client machine name by using reverse DNS. This does not work outside of your companies domain. Set this value to 1 when your DPE Server is running in the cloud to skip reverse DNS and to avoid getting incorrect machine names.

DpeDefaultComputerName

  • Starting with DPE Server 2.5.138 this key replaces the Global|Default|Common|DpeDefaultComputerName parameter:

    On DPE login, if the computer name could not be retrieved automatically by the web application (e.g. computer outside of a domain), the DpeDefaultComputerName value is applied by default and saved in a cookie for later usage. This way the user is not asked for entering the computer name. If the parameter is missing, and the computer name is not retrieved then the web application will ask explicitly for the computer name on the login page.

SendRestartNotification

  • On startup the DPE Server tries to send restart notifications to registered observers, e.g. DPE Processors. Restart notifications reduce the time needed until the SAF modules re-register as observers.

  • The following modes are available (and can be combined in a comma-separated list, e.g. "$,name1,name2")

    • "*": send notifications to all registered SAF modules independent to which DPE Server name they are connected
    • "$" (default): send notifications to all registered SAF modules that are connected to the DPE Server name matching Environment.MachineName
    • "!": do not send any notifications
    • "name1,name2": send notifications to all registered SAF modules where DPE Server name matches one name in the list


  • This setting is useful in DPE Server fail-over scenarios where the public DPE Server name is different from the real machine name, e.g.

Advanced Debugging Options

HttpResponseHeader.AddRealMachineName

  • Optional, Adds a HTTP response header containing MachineName to all DPE responses (DPE >= 1.7.104, set to "1"). Can be used to analyse DNS resolution.

LoggerClient.AddRealMachineName

  • Optional, Adds a prefix containing MachineName to all log messages written by LoggerClient (DPE >= 1.7.104, set to "1"). Can be used to analyse DNS resolution.

HttpReqFileLog

  • Optional, activates and sets the path to low-level log files tracking on HTTP request level, e.g. "C:\Temp\DpeLogs\MyLogs.log".

  • A new file will be created per hour named like the filename body postfixed by a date and hour text e.g. MyLogs_2201012_03.log

    This may slow down execution performance so make sure you switch it off after testing.

    This may create large files with thousands of log lines in short time.


HttpReqFileLogIncludingRegex

  • Optional, a regular expression filter that specifies the lines of text that are included in the log, e.g. "ContentService" or "EasyQueryChangeNumber"

HttpReqFileLogExcludingRegex

  • Optional, a regular expression filter that specifies the lines of text that are excluded from the log, e.g. "LoggingService"

HttpReqFileLogOptions

  • Optional

    • F = Include full URL including protocol, host and port
    • B = Include request body
    • U = Resolve and include user authentication
    • D = Resolve IP addresses to names via DNS
    • R = Include response body
    • r = Include first 200 bytes of response body
    • H = Include request headers
    • P = Log Application_PreRequest+PostRequest calls in Global.asax
  • Default: "BUDr"

Advanced Faceted Search Options

LogFacets

  • Configures faceted search on Log page
  • Default: "Created,Level,Category,ComputerName,UserName,Component"

RegistryFacets

  • Configures faceted search on Parameter files page
  • Default: "Type,Modified,Created"

WorkflowFacets

  • Configures faceted search on Workflow Monitor page
  • Default: "Created,State,WorkflowType,Creator,CreatingComponent"

SafMonitorFacets

  • Configures faceted search on Workflow Monitor page
  • Default: "Connection,State,Computer,Server,Type,Version"

ContentFacets

  • Configures faceted search on Content Manager page
    Comma-separated list of facets. Each facet is specified in the following format:

    TEXT
    <FacetFunctionName>
      [|Name=<MetadataFieldName>]
      [|Order=<OrderChar>]
      [|SingleSelection=true/false]
      [|Label=<L1>.<L2>]

    Additional parameter keys can be abbreviated, e.g. N instead of Name.

    OrderChar is one of...

    TEXT
    A for label alphabetical ascending
    Z for label alphabetical descending
    0 for label numerical ascending
    9 for label numerical descending
    X for count max descending


    FacetFunctionName can be a dedicated facet function like Created or a generic one like General  or GeneralDateTime that requires additional parameters.

    Example using existing hard-coded facets:

    TEXT
    Created,CreatedYears,Modified,State,Class,Ready,Perfect,Invalid,Editor

    Example that specifies a facet by using the General-facet together with some configuration:

    TEXT
    General|N=Author,General|N=Language,General|Name=Program,General|N=LowResExists

    Example which maps facet values to a display text, e.g. the value 2 is displayed as "Group":

    CODE
    General|N=Story|D=Group/Story|L=0.Entry.2.Group.3.Story

    Example with GeneralDateTime-facet:

    CODE
    Modified,State,Class,GeneralDateTime|N=BroadcastDate|D=Broadcasted,GeneralDateTime|N=AvailDate|D=Avail,GeneralDateTime|N=LastSendDate|D=LastSend
  • Default: "Modified,State,Class,Ready,Perfect,Invalid"
JavaScript errors detected

Please note, these errors can depend on your browser setup.

If this problem persists, please contact our support.