Difference between revisions of "Smtp-call"

From GreenVulcano Wiki
Jump to: navigation, search
(How To)
({{VULCON}} / {{GVCONSOLE}} Configuration)
Line 6: Line 6:
  
 
The smtp-call Element is used by [[Channel]], [[routed-call]]. Its attributes are:
 
The smtp-call Element is used by [[Channel]], [[routed-call]]. Its attributes are:
* ''type'': call.
+
{|class="gvtable"
* ''class'': it.greenvulcano.gvesb.virtual.smtp.SMTPCallOperation.
+
! Attribute !! Type !! Description
* ''name'': Operation name. Used in the [[Flow]] section to associate workflow nodes to VCL operations.
+
|-
* ''jndi-name'': JNDI name of the mail Session configured in the application server.
+
| type || fixed || This attribute must assume the value '''call'''.
* ''override-protocol-host'': Corresponds to the property mail.protocol.host and overwrites the value of property mail.host specified in the configuration of the mail Session.
+
|-
* ''override-protocol-user'': Corresponds to the property mail.protocol.user and overwrites the value of property mail.user specified in the configuration of the mail Session.
+
| class || fixed || This attribute must assume the value '''it.greenvulcano.gvesb.virtual.smtp.SMTPCallOperation'''.
* ''message-id-property'': GVBuffer defines the properties that will contain the MessageID of the message sent. Default to ''MessageID''.
+
|-
 +
| name || required || Operation name. Used in the [[Flow]] section to associate workflow nodes to VCL operations.
 +
|-
 +
| jndi-name || required || JNDI name of the mail Session configured in the application server.
 +
|-
 +
| override-protocol-host || optional || Corresponds to the property mail.protocol.host and overwrites the value of property mail.host specified in the configuration of the mail Session.
 +
|-
 +
| override-protocol-user || optional || Corresponds to the property mail.protocol.user and overwrites the value of property mail.user specified in the configuration of the mail Session.
 +
|-
 +
| message-id-property || optional || Defines the properties that will contain the MessageID of the message sent. Default to ''MessageID''.
 +
|}
  
 
It has the following subelements:
 
It has the following subelements:
Line 23: Line 33:
  
 
This subelement defines the properties of the message. It is used by ''smtp-call'' and its attributes are:
 
This subelement defines the properties of the message. It is used by ''smtp-call'' and its attributes are:
* ''sender-display-name'': defines the display name of sender.
+
{|class="gvtable"
* ''subject'': The subject of the email. <br/> You can enter gvBuffer values using the following syntax:
+
! Attribute !! Type !! Description
** for standard fields
+
|-
** ${system}
+
| sender-display-name || required || defines the display name of sender.
** ${service}
+
|-
** ${id}
+
| subject || required || The subject of the email. <br/> You can enter gvBuffer values using the following syntax:
** ${object}
+
* for standard fields
** ${retCode}
+
* ${system}
** for properties
+
* ${service}
** ${property['nome']}
+
* ${id}
* ''content-type'': Email content-type. <br/> The attribute's admitted values are:
+
* ${object}
** text-plain
+
* ${retCode}
** text-html
+
* for properties
* ''high-priority'': The priority of the mail. <br/> The attribute's admitted values are:
+
* ${property['nome']}
** true
+
|-
** false
+
| content-type || required || Email content-type. <br/> The attribute's admitted values are:
 +
* text-plain
 +
* text-html
 +
|-
 +
| high-priority || optional || The priority of the mail. <br/> The attribute's admitted values are:
 +
* true
 +
* false
 +
|}
  
 
Its subelements are:
 
Its subelements are:

Revision as of 21:05, 9 February 2012

Description

GreenVulcano® ESB plugin for sending emails.

VulCon / GV Console Configuration

The smtp-call Element is used by Channel, routed-call. Its attributes are:

Attribute Type Description
type fixed This attribute must assume the value call.
class fixed This attribute must assume the value it.greenvulcano.gvesb.virtual.smtp.SMTPCallOperation.
name required Operation name. Used in the Flow section to associate workflow nodes to VCL operations.
jndi-name required JNDI name of the mail Session configured in the application server.
override-protocol-host optional Corresponds to the property mail.protocol.host and overwrites the value of property mail.host specified in the configuration of the mail Session.
override-protocol-user optional Corresponds to the property mail.protocol.user and overwrites the value of property mail.user specified in the configuration of the mail Session.
message-id-property optional Defines the properties that will contain the MessageID of the message sent. Default to MessageID.

It has the following subelements:

mail-message

This subelement defines the properties of the message. It is used by smtp-call and its attributes are:

