'mailstorage' Service
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:
-
Open the administration page of microservices using the URL http://<service-manager-admin-IP>:<port>.
Default port: 7273
- Click EXTRACTION and in the opened line.
- Click the link for the Swagger UI in the line on the top left.
- Select extraction-api from the list in the header.
- Click Expand operations.
- Scroll down to the POST/extraction/api/xmp area and click Browse in the Parameters section.
- Select e-mail element from file system.
- 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.
- If data from the 'extraction' service is not to be transferred.
- If fixed or default values are to be entered in fields.
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.
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:
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:
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.
Opening Filing Locations
Users can optionally have the location opened via enaio® Outlook Add-in NG when attaching an e-mail.
Administrators can predefine how the location is opened or disable this option.
config | |
administrativeTemplates: | |
forceOpenLocationAfterFiling: true |
true: location will be opened automatically. false: unable to open location. |