How to configure DMS

Need to know all parameter configuration of DMS.

1 Like

To configure DMS, you need to do following things

  1. Deploy DMS microservice on the VRT
  2. change the application.properties
    Below are the brief explanations for each of the property.

Following are the core properties of the vahana dms micro service.

Property Name Property Value Value Change (in every environment) Description
spring.application.name VAHANA-DMS No This property describes the Application name.
server.servlet.context-path document-manager No This property defines context path for vahana dms.
server.port 9047 No It is server port for vahana dms on which application is running.

Following are the spring data source properties of the vahana dms micro service.

Property Name Property Value Value Change(in every environment) Description
spring.datasource.url jdbc:postgresql://:/dbName Yes This property is used to mention the url of database to be used.
spring.datasource.username user name to connect to database Yes This property is used to define the user name to access the database
spring.datasource.password password to connect to database Yes This property is used to define the password to access the database
spring.jpa.hibernate.ddl-auto update No This is mode for Database Creation on Updation. It must be update only otherwise complete Database may get deleted.
spring.jpa.show-sql true No This property defines whether to show sql queires on the console or not.
spring.jpa.properties.hibernate.default_schema “dms” No This property is used to define the name of schema of the database used

Following are the eureka properties of the vahana dms micro service.

Property Name Property Value Value Change (in every environment) Description
eureka.client.service-url.defaultZone http://:/eureka Yes Url of Eureka Server
eureka.instance.prefer-ip-address true No Set this property value to true,when the application registers with eureka , it uses its IP address rather than its hostname. If the hostname cannot be determined by Java, then the IP address is sent to Eureka .

Following are the multipart properties of the vahana dms micro service.

Property Name Property Value Value Change (in every environment) Description
spring.servlet.multipart.enabled true No This property is used to enable multipart upload.
spring.servlet.multipart.file-size-threshold 1000MB Depends on need This property is used to set max connection per route for connection pooling
spring.servlet.multipart.max-file-size 135MB Depends on need This property is used to define multipart max size
spring.servlet.multipart.max-request-size 300MB Depends on need This property is used to define multi part maximum request size

Following are the AWS properties of the vahana dms micro service.

Property Name Property Value Value Change (in every environment) Description
aws.secure.key AWS_SECURE_KEY Yes This property defines the security key to access aws, issued from the client side so as to use their aws bucket
aws.access.key AWS_ACCESS_KEY Yes This property defines the access key to access aws, issued from the client side so as to use their aws bucket
aws.bucket S3_BUCKET_NAME Yes This property defines the bucket name which we want to access on the aws for storing the uploaded documents.
aws.region AWS_REGION Yes This property defines the aws region for the bucket we want to access.
aws.connection.timeout 2000000 No This property specify the connection timeout for AWS
aws.socket.timeout 2000000 No This property specify the socket timeout for AWS
aws.max.connection 500 No This property specify the maximum number of connection for AWS
aws.max.retry 10 No This property specify the maximum number of retry for AWS
aws.signer.override AWSS3V4SignerType No

Following are the VAHANA DMS custom properties:

Property Name Property Value Value Change (in every environment) Description
isThumbanilRequired Y Depends on need This property specify if the thumbnail is required or not for the uploaded documents.
file.path /home/ubuntu/tomcat/webapps/images Yes This property defines the system path where logo images are to be saved.
webApps.path http://13.233.90.107:8090/images/ Yes This property defines the base url for the thumbnails to be retur
ppt.logo http://13.233.90.107:8090/images/ppt.png Yes This property defines the logo image that is to be returned as the thumbnail of the uploaded power point presentation.
doc.logo http://13.233.90.107:8090/images/doc.png Yes This property defines the logo image that is to be returned as the thumbnail of the uploaded document.
excel.logo http://13.233.90.107:8090/images/xsls.png Yes This property defines the logo image that is to be returned as the thumbnail of the uploaded excel doocument
image.logo http://13.233.90.107:8090/images/image.png Yes This property defines the logo image that is to be returned as the thumbnail of the uploaded image file.
pdf.logo http://13.233.90.107:8090/images/pdf.png Yes This property defines the logo image that is to be returned as the thumbnail of the uploaded pdf document
video.logo http://13.233.90.107:8090/images/video.png Yes This property defines the logo image that is to be returned as the thumbnail of the uploaded video
audio.logo http://13.233.90.107:8090/images/audio.png Yes This property defines the logo image that is to be returned as the thumbnail of the uploaded audio.
video.format mp4,moc,mpeg,wmv,flv,avi,avchd,webm,mkv No This property specify the video formats which are allowed for upload.
audio.format m4a,mp3,wav,wma,aac No This property specify the audio formats which are allowed for upload.
excluded.extension exe,sh No This property defines the files which are not allowed for uploading to the defined storage system.
archive.days 60 Depends on need This property defines the number of days before which the data is to be archived.(transfer data from one storage table to another)
purge.days 60 Depends on need This property defines the number of days before which the data is to be purged(delete data before given number of days)
cron.expression 0 0 * * FRI Depends on need This property defines the cron expression specifying when archieval and purge functionalities are to performed.
storage.type Possible values are S3/AZURE/BASE64 Yes This property defines the type of storage that is to be used at the client end.
storage.id storageId Yes This property defines the unique storage id which is used for the verification of the every upcoming request, if valid or not.
expiry.time 60 Depends on need This property defines the default time in minutes for which the generated url for downloading the document is valid.
maximum.record.limit 100 Depends on need This property defines the maximum number of recoords data to be allowed after the request is processed.
maximum.file.limit 50 Depends on need This property defines the maximum number of files to be allowed after the request is processed.

Following are the VAHANA DMS custom properties:

Property Name Property Value Value Change (in every environment) Description
sync.engine.base.url http://:/execution-sync-engine Yes This property specifies the url where execution sync engine is operational.
logging-agent-url http://IP:PORT Yes This property specifies the url where logging agent is operational
isHttpTracingEnabled true No This property is used for auto capturing of logs using logging agent

important properties to change are database propertirs according to your DB server

  1. Configure Storage Id:

    For configuring storage Id for DMS you need to add one json file in resources folder with name : StorageDetails.json

    In StroageDetails.json we can configure no of bucket each bucket should have unique storageId.

    Sample storage Id Configuration:

    {
    “UNIQUE_STORAGE_ID”: {
    “storageType” : “S3/BASE64”
    “secureKey”: “SECURE_KEY”,
    “accessKey”: “ACCESS_KEY”,
    “bucket”: “BUCKET”,
    “region”: “REGION”,
    “bucketType” : “PRIVATE/PUBLIC”,
    “fetchType” : “DOWNLOAD/VIEW”
    }

  2. once setup, you can access your newly created DMS using following API’s

Upload service urls(Urls may change):

public url:

http(s)://<your_vrt_public_domain_or_ip>/router/dynamic-router/VAHANA-DMS/document-manager/upload/v1/uploadDocument

private url:

http(s)://<your_vrt_private_ip>:document-manager/upload/v1/uploadDocument

Download service urls:

http://<vrt_ip>:/document-manager/download/v1/getDocumentsUsingIds

Delete Media urls:

http://<vrt_ip>:/document-manager/delete/v1/deleteDocument

4 Likes

One more point:
We also need to provide storage id while downloading mobile apk or vflow app on vahan portal.

5 Likes