On-premises configurations

  1. Copy the most recent installations from \\kastpdat04\pde_auslieferungen\InputManagement\ to the application server.
  2. Stop existing STP services on the application server.
  3. Make sure LSB on-premise (Rabbitmq) and User Management on-premise are up and running and save their LsbHost, LsbPort, LsbUser, LsbPassword, UmServiceUser, UmServicePassword since they will serve for all the services.

Make sure UmServiceUser belongs to the correct groups in User Management (Alle DMS, All WZ, CloudAccess, Administrators, Administrators DMS)

STP.OnPremise.Connector

STP OnPremise Connector connects all the services to the centralized LSB on-premise (Rabbitmq) and User Management on-premise.

  1. Check C:\Program Files (x86)\STP AG\STP OnPremise Connector\bin to contain: STP.OnPremise.Connector.exe.config.

Sample:

    <appSettings>
        <add key="LsbHost" value="localhost"></add> -- localhost (if they are hosted at the same application server)
        <add key="LsbPort" value="5672"></add> -- 5672 (by default)
        <add key="LsbUser" value="<LsbUser>"></add>
        <add key="LsbPassword" value="<LsbPassword>"></add>
        <add key="LsbUseEncryption" value="true"></add>
        <add key="LsbUseSsl" value="false"></add>
        <add key="LsbSslCertPath" value=""></add>
        <add key="LsbSslCertPhrase" value=""></add>
        <add key="LocalUsername" value="<UMUser>"></add> -- User Management user, part of Administrators group
        <add key="LocalPassword" value="<UMPassword>"></add> -- User Management user's password
        <add key="SerializationType" value="Bson"></add>
        <add key="LsbCloudHost" value="opconnector.stp-cloud.de"></add> -- Cloud on-premise connector
        <add key="LsbCloudPort" value="5673"></add> -- Cloud on-premise connector's port
        <add key="LsbCloudUseSsl" value="true"></add>
        <add key="LsbCloudSslCertPath" value=""></add>
        <add key="LsbCloudSslCertPhrase" value=""></add>
        <add key="TenantId" value="<TenantId>"></add>
        <add key="TenantUsername" value="<cloudServiceUser>"></add> -- Cloud User Management user
        <add key="TenantPassword" value="<cloudServicePassowrd>"></add> -- Cloud User Management user's password
...
    </appSettings>
  1. Check C:\ProgramData\STP AG\STP.OnPremise.Connector to contain: Tenant.info
  • TenantXId - TenantId of connected cloud tenant
  • ShortName - Tenant name of the connected cloud tenant
  • BaseUrl - Url of of the connected cloud tenant

Once the setup is done, the service can be started. To verify everything works, you can visit Tenant Admin section:

OnPremiseConnector

STP Document Collector

STP Document Collector sends scanned documents to the cloud (or Documents on-premise).

  1. Check C:\Program Files (x86)\STP AG\STP Document Collector to contain: STP.IM.DocumentCollectorOnPremiseService.exe.config.

Sample:

    <appSettings>
...
        <!-- Authorization to the Cloud User Management -->
        <add key="Authority" value="https://<TenantName>.stp-cloud.de/identity/"></add>
        <add key="ServiceUrl" value="https://<TenantName>.stp-cloud.de/im2/workflow"></add>
        <add key="ClientName" value="im.service.collector"></add>
        <add key="TenantName" value="<TenantName>"></add>
        <add key="Service.Username" value="<UmServiceUser>"></add> -- Cloud connected and suited user with sufficent rights to upload documents: required groups: IM.Services.OnPremise, IM.Services, IM.Employee
        <add key="Service.Password" value="<UmServicePassword>"></add>
        <add key="Service.Identifier" value="main"></add> -- Message queue in LSB that is responsible for the communication
        <add key="ConfigurationFolder" value="%PROGRAMDATA%\STP AG\STP.IM.DocumentCollectorOnPremiseService"></add>
        <add key="RabbitMQ.Server" value="<LsbHost>"></add>
        <add key="RabbitMQ.Port" value="LsbPort"></add>
        <add key="RabbitMQ.Username" value="<LsbUser>"></add>
        <add key="RabbitMQ.Password" value="<LsbPassword>"></add>
    </appSettings>
  1. Check C:\ProgramData\STP AG\STP.IM.DocumentCollectorOnPremiseService to contain config.json.

Sample (check STP Document Collector documentation for futher settings):

