Versions Compared

Key

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

Problem

As a project manager or another user with a specific role in the project, you must notify other users by email about new issues or changes in the issue fields. In addition, these emails shouldn’t be automatically sent because not all new issues or changes require an email notification.

You can use Power Actions™ to create and send emails to all or certain project membersWhen using listeners it is often required that the listener responds to specific events only. The most common ways to filter these events are by the project the issue belongs to and the issue type for the issue.

Solution

To solve this problem, use a Power Actions™ custom field that creates an email based on a template, and sends it to the selected recipientsthe listener configuration within Power Scripts has settings which can be used to specify when the filter should fire based on project and issue type.

Step 1: Create a new

Power Actions™ Custom Field

First, create a new Power Actions™ custom field following the instructions below:

  • Go to the Administration page.

  • In the Issue section, click Custom Fields.

    listener

    1. Navigate to the listeners configuration page by going to Power Apps Config > Power Scripts > Listeners

    2. Click the Add Custom Field button in the upper-right corner to add a new custom field.

    3. Select the Power Actions™ Custom Field option. Click Next.

    4. Rename the new custom field to Email Issue.

    5. Selectyourapplicable issue types and context to view the new custom field only on certain issues and projects. By default, the custom field is visible in global context.
    6. Click Finish.

    7. listener button

      Image Added

    Step 2: Configure

    your Power Actions™ Custom Field
    1. To configure the Email Issue custom field, select the cog icon on the right.

    2. Go to the Custom Fields page to find your Email Issue custom field.

    3. Click Configure.

    4. To create a button that triggers the email sending action, go to the Buttons section at the bottom of the page. Click the Edit Buttons link.

    5. Click Add New Power Actions™ and enter Send Email as button text. Click Add.

    6. Five links for this button are now displayed on the right of the page. The first three are the SIL™ scripts that control it. They are:

      • The Condition Script script. It contains the condition for the button visibility. The default value is visible (the user can see and click this button).

      • The Screen Script script. It allows you to determine if the email sending action requires additional data.

      • The Action Script script. It sends the email you want to the specified email addresses.

    Step 3: Configure the Power Actions™ Screen Script

    To send the email, you need to configure the Power Actions™ Scripts.

    Info

    The Condition Script can be configured to prevent certain users to send the emails. For more information, go to the Condition Script page.
    The Screen Script is used to display a message to confirm the email sending action. This is a security measure to prevent an accidental click of this button.

    To edit the script, click Screen Script on the Configure Email Issue page. Then enter the following code:

    Screen Script
    Code Block
    string[] ret;
    ret = BA_createInput("Message", "You are about to send a email message to all members of this project.", true);
    return ret;

    This code displays a read-only message.

    Step 4: Configure the Power Actions™ Script

    The Action Script sends the email to the specific users.

    To edit the Action Script, click Script on the Configure Email Issue page. Then enter the following code:

    Action Script
    Code Block
    string[] to = projectMembers(project);
    string[] cc;
    string subject = "JIRA Email Issue: " + summary;
    string template = "template.tpl";
    string language = "en_US";
    print(attachments);
    if (sendEmail(userEmailAddress(currentUser()), to, cc, subject, template, language, attachments))
    {
     return "The email has been sent succesfuly";
    }
    else
    {
     return "An error occured when sending the email.";
    } 

    This code sends a template email to all the project members including the current user. For more information on sending an email using SIL™, go to the sendEmail page.

    Because an email template was used in the previous code, create and use this template renamed to template.tpl.

    Step 5: Build the email template

    After the plugin installation, a new Kepler General Parameters option is displayed.

    Go to the option and select the katl-commons plugin from the Select plugin list.

    A configuration Email Template Directory indicates the folder where the templates are stored. The directory path is relative to jira.home.dir/kepler. The rest of the email configuration is extracted from the standard JIRA configuration (you can find this at Administration > Mail Servers > SMTP Mail Server).

    You can create a new template in this folder using your preferred text editor. You can add certain issue field values to the template by using the $field$ notation, where field is the field name you want to enter into the text. Here is an example:

    Email Template
    Code Block
    Hello $recipient$,
     
    This is a test template sent from $assignee$'s issue $key$. The summary for this issue is: $summary$.
    This issue has the following fields:
    
     Type : $type$
     Priority : $priority$
     Labels : $labels$
     Status : $status$
     Resolution : $resolution$
    
     $key$ is described as follows: 
     $description$
     
    This issue was created on $created$ and updated on $updated$. It's due date is: $dueDate$. The assignee is $assignee$ and the reporter is: $reporter$.
    
    Best regards,
    $reporter$
    
    This email was automaticaly generated by the JIRA Blitz-Action plugin:
    https://marketplace.atlassian.com/plugins/com.keplerrominfo.jira.plugins.blitz-actions
    or
    http://jira-plugins.kepler-rominfo.com. 
    Please do not reply.
    Info

    Email Templates

    For more information, go to the Email Templates and the Mail Configuration pages.

    Test

    You can now test this custom field by going to the issues you have selected in the first step of this recipe.

    Theissue view displays the Send Email button:Image Removed

    Click the Send Email button and confirm your email:

    Image RemovedClick Execute to send the email.

    the listener

    1. After selecting a script for the listener, choose the event the listener should respond to. Only issue specific events like Issue Created, Issue Updated, etc. can then be filtered by project and issue type.

      Image Added

    2. After selecting an issue specific event the input form will update with the new controls for filtering:

      Image Added

    3. The project and/or issue type filters can then be applied:

      Image Added

    Table of Contents

    Table of Contents