'mailstorage' Service

enaio® 10.10 »

The EMS 'mailstorage' service is part of the e-mail administration and has the following functions:

  • Location information

    Every e-mail requires an index data field with location information. The 'mailstorage' service enters this information in a default field or in a configured index data field when creating e-mails. This information can also be added to e-mails that lack it by the 'mailstorage' service at a later time.

  • Indexing

    E-mails can be indexed automatically when they are created. The 'extraction' microservice extracts data from e-mails, and the microservice 'mailstorage' assigns this data to default fields or configured index data fields.

  • Workflow connectivity

    Workflows can be started by transferring data and e-mails via the enaio® Outlook Add-in NG. To do so, the input parameters of the workflow are extracted and assigned data from e-mails.

  • Deduplication

    If e-mails have already been created, reference documents or further filing locations can be created via enaio® Outlook Add-In NG when creating them again.

  • Merging attachments

    If users create e-mail attachments via enaio® Outlook Add-In NG as a document in enaio®, the administrator can specify that the e-mail attachment in Outlook is replaced by a enaio® reference file.

  • Deleting e-mails from Outlook

    E-mails can be moved to the deleted objects folder in Outlook after they are created (optional). This function can be predefined by the administrator.

The configurations are made via the ems-prod.yml from the \services\service-manager\config\ directory.

Location Information

Each document type that manages e-mail and e-mail elements requires an index data field for location information. enaio® editor automatically creates a corresponding field starting in version 9.0 when creating e-mail document types: text field, 100 characters, internal name: MAIL_DIGEST. A corresponding field must be created for module-spanning document types and e-mail document types from previous versions so that e-mails can be created using these document types.

E-mail document types that have a field with the internal name 'MAIL_DIGEST' do not need to be specified in the configuration of the 'mailstorage' service. For e-mail document types that do not have a field with the internal name 'MAIL_DIGEST' and for module-spanning document types, the field for the location information must be specified in the configuration of the 'mailstorage' service.

Configuring the Index Data Field for the Location Information

The 'mailstorage' service is configured directly from the ems-prod.yml configuration file from the \services\service-manager\config\ directory.

The configuration of an index data field for the location information has the following structure:

mapping  
emsTypes:  
– name: "E-mail"

Configuration section for the document type

internalName: "EMAILTYP" Internal name of the document type
deduplicationContext:  
internalName: "INDEX_DIGEST" Internal name of the index data field for the location information
mappingFields: Section with data for the automatic indexing of fields
- name: "Mail" Configuration section for another document type

Configuring the Subsequent Location Indexing

The 'mailstorage' service regularly checks for e-mails without location information and updates the location information. All e-mail document types and all module-spanning document types that are configured with an index data field for the location information are checked.

Default setting: Every day between 11:00 p.m. and 3:00 a.m. the location information is updated for all e-mail document types without a value in runs of 1,000 objects. In case of an error, the value NO_MAIL_DIGEST is entered in the field for the location determination.

The default setting is changed via the ems-prod.yml configuration file from the \services\service-manager\config\ directory.

config:  
healthCheck:"*/5 * * * * *"

Time at which the status is checked (in cron format)

cronZone:"Europe/Berlin" Referenced time zone for the times
autoUpdate:  
activated: true false: Function is disabled
maxItems: 1000 Max. number of e-mails that are processed during a run.
cron:"0+*/1+23,0,1,2+?+*+*+*"

Time period in which the function is performed (in cron format)

updateTargetValue:""

If a value is specified, the function will only be performed on e-mails that contain this value in the index data field for location information. Values can be specified using placeholders.

includeAutoMapped:true

true: All e-mail document types are checked

false: Only configured document types are checked

errorHash:"NO_MAIL_DIGEST" Value entered in the index data field for the location information in case of errors

Indexing

E-mails with the following internal names of the default fields are automatically indexed when they are created with data from the 'extraction' service::

Internal name

Name

Extraction name

MAIL_FROM

From:

OS:MailFrom

MAIL_TO

To:

OS:MailTo

MAIL_CC

Cc:

OS:MailCc

MAIL_SUBJECT

Subject:

OS:Subject

MAIL_SUBMIT_TIME

Date:

OS:MailDate

MAIL_BODY

