WebMsg

A message from the web. WebMsg adds to web forms the option to create an incoming message (or task) and further process it with a message module, such as replying to it with an e-mail message.

Important

WebMsg is an application of the WebSite module. Before you can use it, you must install and configure it.

Integration using JavaScript

See also

General information about WebSite application integration using JavaScript.

Applications that are rendered in a visible form use the template (.html extension) and settings (.json extension) files located in the Content folder for their rendering. The default templates have the same name as the application name. A standard script template that has the .js extension is used depending on the type of application in the following ways.

Example of an embedded script.

<script type="text/javascript" src="https://chat.example.cz/scripts/webmsg.js"></script>

When activated, each script passes a set of data to iCC.WebSite to determine what to display to the user in the [WebSiteRouting] activation rules.

Sent in the URL is (as a query string)

  • A name of the required application (webchat, webform, webcback, webmsg) [WebApp]

  • The current time generated in the browser [RegionalTime]

  • If the “icc_user_token” variable exists at the global JavaScript level and the content is a string, the first 120 characters are sent - here the page can set the identifier of the logged-in user [UserToken].

In addition, the following data from the http(s) header is used for the purposes of the conditions:

  • The URL of the Referrer page from which the script is called [PageUrl].

  • A unique anonymous cookie called icc3_TrackingId for the configured domain (e.g. chat.example.cz) [TrackingId]; this cookie is set whenever the browser requests a script.

  • Accept-Language browser language preferences [PreferredCultures]

  • User-Agent browser information [Browser]

In addition, the following items are available for conditions:

  • The IP address from which the script is downloaded [ClientIp].

Caution

All of this information can be spoofed by an attacker and, therefore, cannot be used for authentication purposes.

The script then renders the configured element according to the rules into a new DIV element with absolute positioning or into a DIV with a specific ID if it is configured in the rules and exists on the page.

The following placeholders (if any) are replaced in the scripts (the .js file in the Content folder):

  • ##WebSiteAddress## - Replaced with a text from web.config from the WebSiteAddress parameter.

  • 33669 - It is replaced by a number from web.config in the ApiRoutingTimeOut parameter multiplied by 1000.

Integration using REST API

See also

General information about WebSite application integration using REST API.

API

[POST] ~/api/WebMsg - Sends a request to create an inbound message including the completed form (ResultModel), the MessageId of the created message is returned, the script fields are automatically mapped to Message (the MessageId template according to WebSiteRouting including form expansion):

  • FromField - The sender’s name (it will be composed with RemoteAddress, if specified)

  • RemoteAddress - An e-mail address or phone number (depending on the type of gateway)

  • SubjectField - The message subject (usually the title)

  • BodyText - The message body text (usually a free message text)