Modeling Guide for SAP Data Hub

Receive Email

The Receive Email operator is used to receive emails. The protocol used is IMAP Version 4rev1. The operator will fetch emails automatically if the in port is not connected. When the port is connected, the operator will fetch emails whenever a new entry arrives. The output will be received as single messages, each one related to a single email.

Configuration Parameters

Configuration Parameters
Parameter Type Description
Maximum entries integer The maximum amount of entries the system will fetch. If maxEntries is higher than the mailbox amount of emails, it will only send the emails contained in the mailbox. If maxEntries is smaller than the mailbox occupancy, it will send only the 'maxEntries' newest items

Default: 10

Mailbox string Mandatory: The mailbox from which emails will be retrieved from. This will only be used when in Polling mode.

Default: "inbox"

Poll period integer The poll period (in Milliseconds). Meaning that every 'pollPeriod' seconds, a new email fetch will be done. This will only be used when in Polling mode.

Default: 1000

Only output unread emails boolean When set to true, the system will only output emails that have not been previously read.

Default: true

Connection Parameters
Parameter Type Description
connection object Holds information about connection information for the services.
configurationType string Which type of connection information will be used: Manual (user input), or retrieved by the Connection Management Service

Default: ""

connectionID string The ID of the connection information to retrieve from the Connection Management Service.

Default: ""

connectionProperties object All the connection properties for manual input:
IMAP Server (type string)
Mandatory. The IMAP server where emails will be received from.
Default: "imap.example.com"
IMAP Port (type integer)
Mandatory: The IMAP port number used by the Email Server.
Default: 993
User (type string)
Mandatory. User email from whom messages will be retrieved.
Default: "email@example.com"
Password (type string)
Mandatory. User password.
Default: "123456"
Use TLS (type boolean)
Flag that controls whether the IMAP Server uses TLS or not. If the Server uses TLS and this is set to false or vice-versa, the operator will not work.
Default: true

Input

Input

Type

Description

in

string

This port will inform what mailbox should be fetched. When this port is used, it disables the Polling mode and performs an email fetch for every single entry arriving at this port.

Output

Output

Type

Description

out

message

A message containing the Message Attributes and the Body of an email. The email body can be either in 'plain-text' format or 'HTML' format.

Message Attributes
email.to (type []Address)
The recipient of the email.
email.from (type Address)
The sender of the email.
email.subject (type string)
The subject of the email.
email.cc (type []Adress)
The CC's of the email.
email.date (type time.Time)
The date when the email was received at the server.

Additional Object Information

Address
An object which has two fields, Name(type string) and Address(type string). The Name field is used to describe the name of the person (or entity) that has sent the email, this may be empty. The Address field contains the email which the email was received from, this is always filled.