Version 9.1 - Changes to SMTP functionality

It seems that Metastorm have introduced new features for SMTP functionality in this release.  It also seems that documentation around this is scant, apart from a reference (incomplete) to some new registry entries in the Admin Guide.

 

As seems to be the case when Metastorm add functionality the defaults change so if you are upgrading an existing system SMTP email will cease to work unless you carry out some post installation changes which do not seem to be documented. (This may not apply if you are using a library or other custom component to send email)

 

Those upgrading are recommended to look at the details in the Admin Guide, together with the new registry keys themselves as they include information on options not included in the guide.

Tagged:

Comments

  • The key change underlining this is a finally moving away form the old CDONTS integration and into the .Net SMTPClient.

    New installs of v9.1 will cover the configuration of this however an upgrade will leave default values in place.

    From Metastorm BPM 9.1 Installation Prerequisites:

     

    Email

    For the Process Engine to send email via SMTP, a predefined, existing SMTP server must be
    installed and started on the Engine computer.

    The CDONTS library, which was previously used for sending e-mails via the ‘Send E-Mail
    activity’, has been replaced by .NET SmtpClient. Any currently operational SMTP service as well
    as any existing IIS SMTP Virtual Server are no longer needed for sending email via SMTP.

    From Metastorm BPM 9.1 Administration Guide:

     

    SMTP Mail Settings:

     

    Delivery Method
    Key: HKLM\Software\Metastorm\e-work\Engine\SMTP
    Name: DeliveryMethod
    Type: SZ
    This Specifies how outgoing email messages will be handled. The default value is 'Network'.

     

    Enable SSL
    Key: HKLM\Software\Metastorm\e-work\Engine\SMTP
    Name: EnableSsl
    Type: DWORD
    This determines whether the SmtpClient uses Secure Sockets Layer (SSL) to encrypt the connection.
    The default value is 0. Set the value to 1 to use SSL to encrypt the connection.

     

    Host Name
    Key: HKLM\Software\Metastorm\e-work\Engine\SMTP
    Name: Host
    Type: SZ
    This gets or sets the name or IP address of the host used for SMTP transactions. The default value is 'localhost'.

     

    Host Port
    Key: HKLM\Software\Metastorm\e-work\Engine\SMTP
    Name: Port
    Type: DWORD
    This gets or sets the port used for SMTP transactions. The default value is 25.

     

    Logon using Default Credentials
    Key: HKLM\Software\Metastorm\e-work\Engine\SMTP
    Name: UseDefaultCredentials
    Type: DWORD
    This gets or sets a Boolean value that controls whether the DefaultCredentials are sent with requests.

     

    Pickup Directory
    Key: HKLM\Software\Metastorm\e-work\Engine\SMTP
    Name: PickupDirectoryLocation
    Type: SZ
    This gets or sets the folder where applications save mail messages to be processed by the local SMTP server.

     

    Timeout
    Key: HKLM\Software\Metastorm\e-work\Engine\SMTP
    Name: Timeout (secs)
    Type: DWORD
    This gets or sets a value that specifies the amount of time after which a synchronous Send call times out.
    The default value is 100.

    Note: the the old MailConnector configuration (in HKLM\SOFTWARE\Metastorm\ework\Engine\MailConnector) is still important for imported v7 processes that still use the %Email function.

     

  • Just to be clear, the only changes to the SendEmail capability was to change the implementation from CDNOTS, which is no longer supported, to be native SMTP.  This was at the request by system administrators that were having problems justifying the use of an unsupported technology within their organizations.  This change necessitated the creation of a new set of registry variables, which is documented in the Administration Guide.  The old registry variable located under "\SOFTWARE\Metastorm\ework\Engine\MailConnector" remains for anyone using the older %script implementation, which still uses CDNOTS.

     

    Apoligies if the email changes in 9.1 caused a disruption.  The upgrade should not have required any changes to continue working, but it's always possible we missed your specific scenario.  Can you be more specific on how you setup 9.1 and what changes needed to be made?

  • The issue is that following upgrade the new registry settings are left at their default state which for the Delivery key is Network.  This breaks the sending of email through IIS (and causes an entry to be written in the Metastorm log) which up until now was the out of the box default.  This can be resolved by changing the Delivery key (to use IIS drop folders) and setting the key for the drop folder.  The only documentation for the deliver key options is in the registry itself.

     

    I appreciate that if you use the email library or other custom email sending options this is not an issue but it has been for two of our customers.

     

    IMO this should have been included in the install documentation and release notes and the admin guide should include a list of the options for each key.

     

    It's good that there are more options for sending mail, I just wish that when new features are provided that the default remains the status quo, not a new feature - or that documentation supports the change.

  • I could not agree more. I have pointed this out in a Suggestion but I can no longer find it.

     

    In my view, all new behaviour should be set to the pre-existing state by default. That will cause the fewest problems for all customers. Other features that were not set to the pre-existing default, and thus caused a lot of confusion and additional work, were the time zone adjustment for time fields, and the automatic 'selection' of the first row in a grid.

     

    I would prefer to have to search the release notes for new features when I was interested in them, rather than being forced to examine these notes to enable me to turn off all new features that I did not want enabled, especially those that work contrary to pre-existing features.

  • Thanks for the feedback.  I'll pass this onto the documentation team to enhance the documentation of the registry keys.  Aplologies for any disruption this may have caused.

  • We have a process with user action, that sends email using SendEmail function. When selecting this action, system creates an error record in elog table. I read this post and tried to modify SMTP registry Delivery Method from Network to "c:\inetpub\mailroot\drop" directory, as suggested. After restarting IIS services and metastorm process engine, the metastorm process engine has stopped. Changing back the settings to Network, restarts metastorm process engine.

     

    Any idea?

     

    Thanks in advance.

  • The delivery method should be set to one of the listed options (see registry key but I believe it is along the lines of: IisPickupFolder), then you need to set the value for pickupfolder registry key. Note it should be your pickup folder not the drop folder.

     

    Hope thsi helps.

  • I have changed the value of the delivery method to "SpecificPickupDirectory", then the value of the pickup folder and metastorm process engine restarted successfully. I've tested user action with sendemail function/method and no issues anymore.

     

    Thank you.