"UploadQueuePath": "C:\\Users\\Public\\STP.Scanfolder\\UploadQueue",
    "ErrorItemPath": "C:\\Users\\Public\\STP.Scanfolder\\ErrorItems",
    "CountUploadWorkers": 3,    
    "EnableUploads": true,
    "DurationToErrorQueueInMinutes": 60,
    "SmtpMailSettings": {
        "Server": null,
        "Port": 0,
        "User": null,
        "Domain": null,
        "Password": null,
        "SSL": false,
        "UseDefaultCredentials": false,
        "DefaultSenderAddress": null,
        "DefaultSenderName": null
    },
    "EnableUploads": true,
    "ImageRenderingSettings": {
        "ImageRenderingMode": 3
    },
    "WorkingModeSettings": {
        "WorkingMode": 0
    }

And ScanFolders at least one working configuration.

Sample (check STP Document Collector documentation for futher settings):

{
    "DirectoryPath": "C:\\Users\\Public\\STP.Scanfolder\\Posteingang",
    "ScanIntervalSeconds": 5,
    "Enabled": true,
    "UseUploadApproval": false,
    "AutomaticApproveAfter": null,
    "MasksToTargets": [
        {
            "TargetLaneName": "Mannheim",
            "FileMask": "*.*",
            "ClassName": null,
        }
    ],
    "IsBatchFolder": true,
    "OutGoingMailOnly": false,
    "DocumentSeparatorIdentifier": "DOCUMENT_SEPARATOR",
    "RemoveEmptyPagesEnabled": true,
    "RemoveEmptyPagesThreshold": 50.0,
    "DmsImportFolder": "C:\\Users\\Public\\STP.Scanfolder\\Posteingang\\temp",
    "DmsImportFolderFallback": "",
    "ServiceMode": true,
    "EmailRecipientsOnError": "",
    "KeepSeparatorSheet": true,
    "DmsImportFilePattern": null,
    "MinimumFileAgeInSeconds": 60,
    "LexDmsImportFolder_OnPremiseOnly": null,
    "UseWzBarcodeAsSeparator": true,
    "SplitDocumentByFixedBatchSize": 0,
    "RetentionPeriods": {
        "OriginalsRetentionPeriodInDays": 7,
        "ErrorsRetentionPeriodInDays": 0,
        "ProcessedRetentionPeriodInDays": 0
  }
}

STP E-Mail Collector

STP E-Mail Collector sends files from outlook to the cloud.

  1. Check C:\Program Files (x86)\STP AG\STP E-Mail Collector to contain: STP.IM.EMailCollector.exe.config.

Sample:

        <appSettings>
        ...
        <add key="RabbitMQ.Server" value="<LsbHost>"></add>
        <add key="RabbitMQ.Port" value="<LsbPort>"></add>
        <add key="RabbitMQ.Username" value="<LsbUser>"></add>
        <add key="RabbitMQ.Password" value="<LsbPassword>"></add>
        <add key="Service.Identifier" value="main"></add> -- Message queue in LSB that is responsible for the communication
        <add key="Service.Username" value="<UmServiceUser>"></add> -- Cloud connected and suited user with sufficent rights to upload documents: required groups: IM.Services.OnPremise, IM.Services, IM.Employee
        <add key="Service.Password" value="<UmServicePassword>"></add>
        <add key="CloudUrl" value="https://<TenantName>.stp-cloud.de"></add>
        <add key="MaxNumberOfJobs" value="5"></add>
        <add key="FolderSubscriptionPeriod" value="10"></add>
        <add key="AttachmentReplacementText" value=""></add>
        <add key="IM.Authority" value="https://<TenantName>.stp-cloud.de/identity/"></add>
        <add key="IM.ClientId" value="im.service.collector"></add>
        <add key="IM.TenantName" value="<TenantName>"></add>
    </appSettings>
  1. Check C:\ProgramData\STP AG\STP E-Mail Collector to contain folder FolderConfig and at least one working configuration.

Sample:

{
  "InformUsers": [
    "<User>"
  ],
  "ExchangeAccount": {
    "Server": "<ExchangeServerConfiguration>",
    "UserName": "<User>"
  },  
  "Folders": [
    {
        "EwsPostfach": "<UserEmail>",
        "EwsImportVerzeichnis": "Input Management",
        "CloudDokumentenstapel": "Input Management",
        "EwsImportInArbeitVerzeichnis": "Input Management\\Upload_In_Progress",
        "EwsImportfehlerverzeichnis": "Input Management\\Upload_Erroneous",
        "EwsImportFertigVerzeichnis": "Input Management\\Upload_Successful",
        "ExtrahiereAnhaenge": true,
        "ImportiereOriginalDateien": true
    }
  ]
}

