The PCCIS service can be configured using the pcc.config file for both Windows and Linux. The parameters can be configured for the following services:
The location of the configuration file:
The location of the configuration file on a per-project basis, for example, the full-viewer-sample:
full-viewer-sample\viewer-webtier
The following options are available for configuration within the PCCIS pcc.config file:
Property |
Default Value |
Supported Values |
Description |
DocumentPath |
Windows: %ALLUSERSPROFILE%\Accusoft\Prizm\DocumentCache Linux: /usr/share/prizm/cache/DocumentCache/ |
Any valid path to a directory with read and write permissions. |
Part of the PCCIS cache where the original source document files are stored. Read/write access is required for this directory. UNC paths are supported but it is recommended to set this path to a directory on a local drive for best performance. PCCIS will attempt to create this directory if it does not exist. See How to Implement Caching Strategies for more details. |
GroupStateFolder |
Windows: %ALLUSERSPROFILE%\Accusoft\Prizm\GroupState Linux: /usr/share/prizm/cache/GroupState/ |
Any valid path to a directory with read and write permissions. |
Part of the PCCIS cache where persistent viewing session data is stored. Read/write access is required for this directory. UNC paths are supported but it is recommended to set path to a directory on a local drive for best performance. PCCIS will attempt to create this directory if it does not exist. See How to Implement Caching Strategies for more details. |
TempcachePath |
Windows: %ALLUSERSPROFILE%\Accusoft\Prizm\Cache Linux: /usr/share/prizm/cache/TempCache/ |
Any valid path to a directory with read and write permissions. |
Part of the PCCIS cache where temporary conversion files are stored. Read/write access is required for this directory. UNC paths are supported but it is recommended to set path to a directory on a local drive for best performance. PCCIS will attempt to create this directory if it does not exist. See How to Implement Caching Strategies for more details. |
UserDocumentFolder |
Windows: %ALLUSERSPROFILE%\Accusoft\Prizm\UserDocuments Linux: /usr/share/prizm/cache/UserDocuments |
Any valid path to a directory with read permissions. |
A directory that contains your documents for use when the documentSource viewing session property is set to "file". This directory, when combined with the filename set in the externalId JSON property when creating a new viewing session, provides the full path to the local file. This method for providing source documents to PCCIS is useful if the files already exist on the server that is hosting the service. PCCIS will only read from this directory and copy necessary documents to its own cache for processing. Setting the externalId to a filename with partial path is supported. For example, a value of "\Group1\Document2.pdf" in the externalId JSON property would produce the full path "C:\ProgramData\Accusoft\Prizm\Documents\Group1\Document2.pdf" on Windows. See How to Transfer Your Document to PrizmDoc Server for more details. |
PdfConversionServiceScheme |
http |
http |
The scheme name used by an internal conversion service. Note: This value should not be changed. |
PdfConversionServiceHost |
localhost |
localhost, 127.0.0.1 |
The host name of the URI used by an internal conversion service. Note: This value should not be changed. |
PdfConversionServicePort |
38505 |
Any open HTTP port on the server |
The port number used by an internal conversion service. Note: This value should not be changed. |
PdfConversionServicePath |
PDFCS |
PDFCS |
The resource path of the URI used by the internal conversion service. Note: This value should not be changed. |
RasterConversionServiceScheme |
http |
http |
The scheme name used by an internal conversion service. Note: This value should not be changed. |
RasterConversionServiceHost |
localhost |
localhost, 127.0.0.1 |
The host name of the URI used by an internal conversion service. Note: This value should not be changed. |
RasterConversionServicePort |
38502 |
Any open HTTP port on the server |
The port number used by an internal conversion service. Note: This value should not be changed. |
RasterConversionServicePath | RCS | Any valid URI resource path string, RCS |
The resource path of the URI used by an internal conversion service. Note: This value should not be changed. |
VectorConversionServiceScheme | http | http |
The scheme name used by an internal conversion service. Note: This value should not be changed. |
VectorConversionServiceHost | localhost | localhost, 127.0.0.1 |
The host name of the URI used by an internal conversion service. Note: This value should not be changed. |
VectorConversionServicePort | 38508 | Any open HTTP port on the server |
The port number used by an internal conversion service. Note: This value should not be changed. |
VectorConversionServicePath | VCS | VCS |
The resource path of the URI used by an internal conversion service. Note: This value should not be changed. |
EnableSourceDocumentDownload | true | true, false |
When set to true, this property allows the source document of a valid and active viewing session to be downloaded via an HTTP GET request to PCCIS. When false, or any other value beside true, 403 Forbidden is returned. WARNING: If this property is true, the source document may be downloaded in unencrypted form even if the <EncryptPageContent> flag is set to true. |
ViewingSessionTimeout |
20m |
Formatted Value, see Description |
The length of time that a viewing session remains usable. This must be an integer, followed by "s", "m", "h", or "d". The suffixes stand for second, minute, hour, or day, respectively. There should not be any space characters between the number and suffix. For example, "20m" indicates viewing sessions will timeout after 20 minutes. See How to Implement Caching Strategies for more details. |
CacheExpirationPeriod |
1d |
Formatted Value, see Description |
The length of time that a document is cached and can be potentially reused by other new viewing sessions. This must be an integer, followed by "s", "m", "h", or "d". Those suffixes stand for second, minute, hour, or day, respectively. There should not be any space characters between the number and suffix. For example, "1d" indicates that data will be cached for up to one day. See How to Implement Caching Strategies for more details. |
ViewingSessionIdEncryptionKey |
E9rU73lZ2vd0he8Ls/hD8A== |
Base64 encoded value of a byte array representing an AES key with a size of 128, 192 or 256 bits. |
The AES encryption key used to create external viewing session IDs. The external viewing session ID is a AES encrypted, Base64 encoded value of a string in the format of: <internal ID>/<server’s host name>/<Auth-Token header value> Internal ID: This value is a unique GUID that is internally created by PCCIS for each new viewing session. Server’s Host Name: Aptly named, this value is the hostname of the server on which PCCIS is running. Auth-Token Header Value: If the "Auth-Token" HTTP header exists in the initial POST request to create a viewing session, its value will be used here. Otherwise, "accusoft" is used. This value is useful if you have the need to store an authorization token for each viewing session which a proxy might need. See PrizmDoc Multi-Server Mode for more details. |
ViewingSessionIdEncryptionIv |
jTN2XBjybtfA2fpsv6mylQ== |
Base64 encoded value of a byte array representing an AES initialization vector with a size of 128 bits. |
The AES encryption initialization vector (iv) used to create external viewing session IDs. |
ViewingSessionPropertyDocumentSource |
api,http |
api, http, file or any combination of the three separated by a comma. |
Creates a value filter that will be applied to the "documentSource" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This value can be api, http, file, or a combination of two or more. When combining values, separate them with a comma (,). For example, the value "api,http" would allow the documentSource property to be set to api or http, but not file. Allowing a combination of document sources here enables you to create viewing sessions with different sources on the fly without needed to modify this config file. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. |
ViewingSessionPropertyExternalId |
.* |
Valid regular expression using the .NET Regular Expression Language. |
Creates a regex filter that will be applied to the "externalId" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. |
ViewingSessionPropertyDocumentExtension |
.* |
Valid regular expression using the .NET Regular Expression Language. |
Creates a regex filter that will be applied to the "documentExtension" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. |
ViewingSessionPropertyCountOfInitalPages |
min=0,max=10 |
A string in the format of "min=<minValue>,max=<maxValue>" where minValue is 0 or a positive integer value and maxValue is 0 or a positive integer value greater than or equal to minValue. |
Creates a range filter that will be applied to the "countOfInitalPages" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. |
ViewingSessionPropertyPageContentEncryption | default | enabled, disabled, default, or any (which means either enabled, disabled or default is acceptable) |
Creates a range filter that will be applied to the "pageContentEncryption" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. |
Html5RenderRasterResolution |
min=100,max=300 |
A string in the format of "min=<minValue>,max=<maxValue>" where minValue is a positive integer value and maxValue is a positive integer value greater than or equal to minValue. |
Creates a range filter that will be applied to the "render.html5.rasterResolution" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. |
Html5RenderAcceptableRasterValue |
false |
true, false, any (which means either true or false is acceptable) |
Creates a value filter that will be applied to the "render.html5.alwaysUseRaster" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. |
ViewingSessionPropertyServerCaching |
any |
none, full, any (which means either none or full is acceptable) |
Creates a value filter that will be applied to the "serverCaching" JSON property when creating a new viewing session to ensure appropriate values are being set. If the actual property value fails to match the filter, an error will be returned and the viewing session will not be created. This property is one of several that can be used to limit unwanted values from being used within the JSON properties of the initial POST request to create a viewing session. These filter values are useful to prevent mistaken or malicious values from being sent that could affect server behavior. See How to Implement Caching Strategies for more details. |
EncryptPageContent |
false |
true, false |
Enables or disables the encryption of page content that is sent to the Viewer from PCCIS. This helps to prevent the unauthorized access of page content over the wire and as it is stored in the browser’s cache. See how to encrypt page content for more details. |
PageInteractiveTimeout |
25000 |
An integer recommended to be between 5000 (5 seconds) and 120000 (2 minutes). |
When PCCIS receives a request for page-level content or other data, this is the number of milliseconds that PCCIS will wait for that information to become available before the request times out and returns in error. |
DocumentInteractiveTimeout |
50000 |
An integer recommended to be between 30000 (30 seconds) and 300000 (5 minutes). |
When PCCIS receives a request for document-level data like page count, this is the number of milliseconds that PCCIS will wait for that information to become available before the request times out and returns in error. |
DocumentAcquisitionTimeout |
25000 |
An integer recommended to be between 5000 (5 seconds) and 120000 (2 minutes). |
When PCCIS is responsible for downloading the source document directly from a specified HTTP location (documentSource viewing session property equals "http"), this is the number of milliseconds that request will wait before timing out. |
InternalOperationTimeout |
100000 |
An integer recommended to be between 100000 (100 seconds) and 300000 (5 minutes). |
When PCCIS begins the conversion for a document, it has InternalOperationTimeout milliseconds to complete all of the conversion and text extraction operations. If this timeout is reached, the viewing session will be stopped because a valid document was not obtained. |
RetainContextOnHealthIssue |
false |
true, false |
A flag indicating whether the context (recently-processed work) should be saved when the service becomes unhealthy. Normally, this should be false, but you can set it to true to preserve documents that cause problems. When this is true, and only when the service transitions from healthy to unhealthy, the source documents and cached work will not be expired and deleted. This allows them to be reprocessed to see if they caused the health problem. Note that if you stop and restart PCCIS, it will no longer preserve the files and may delete them. |