Attribute Type Description
sender-display-name required defines the display name of sender.
subject required The subject of the email.
You can enter gvBuffer values using the following syntax:
  • for standard fields
  • ${system}
  • ${service}
  • ${id}
  • ${object}
  • ${retCode}
  • for properties
  • ${property['nome']}
content-type required Email content-type.
The attribute's admitted values are:
  • text-plain
  • text-html
high-priority optional The priority of the mail.
The attribute's admitted values are:
  • true
  • false

Its subelements are:

  • destinations,
  • message-body,
  • attachments,
  • Description

destinations

This mail-message subelement contains the list of mail recipients.

It has the following attributes:

  • Description
  • to: Contains the list of recipients of the email. Is overwritten by the value of the GVBuffer property GV_SMTP_TO.
  • cc: Contains the list of recipients in knowledge of the mail. Is overwritten by the value of the GVBuffer property GV_SMTP_CC.
  • bcc: Contains the list of recipients in hidden knowledge of the mail. Is overwritten by the value of the GVBuffer property GV_SMTP_BCC.

Every attribute (to, cc and bcc) has the subelements:

  • Description
  • mail-address(es): containing the email address of a recipient. The address value is setted in its attribute:
    • address

message-body

The subelement message-body defines the message body of the email. It is used by mail-message.

It has the following attributes:

  • gvBuffer-dump: If true, the GVBuffer dump will be included in the message body. Default: false.
    The attribute's admitted values are:
    • false
    • true

It has as subelements:

  • Description
  • message-text (see bellow)
message-text

This element contains the message of the email. You can enter gvBuffer values using the following syntax:

  • for standard fields
  • ${system}
  • ${service}
  • ${id}
  • ${object}
  • ${retCode}
  • for properties
  • ${property['nome']}

Its attribute escape-HTML-in-gvBuffer-fields allows you to specify whether, when replacing the placeholders for the fields of GVBuffer, any invalid characters for XML/HTML should be replaced with the corresponding entity. Default to 'true'.

attachments

Use this mail-message subelements to define the list of attachments of the email. It is overwritten by the value of the GVBuffer property GV_SMTP_ATTACHMENTS.

It has the following attributes:

  • Description
  • file-attachment
  • gvBuffer
file-attachment

Use this element to define the file to attach to the email.

It has the attribute path where you can set the path of the file to attach. The attribute's value can't be null.

gvBuffer

Use this element if you want to attach at the email the GVBuffer contents.

It has the attribute name with which you can define a name of the attachment containing the GVBuffer contents. The attribute's value can't be null.

How To

For inserting a smtp-cal using VulCon® you must right click the element Channel where you are configuring your Flow plugins. Then Insert after (or Insert before) and select smtp-call from the expanded list.

Then you can add a mail-message element where you can set, using more subelements, the destinations, the message body and the attachments if required.

smpt-call SendEmail

The following picture shows a smtp-call element named SendEmail already configured:





The Service EmailFileAttachment which use this plugins must be set as:

<Service group-name="DEFAULT_GRP" id-service="EmailFileAttachment" service-activation="on" statistics="off">
        <Operation name="RequestReply" operation-activation="on" out-check-type="sys-svc-id" type="operation">
             <Participant id-channel="TEST_CHANNEL_FILE" id-system="GVESB"/>
                 <Flow first-node="list_files" point-x="21" point-y="38">
                     <Conditions/>
                     <GVOperationNode class="it.greenvulcano.gvesb.core.flow.GVOperationNode" .../>
                     <GVNodeCheck class="it.greenvulcano.gvesb.core.flow.GVNodeCheck" ...>
                          <GVRouting condition="FilesFound" next-node-id="prepare"/>
                     </GVNodeCheck>
                     <ChangeGVBufferNode class="it.greenvulcano.gvesb.core.flow.ChangeGVBufferNode"
                                dump-in-out="true" id="prepare" input="files" next-node-id="send_email"
                                op-type="change GVBuffer" output="files" point-x="225" point-y="302" type="flow-node">
                            <ChangeGVBuffer clear-data="false">
                                <OGNLScript>property[&apos;GV_SMTP_ATTACHMENTS&apos;] = 
                                            property[&apos;GVFM_FOUND_FILES_LIST&apos;]</OGNLScript>
                            </ChangeGVBuffer>
                   </ChangeGVBufferNode>
                   <GVOperationNode class="it.greenvulcano.gvesb.core.flow.GVOperationNode"
                            dump-in-out="false" id="send_email"
                            id-system="GVESB" input="files"
                            next-node-id="move_files" op-type="call"
                            operation-name="SendEmail" output="files"
                            point-x="384" point-y="309" type="flow-node"/>
                   ....
                   <GVEndNode class="it.greenvulcano.gvesb.core.flow.GVEndNode" .../>
                </Flow>
        </Operation>
</Service>