STP LEXolution Connect

STP LEXolution Connect synhronizes dossiers’ data between Documents on-premise and cloud, including information about Filing trays and Collectors.

  1. Check C:\Program Files (x86)\STP AG\STP LEXolution Connect to contain: STP.IM.LEXolutionDmsConnectOnPremiseService.exe.config

Sample: json <appSettings> ... <add key="RabbitMQ.Server" value="<LsbHost>"></add> <add key="RabbitMQ.Port" value="<LsbPort>"></add> <add key="RabbitMQ.Username" value="<LsbUser>"></add> <add key="RabbitMQ.Password" value="<LsbPassword>"></add> <add key="RabbitMQ.Timeout" value="15"></add> <add key="Service.Identifier" value="main"></add> -- Message queue in LSB that is responsible for the communication <add key="Service.Username" value="<UmServiceUser>"></add> -- Cloud connected and suited user with sufficent rights to upload documents: required groups: IM.Services.OnPremise, IM.Services, IM.Employee <add key="Service.Password" value="<UmServiceUser>"></add> <add key="Service.ClientName" value="lexolution.dms.connect"></add> <add key="Service.TenantName" value="<TenantName>"></add> <add key="CloudService.Url" value="https://<TenantName>.stp-cloud.de"></add> </appSettings>

  1. Check C:\ProgramData\STP AG\STP.LEXolution.Connect to contain: config.json, dossierSync.json, folderSync.json

Sample config.json:

{
  "FileSystem": {
    "TempPathForDocuments": "C:\\ProgramData\\STP AG\\STP.LEXolution.Connect\\Documents"
  },
  --Refer to Database `stppde_LEXolution` - `[tblDatabaseId]`
  "Dms": {
    "SystemId": "<DMSId>", 
    "DmsServerVersion": "<DMSVersion>",
    "DmsServerTransientQueueName": "LEXolutionDmsServerTransient_main" -- Message queue in LSB that is responsible for the communication
  },
  "ContainerSync": {
    "SyncDossiers": true,
    "SyncFolders": true,
    "SyncCollectorDefinitions": true
  }
}

If dossierSync.json, folderSync.json does not exist, once the service is successfully started and the synchronization finishes, the should appear.

STP winsolvenz.p4 FLOW Connector

winsolvenz.FLOW.Connector synchronizes proceedings’ and interested parties’ data to the cloud service.

  1. Check C:\Program Files (x86)\STP AG\STP winsolvenz.p4 FLOW Connector to contain: appsettings.json.

Sample: json { ... "HttpSearchIndexClientSettings": { "BaseAddress": "https://<tenant>.stp-cloud.de/im/lexolutionconnect/api/indexdata", }, "OnPremiseLsbSettings": { "Host": "<LsbHost>", "Port": "<LsbPort>", "User": "<LsbUser>", "Password": "<LsbPassword>", "UmUsername": "<UmServiceUser>", "UmPassword": "<UmServicePassword>", "ClientName": "lexolution.dms.connect", "TenantName": "<TenantName>", "WinsolvenzServerTransientQueueName": "winsolvenzServerTransient_main" }, --Refer to `C:\Program Files (x86)\STP AG\STP Server\STP.RemotingServer.exe.config` to get "ConnectionStrings": { "winsolvenz": "Server=<SqlServerName>;Database=<DatabaseName>;User=<DatabaseUser>;Password=<DatabasePassword>;TrustServerCertificate=True;" }, "DmsSettings": { --Refer to Database `stppde_LEXolution` - `[tblDatabaseId]` "SystemId": "<DMSId>", "SchemaId": "Insolvenz" }, "HangfireSettings": { "SyncInterestedPartiesToFlowCronExpression": "* * * * *", "SyncProceedingsToFlowCronExpression": "* * * * *" } }

  1. Check C:\ProgramData\STP AG\winsolvenz.FLOW.Connector to contain:

syncProceedingsToFlowJobSettings.json syncInterestedPartiesToFlowJobSettings.json

If no, once winsolvenz.FLOW.Connector is started, it will synchronize data and the files should appear.