Messages configuration¶
To receive or send a message by FrontStage, it is necessary to set a gateway which contains parameters needed for external service connection in order to process the message. To set the gateways, open ReactAdmin, section.
Gateways can be divided according to the information flow:
Input - they read the messages
Output - they send the messages
Name |
Input |
Output |
Communication |
---|---|---|---|
X |
|||
X |
|||
X |
X |
||
X |
|||
X |
|||
X |
X |
SMS |
|
X |
X |
SMS |
|
X |
X |
SMS |
|
X |
X |
SMS |
|
X |
SMS |
||
X |
SMS |
||
X |
SMS |
Email gateways¶
DropFolder¶
The DropFolder
device scans the files in the set directory. Files in the directory must be in the EML format with an .eml or .msg extension. The file being processed is renamed to .eml.$$$ and loaded. If successful, it is stored in the database in the Message
table.
According to the recipient (the To
and Recipients
fields), one of the gateways with the corresponding e¨-mail address is selected. All gateways with the DropFolder input device and the same path to the file folder are checked, and the message is assigned to it (the Message.GatewayId
column).
If no matching address is found, the system searches for a gateway with no address (NULL
) and uses it. If it does not find such a gateway, Message.GatewayId
will remain empty.
Attribute |
Description |
---|---|
|
A path to saved EML or MSG files.
|
|
Indicates whether subfolders should be searched (value
|
|
The extension (and therefore the format) of the files being processed.
|
Configuration example:
DropFolder { "FolderName": "C:\\inetpub\mailroot\\Drop" }
Pop3Host¶
The Pop3Host
device gradually contacts all gateways with the Pop3Host
input. When arriving through this gateway, the address is not checked, and all messages from the server are assigned to this gateway.
Attribute |
Description |
---|---|
|
The POP3 server address.
|
|
The port on which the POP3 server provides the service.
|
|
User name for logging in to the POP3 server.
|
|
User password for logging in to the POP3 server.
|
|
The parameter is optional. The default value is
|
|
A possibility to operate the server only once per N cycles. The basic cycle lasts 3 s. If, for example, there is a value of 10, the server will be contacted only once every 30 s.
|
Configuration example:
Pop3Host { "HostAddress":"192.168.0.121", "HostPort":110, "UserName":"test", "Password":"test", "Format":"SMS2N" }
EWSHost¶
“Exchange Web Services” (EWS
) is an API that allows access to Microsoft Exchange server services such as email, calendars, etc.
The FrontStage EWS continuously checks all gateways with this protocol. If it detects an inbound message, the address is not checked, but all messages from the server are directed to this gateway.
Note
Typically used for MS Exchange Server 2010 and later
Attribute |
Description |
---|---|
|
EWS server address.
|
|
The port number on which the remote server provides the service.
|
|
User authentication type. If the parameter is empty, it is evaluated automatically. Possible values:
|
|
You can specify if
|
|
A value indicating after how many cycles the server is checked. The basic cycle lasts 100 ms (if there was no inbound or outbound mail during the previous query, then it is 1 second).
|
|
The folder from which the messages are retrieved.
|
|
The parameter is optional. The default value is
|
|
User name for logging in to the EWS server.
|
|
User password for logging in to the EWS server.
|
The following parameters must be specified for |
Important To make it work with |
Important
The OAuth20 authentication requires more complex settings on the server side; the CCG (Client Credential Grant) method is always used within FrontStage
You can modify the connector behavior using the DeleteDropFileAfter
parameter, which can be found in the administration section .
Configuration example:
EWSHost { "HostAddress":"outlook.office365.com", "UserName": "test05@frontstage.cc", "Password":"XXX", "Throttling": 5 }
SmtpDirect¶
The SmtpDirect
device sends SMTP protocols directly to target servers using MX records or the IIS pickup folder.
Important
The From
and Sender
fields of the message are filled in according to the gateway address, regardless of which agent sent the message.
Attribute |
Description |
---|---|
|
If the |
|
If IIS is used, it is possible to optionally enter the address of the so-called pickup folder, from where IIS takes the messages to be sent.
|
|
Specifies the maximum number of messages sent per batch when batch sending is applied using campaigns and bulk messages. |
|
A pause between two individual messages sent during batch sending using campaigns and bulk messages.
|
Configuration example:
SmtpDirect { "HostAddress":"IIS", "FolderPath":"C:\\inetpub\\mail\\pickupfolder" }
SmtpHost¶
The SmtpHost
device sends all messages through this gateway to a specific SMTP server (smart host), which then handles them further.
Important
The From
and Sender
fields of the message are filled in according to the gateway address, regardless of which agent sent the message; this can change the message format (Format
parameter).
Attribute |
Description |
---|---|
|
An SMTP server address.
|
|
The port on which SMTP provides services.
|
|
User name for logging in to the SMTP server.
|
|
User password for logging in to the SMTP server.
|
|
Optional. Possible values:
|
|
Message format.
|
|
Specifies the maximum number of messages sent in one batch when batch sending is applied using campaigns and bulk messages.
|
|
A pause between two individual messages sent during batch sending using campaigns and bulk messages.
|
|
Enables the sending of delivery information (if the target mail server allows it).
|
|
Require a confirmation that the e-mail has been read (if the destination mail server allows it).
|
Configuration example:
SmtpHost { "HostAddress":"192.168.0.121","HostPort":25,"UserName":"test","Password":"test", "Format":"SMS2N","DeliveryStatusNotifications":true;"RequestReadReceipt":true }
SMS gateways¶
MaternaConnect¶
The MaternaConnect
device allows you to send and receive SMS via MATERNA Communication’s AWEG (AnnyWay Enterprise SMS Gateway) service.
Attribute |
Description |
---|---|
|
The URL for AWEG to confirm receipt of SMS in which |
|
The URL for AWEG for sending SMS in which |
|
The URL for AWEG for receiving SMS in which |
|
AWEG account username. |
|
AWEG account password. |
|
Recipient number format. |
Configuration example:
MaternaConnect { "ConfirmSMSUrl":"https://aweg3.maternacz.com/longtime?auth={0}:{1}&ack={2}:{3}", "SendSMSUrl":"https://aweg3.maternacz.com/?auth={0}:{1}&use_anumber=1&receiver={2}&report=1&smstext={3}", "ReceiveSMSUrl":"https://aweg3.maternacz.com/longtime?auth={0}:{1}&{2}", "UserName":"XXX", "Password":"XXX", "NumberFormat": "External"}
T-Mobile EMIConnect¶
EMIConnect
gateway for sending and receiving messages provided by the T-Mobile operator.
Attribute |
Description |
---|---|
|
service URL address provided by the operator |
|
connector port |
|
user ID from the connector provider system |
|
User password belonging to ID mentioned above |
|
sender number (will be displayed to the receiver) |
|
reading confirmation ( |
|
verification token |
|
pause span after sending one message [ms] |
|
accepted phone number format |
Configuration example:
EmiConnect {
"HostAddress":"66.150.1.171",
"HostPort":6008,
"UserName":"SomeUser",
"Password":"SomePassword",
"FromNumber":"439385645",
"Notification":true,
"AccessToken":"CUST",
"Throttling":1000,
"NumberFormat":"Gsm"
}
O2 connector¶
O2Connect
gateway for sending and receiving messages provided by the O2 operator.
Attribute |
Description |
---|---|
|
service URL address provided by the operator |
|
a part of the URL address called to verify the message sending, contains macro expansions, it’s appended to the |
|
a part of the URL address called to send the message, contains macro expansions, it’s appended to the |
|
a part of the URL address called to receive the messages, contains macro expansions, it’s appended to the |
|
user ID from the connector provider system |
|
User password belonging to ID mentioned above |
|
path to connector certificate (issued by the operator) |
|
sender number (will be displayed to the receiver) |
|
accepted phone number format |
Configuration example:
O2Connect {
"HostAddress": "https://smsconnector.cz.o2.com/smsconnector/getpost/GP",
"ConfirmSMSUrl": "action=confirm&baID={0}&refMsgID={1}&refBaID={0}&fromNumber{2}",
"SendSMSUrl": "action=send&baID={0}&toNumber={1}&fromNumber={3}&msgID={4}&text={2}&multipart=true",
"ReceiveSMSUrl": "action=receive&baID={0}",
"UserName": "SomeName",
"Password": "SomePassword",
"SMSConnectorCertFilePath": "SomePath",
"FromNumber": "+420879666341",
"NumberFormat": "Gsm"
}
HgcA2PConnect¶
HgcA2PConnect
gateway for sending and receiving messages provided by the HGC operator. Usable in Philipines. Supports “e164” phone number format, for example: 420725129205
(without the plus sign).
Attribute |
Description |
---|---|
|
service URL address provided by the operator |
|
the URL address for loading the received messages from the operator to the FronStage, contains macro expansions |
|
the URL address for verifying the communication |
|
user ID from the connector provider system |
|
User password belonging to ID mentioned above |
|
sending number configuration, parameter provided by the operator |
|
the parameter value provided by the operator |
Configuration example:
HgcA2PConnect { "SendSMSUrl": "https://api.hgc.com.hk/messaging/v3/sms", "ReceiveSMSUrl": "https://api.hgc.com.hk/a2p/message-report/v2/status/sms?date_from={0}&date_to={1}&page={2}&size={3}&sms_type=receive", "ReportUrl": "https://api.hgc.com.hk/auth/token", "UserName": "SomeUser", "Password": "SomePassword", "FromNumber": "HGC", "ClientID": "1039c9ee-11fd-4d66-91f2-469bf0db3e75" }
BridgeConnect¶
The BridgeConnect
device sends all messages through this gateway via the REST API to a standardized SMS connector.
Attribute |
Description |
---|---|
|
URL of the REST service for sending messages.
You can use the following placeholders in the URL:
|
|
The username by which the service logs in to the REST server using the BASIC authentication (401 Challenge method).
If the username is prefixed with Another option is to specify the term |
|
User password for the BASIC authentication.
|
|
An HTTP request method.
|
|
Indicates whether the phone number should be standardized and in what format.
|
|
The time to pause after each message is sent.
|
|
The maximum number of characters in the SMS for the given gateway. |
Configuration example:
BridgeConnect { "SendSMSUrl": "http://localhost:60600/webapp/SMS/{2}/45678/{0}", "SMSConnectorBaID":"POST", "UserName": "SSPI" }
FPT Connect¶
The FptConnect
device allows sending SMS via the FPT service of “FPT International Telecommunication Company Limited”. Implemented using REST/JSON on the FronStage side.
Attribute |
Description |
---|---|
|
Also referred to as “ClientId”, it will be provided by FPT upon service registration |
|
Also referred to as “ClientSecret”, it will be provided by FPT upon service registration |
|
URL address of the SMS sending service. We distinguish two types of service - for national phone numbers (ext. manual Section 3.2.1) and international phone numbers (ext. manual Section 3.3.1) |
|
URL address of the authentication service (ext. manual Section 3.1.1) |
|
Also referred to as “BrandName”, in our case the |
|
The value is a constant |
|
when |
Important
Configuration example:
FptConncet {"ClientID": "ActualID","Password": "XXX","SendSMSUrl": "https://api01.sms.fpt.net/api/push-brandname-otp","ReportUrl": "https://api01.sms.fpt.net/oauth2/token","SMSConnectorBaID": "FTI","NumberFormat": "Raw"}
Datasys MobileChange¶
MobilChange
gateway for sending messages provided by the Datasys company.
Attribute |
Description |
---|---|
|
user ID from the connector provider system |
|
User password belonging to ID mentioned above |
|
service URL address provided by the operator |
Configuration example:
MobilChange {
"smsUser": "SomeUser",
"smspassword": "SomePassword",
"wsUrl": "http://s88mbcas33.srv.atl.cz/MxWebServices/Services.asmx"
}
Automatic signatures and default template¶
Default template¶
When creating a new e-mail, e.g. with the navigation button in the issue editor, or using a URL without a pattern, the created message is empty and, therefore, does not contain any formatting or styling.
If you need something other than a completely blank HTML e-mail message, you need to create a template. You then set its ID in the configuration parameter DefaultEmailTemplateId
. This template will always be used when creating a new e-mail message.
For example, if you want each message to have the same CSS, specify the following in the default template (when editing in the HTML mode):
<style>
body { color: black; }
p { margin: 0 }
<!-- ... -->
</style>
When using the template, actual values will replaced placeholders. Any attachments are ignored (not used in a new message).
Automatic signatures¶
When manually replying to or forwarding a message (especially an e-mail message), the system can insert a specific signature and delimiter of the original message.
The signature is inserted from the template; to enable the mechanism it is necessary to fill in the EmailSignatureTemplateMask
configuration parameter . The content of the parameter is a LIKE mask of the name of the templates that will be considered during the selection. A typical value is Signature%
, so all templates whose name starts with “Signature” will be considered. The selection of a specific template is made according to the criteria of compliance of the following parameters:
Agent - weight of 5
Gateway (the “From” field in the template) - weight of 3
Language - weight of 2
Project - weight of 1
Team – weight of 1
The template with the highest match score between the template and the message being answered is selected for signature. If a parameter is not filled in the template, it is neutral; if it is filled in and it differs from the value in the message, the template is excluded. In general, it can be said that the most specific template that meets the criteria is always selected.
Example: There are two templates with different languages; the one that has the same language as the message being answered will be selected.
When using the template, actual values will replace placeholders and attachments, if any, will be inserted.
E-mail communication separators¶
The separator allows the standard header of the original message to be inserted and is specified in the OriginalEmailSeparator
configuration parameter. This parameter is global and affects all e-mail gateways defined with the system.
The text of the parameter is directly the HTML code, which is inserted after any signature and before the original message; it can contain the following placeholders:
{0}
- The original “From” field{1}
- The time when the original message was received (.NET formatting can be used){2}
- The original “To” field{3}
- The original “Cc” (Copy) field{4}
- The original “Subject” field
Example: <br><hr>From: {0}<br>Sent: {1}<br>To: {2}<br>Cc: {3}<br>Subject: {4}<br>
.
Note
Alternatively, placeholders can be included directly in the signature template.
Placeholders¶
A placeholder is a piece of text that is replaced with an actual value when the template is used. For example, the string $AgentName$
is replaced by the name of the current agent, etc.
Templates can be used in the following situations:
Manually insert a template into the message
Automatic signature for a manual reply
Default new message template (DefaultEmailTemplate)
Automatic reply (IMR, Reply node)
Automatic message (WF, EmailQuestion, SmsQuestion nodes)
Paging message (WF, SmsPaging node)
Voice message (IVR, RecordAndSend node)
The available placeholders for message templates are the following:
Mark |
Result |
---|---|
|
The agent’s name from the administration. 1 |
|
The agent’s name from the administration without diacritics. 1 |
|
The agent’s name from the administration. Their last name and first name are swapped. 1 |
|
The agent’s name from the administration without diacritics. Their last name and first name are swapped. 1 |
|
The team’s name from the administration. 1 |
|
The team’s name from the administration without diacritics. 1 |
|
The agent’s description in the administration. 1 |
|
The agent’s description from the administration without diacritics. 1 |
|
The parameter value of the given node. 2 |
|
The value of the caller’s number of the given node. 3 |
|
GUID of the message into which the item is inserted. 4 |
|
The value from the ResultText field of the dataset of the associated form. |
|
The value from the ResultNumber field of the dataset of the associated form. |
|
The value from the ResultNumeric field of the dataset of the associated form. |
|
The value from the ResultTime field of the dataset of the associated form. Date and time format. |
|
The value from the ResultTime field of the dataset of the associated form. Date and time format. |
|
The value from the ResultTime field of the dataset of the associated form. Only the time format. |
Table notes
- 1
ProServer – The client applications that use SimProt Message to communicate among themselves must always communicate with one ProServer (typically iCC.ServiceSycn+iCC.WebClient+iCC.WebSite)
- 2
Only for automatic replies (IMR Reply node) or CSV and ETL import
- 3
Only for the voice message node (RecordAndSend) and the node sending the SendEmail message from the IVR.
- 4
Only for manual template insertion; template insertion by the IMR InsertTemplate node and CSV and ETL import
Associated forms¶
Different forms are considered to be an associated form for placeholder purposes according to the following situation:
Manual template insertion in the message - controlled by the configuration parameters
TemplateExpandAttachedForms
,TemplateExpandContact
,TemplateExpandIssue
Automatic signature for manual response - controlled by the configuration parameters:
TemplateExpandAttachedForms
,TemplateExpandContact
,TemplateExpandIssue
Default new message template (
DefaultEmailTemplateId
) – řídí se konfiguračními parametryTemplateExpandContact
,TemplateExpandIssue
; associated scenarios cannot be usedAutomatic reply (IMR, nodes
Reply
andInsertTemplate
) - a form associated with the IMR message scriptAutomatic message (WF, nodes
EmailQuestion
,SmsQuestion
) - a WF form from which the message is createdPaging message (WF,
SmsPaging
node) - a WF form from which the message is createdVoice message (IVR,
RecordAndSend
node) - a form associated with the IVR call script
If the inclusion of the form is controlled by configuration parameters (true/false = yes/no):
TemplateExpandIssue
– the main form of the issue associated with the messageTemplateExpandContact
– the main form of the contact associated with the messageTemplateExpandAttachedForms
- all forms that have the MessageId of the message in question in ScenarioResult; be careful with the automatic signature when replying as the forms attached to the original message to which the reply is made will be used
The form fields are searched in this order; therefore, if a duplicate field occurs, the first one found is used, i.e. first from the Issue, then from the Contact and then from the attached forms.
Permissions¶
Message-related permissions are the following: