Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Table of Contents
outlinh1. true
outlinh1. true
1printablefalse
2stylh1. none
3indent20px

Problem

...

  • the The static e-mail configuration in factory.ini is not sufficient
  • A different user must should receive a mail according to the severity level of the message

Solution

It is possible to configure a xslt stylesheet to manipulate the properties of the e-mail in scheduler.xml:
<spooler>

Code Block

  <config '''mail_xslt_stylesheet''' = "config/scheduler_mail.xsl" port = "4050">
    ...
  </config>

</code>
config/scheduler_mail.xsl is the default stylesheet for mail transformation and was shipped with the standard installation.

...

  • see "How to configure an e-mail service" to change the JobScheduler configuration if necessary.
  • Change the sytelsheet for JobScheduler e-mail service to define different recipients for different severity levels as shown below:

    Code Block
    languagexml
    <?xml

...

  •  version='1.0' encoding='iso-8859-1' ?>

...

  • 
    <xsl:stylesheet xmlns:

...

  • xsl = "http://www.w3.org/1999/XSL/Transform" version   = "1.0">

...

  • 
        
       <xsl:

...

  • param name="lang" select="

...

  • 'en'"/> 
        
       <xsl:variable name="job"  select="/scheduler_event/state/jobs/job[ @job = /scheduler_event/@job ]" />
       <xsl:variable name="task" select="$job/tasks/task[ @task = /scheduler_event/@task ]" />
    

...

  • 
       <xsl:template match="/scheduler_event">
          ...
          <xsl:choose>
             <xsl:when test="@severity='info'">
                <xsl:attribute name="to"><xsl:value-of select="'admin@mail.com'" /></xsl:attribute>
             </xsl:when>
             <xsl:when test="@severity='warning'">
                <xsl:attribute name="to"><xsl:value-of select="'admin@mail.com'" /></xsl:attribute>
             </xsl:when>
             <xsl:when test="@severity='

...

  • error'">
                <xsl:attribute name="to"><xsl:value-of select="'admin@mail.com,boss@mail.com'" /></xsl:attribute>
             </xsl:when>
             <xsl:when test="@severity='fatal'">
                <xsl:attribute name="to"><xsl:value-of select="'admin@mail.com,boss@mail.com'" /></xsl:attribute>
             </xsl:when>
             <xsl:otherwise>
                <xsl:copy-of select="mail/header/@to" />
                <xsl:copy-of select="mail/header/@cc" />
                <xsl:copy-of select="mail/header/@bcc" />
             </xsl:otherwise>
          </xsl:choose>
          ...
       </xsl:template>
    

...

  • 
    </xsl:stylesheet>