Message:

OS:MailBody

Default assignments apply only to e-mail document types without configuration.

E-mail object types for which the default assignments are valid can be viewed under:

http://<Service mailstorage-IP>/maintenance/report > application > runtime > mappedTypes

You can test the extraction of e-mail elements:

  1. Open the administration page of microservices using the URL http://<service-manager-admin-IP>:<port>.

    Default port: 7273

  2. Click EXTRACTION and in the opened line.
  3. Click the link for the Swagger UI in the line on the top left.
  4. Select extraction-api from the list in the header.
  5. Click Expand operations.
  6. Scroll down to the POST/extraction/api/xmp area and click Browse in the Parameters section.
  7. Select e-mail element from file system.
  8. By clicking Try it out! the extraction will start.

The data is extracted immediately and the result is shown.

Configuring Indexing

Configuration will be required in the following cases:

  • When module-spanning document types are made available for e-mail management.
  • If fields have other internal names and you do not want to change them in enaio® editor.
  • If fields of the index data form should be read-only when creating an e-mail.
  • When creating multiple e-mails in one action via enaio® client, the index data form is opened only once. Entries in the extraction fields are protected, entries in other fields are applied to all e-mails.

  • If data from the 'extraction' service is not to be transferred.
  • If fixed or default values are to be entered in fields.

The configuration is carried out in the ems-prod.yml configuration file from the \services\service-manager\config\ directory.

Check if the configuration is included in the servicewatcher-sw.yml configuration file: The profiles parameter needs the value eml
Example:
name: mailstorageservice
type: microservice
profiles: prod,cloud,blue,eml

Configuration Examples

Configurations need to specify the index data field for location information and all assignments.

Function For example

Module-spanning document type:

Internal name 'mtype'

Main type 6: E-mails are not checked out when opened

Index data field for the 'MAIL_DIGEST' location information

 

 mapping: emsTypes: - name: "M-Typ" internalName: "mtyp" mainType: 6 deduplicationContext: internalName: "MAIL_DIGEST" mappingFields: ...

Assignment: Extraction name – Internal name

The extracted 'OS:MailFrom' data is mapped to the 'FROM' field.

 mapping: ... mappingFields: – internalName: "FROM" extractionName: "OS:MailFrom"

Opening the index data sheet

When creating an object, the data sheet of the 'etyp' document type is opened by default.

Extracted data is prepopulated and can be overwritten by the user.

 

Extracted data can be protected:

mappingFields:
    - internalName: "MAIL_FROM"
    extractionName: "OS:MailFrom"
    overrideIndexdata: true

Changes made by the user in the 'MAIL_FROM' field will not be adopted.

 mapping: emsTypes: - name: "E-Typ" internalName: "etyp" showIndexdata: true deduplicationContext: internalName: "MAIL_DIGEST" mappingFields: ...

Fixed values

Fixed values can be assigned to any field of the document type.

 mapping: ... mappingFields: – internalName: "MAIL_CC" fixedValue: "CC hidden"

Default values

The default value is only entered if the value specified by 'extractionName' is not present in the extraction data.

If an empty string is assigned to the value specified by 'extractionName', then this is also used and not the 'defaultValue'.

 mapping: ... mappingFields: – internalName: "MAIL_SUBJECT" extractionName: "OS:Subject" defaultValue: "No Subject"

Default assignments

Default assignments apply only to e-mail document types without configuration.

All desired assignments must be specified for configured document types.

 mapping: ... mappingFields: – internalName: "MAIL_FROM" extractionName: "OS:MailFrom" – internalName: "MAIL_TO" extractionName: "OS:MailTo" – internalName: "MAIL_CC" extractionName: "OS:MailCc" – internalName: "MAIL_SUBJECT" extractionName: "OS:Subject" – internalName: "MAIL_BODY" extractionName: "OS:MailBody" – internalName: "MAIL_SUBMIT_TIME" extractionName: "OS:MailDate" 

Workflow Connectivity

The workflow connectivity for enaio® Outlook add-in NG is configured in the ems-prod.yml configuration file from the \services\service-manager\config\ directory.

The configuration of a workflow integration has the following structure:

mapping  
emsTypes:  
.....  
workflows:  
- name: "wfname"

