since 3.3.42
Table of Contents |
---|
Info |
---|
Please refer to the Pre-Processing Task page for setting up and configuring Pre-Processing Tasks: How To Use Pre-Processing Tasks |
After enabling Script Task, return to the profile configuration page and select the edit (pen) icon for Script Task.
...
Pre-Processing Scope : Headers Only
Pre-processing only currently applies to Headers, not the body content, owing to the encoding complexities therein. If this is of interest, please reach out to support@thepluginpeople.com.
Configuration
The edit icon launches the pre-proc script editor.
...
Evaluates the Header Script against the selected Test Case. The result of the script test will be shown below the existing form.
Example:
Matching Headers:
Code Block |
---|
subject,x-subject |
Script:
Code Block |
---|
var subject = headerBeans.get('subject').getOriginalVal(); var hdr = jemhUtils.addPreProcHeader("x-subject", "NEW "+subject); print('new header: '+hdr.getUpdatedVal()); headerBeans.put("x-subject", hdr); |
...
Affected Headers will show changes and additions:
...
Preview Context
This section is to explain what context keys are in the Script Pre-Processing task. Also explains what they are used for when making a script.
Note |
---|
Currently three of the context keys are not working and are showing a console error. The three context key’s that are not working are Body, Subject and Related Issue. |
Key | Class | Description |
---|---|---|
allAddresses | Array of all addresses in the email | |
baseUrl | Jira application URL. For example | |
bccAddresses | Array of all addresses in Bcc header in the email | |
body | Email content from the body of the email | |
ccAddresses | Array of addresses from the Cc header in the email | |
commentManager | Creates or removes Jira comments in the given Issue | |
context | Map of all context keys and all related context items | |
customFieldManager | Manages Custom fields and their values | |
fromAddress | Sender address of the email | |
groupManager | com.atlassian.jira.security.groups.RequestCachingGroupManager | Manages Atlassian’s groups and it’s members |
headerBeans | Header values from the email for example the Sender address and subject | |
issueLinkService | Creates Issue links between Jira issues | |
issueManager | com.atlassian.jira.issue.managers.RequestCachingIssueManager | Provides a number of methods for managing Jira Issues |
jemhUtils | com.javahollic.jira.emh.service.DefaultJEMHVelocityContextUtils | Provides a range of scripting utils including managed of headers shown on this page |
jemhVersion | The installed version of JEMH | |
log | Allows output into the JEMH log | |
message | The Email being processed | |
projectRoleManager | Manages the project roles of the sender | |
relatedIssue | The Issue that is being commented on (null if creating a new Issue) | |
remoteIssueLinkService | com.atlassian.jira.bc.issue.link.DefaultRemoteIssueLinkService | Creates Remote Issue Links that are used in external for example in a third party helpdesk |
searchService | Provides functionality related to searching in Jira using JQL. For example query string generation, parsing and validation | |
senderUser | The Jira User associated to the From address | |
subject | The subject of the email | |
toAddresses | Array of all addresses in the To header of the email | |
userManager | Manages Jira Users on the instance | |
userPropertyManager | Manages all of the Property sets that are associated with Jira users | |
userSearchService | com.atlassian.jira.bc.user.search.DefaultUserPickerSearchService | Provides search functionality for Jira User e.g. |
watcherManager | Allows watches to be added/removed from the Jira Issue |
Changing Headers
Example Test Case
...
Method | Used for | Example | ||
---|---|---|---|---|
jemhUtils.getOriginalAddressees() | Retrieving To/Cc/Bcc/From/Delivered-To Header Values | Retrieving addresses from a specific header to compare against or edit:
| ||
jemhUtils.updatePreProcHeader() | Updating To/Cc/Bcc/From/Delivered-To Header Values | Updating the Sender From address:
| ||
headerBeans.remove(“cc”) | Removing Headers | Removing unwanted Cc address:
| ||
jemhUtils.createInternetAddress(“nn”) | Creating a new Recipient to add to Header | Inserting a Bcc header:
| ||
aHeaderBean.getOriginalVal() | Non-Recipient Header values | Retrieving the Subject Header:
| ||
aHeaderBean.setUpdatedVal(“nnnn”) | Non-Recipient Header values | Changing the Subject Header:
|
Body Script
...