Configuration section for the workflow model.

familyId: "GUID"

Specification of the GUID of the workflow family.

The GUID is entered in the properties dialog of the workflow family in enaio® editor-for-workflow.

fileTarget: INFO

Entry for the file:

INFO: The e-mail is placed in the file.

NONE: The e-mail will not be included in the file.

inputVariables: List of input parameters of the workflow to which data is assigned.
-name: "parameter1" Name of the input parameter.
 extractionName: "OS:Subject" Name of the data to be assigned for the 'extraction' service.
-name: "parameter2" Name of a further input parameter.
 extractionName: "OS:MailFrom" Name of the data to be assigned for the 'extraction' service.
-name: "parameter3" Name of a further input parameter.
 extractionName: "OS:MailCc" Name of the data to be assigned for the 'extraction' service.
 defaultValue: "noCc" Assignment of a default value that is only entered if assigned data for the extraction is not available.
-name: "parameter4" Name of a further input parameter.
 fixedValue: "fix" Assignment of a fixed value instead of an extraction value.

At least one parameter must be specified; parameters must be created in enaio® editor-for-workflow as input parameter or input/output parameter.

Context-sensitive Location Suggestions

The enaio® Outlook add-in NG automatically suggests context-sensitive locations to the user. This feature can be customized in the project or disabled system-wide through the ems-prod.yml configuration file. If the feature is enabled, then the user can disable this feature through the add-in options of enaio® Outlook add-in NG.

System-wide deactivation of the location suggestions:

suggestion:
    activated: false
mapping:
    emsTypes:
    ...

After changes are made to the ems-prod.yml configuration file, the 'mailstorage' (EMS) service must be restarted via enaio® services-admin.

Deduplication

When creating an e-mail via enaio® Outlook Add-In NG, it can be checked whether an e-mail that a user wants to create has already been created. If this is the case, the user can create a reference document instead, select another location, or recreate the e-mail.

Configuration is carried out according to document type via the ems-prod.yml configuration file.

Structure of ems-prod.yml:

mapping  
emsTypes:  
– name: "E-mail"

Configuration section for the document type

internalName: "EMAILTYP" Internal name of the document type
deduplicationContext:  
internalName: "INDEX_DIGEST" Internal name of the index data field for the location information
mode: GLOBAL

Modi:

  • NONE: It is not checked (default)
  • TYPE: It is checked whether the e-mail was already created with the selected object type.
  • GLOBAL: It is checked whether the e-mail was already created with any object type.

To do so, the EMS service 'mailstorage' checks all e-mail messages with known object types: those that are explicitly configured in the ems-prod.yml file and the object types that are known through default mapping with the 'INDEX_DIGEST' field.

handling: LINK

Steps:

  • LINK: A reference document is created.
  • COPY: Another location is created.

A combination of mode: GLOBAL and handling: COPY will lead to errors if another location is to be created in a different cabinet. In this case users will be notified correspondingly.

mappingFields: Section with data for the automatic indexing of fields
- name: "Mail" Configuration section for another document type

Merging Attachments

Users can create e-mail attachments as a document in enaio® via enaio® Outlook Add-In NG. Using the add-in options, users can configure the settings so that the e-mail attachment in Outlook is replaced by a enaio® reference file.

Replacing the e-mail attachment with a enaio® reference file after creation in enaio® can be predefined by an administrator. The user cannot disable this option. The configuration applies to all document types.

config  
administrativeTemplates:  
forceReplaceAttachments: true false: No requirements (default)

Deleting E-Mails from Outlook after Creation

Users can delete e-mails from Outlook via enaio® Outlook Add-In NG after creating them in enaio® (optional). The e-mails are moved to the deleted objects folder. This behavior can be predefined by an administrator. The user cannot disable this option. The configuration applies to all document types.

config  
administrativeTemplates:  
forceDeleteMailAfterStore: true false: No requirements (default)

'Approved for archiving' Property

By default, e-mails are created with the 'not approved for archiving' property.

Use the following entry to change this setting for an object type:

- name: "E-mail"
  internalName: "email01"
  insertOptions: "ARCHIVABLE=1"

All options of the DMS.XMLInsert job are possible for 'insertOptions'. If an option is specified, then all options not specified are used with the default values.