enterprise mail handler - atlassian solutions & services · enterprise mail handler for jira...

Post on 25-Jul-2020

11 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Enterprise Mail Handler for JIRA (JEMH)

ANDY BROOK  •    CTO  •    THE PLUGIN PEOPLE  •    ANDY@THEPLUGINPEOPLE

21.06.2017

Agenda● What is JEMH?

● Common Scenarios

● Features!

● JEMH Roadmap

● JEMH vs JEMHC

What is JEMH

Server or Cloud

Customers

Suppliers

Contractors

Agents

Legacy (<= 6.4.x)

Legacy Ticket Systems

Desktop Apps

Mobile Apps

JEMH JEMHC

Integration with JIRA

JEMH In and Out

Issue Update

Interactive User Email Only or Interactive User

Event

JEMH Event Listenerdriven by

Event Listener > Project Mappings

Outbound

JIRA Mail Listenerdriven by

Project > Notification Scheme

JIRA account holder

Email Only User

Calls

Inbound

JEMH Mail HandlerUsing given Profile

Email

JIRA Mail Service

Polls

Process Email, Update issue Generates Event

Email Email SMS Hipchat ...

JEMH and JIRA (including JSD) are peers for JIRA user event notification, if they are both configured for a project, duplicate notifications will occur.

Common Scenarios

Participation level (JIRA)

JIRA Users

Email Only Users

JIRA Users

Email Only Users

Your Support and Internal Customers Your Support and Everyone Else Your Support, Internal Customers and Everyone Else

JIRA Users

JEMH JEMH JEMH

and/or and/or

Participation level (Service Desk)

JSD Agents

Email Only Users

JIRA Users

Email Only Users

Portal Users

JSD Agents

Your Support and Internal Customers Your Support and Everyone Else

Portal Users

Your Support, Internal Customers and Everyone Else

JEMH JEMH JEMH

and/or and/or

Transports other than Email

HipChat

SMS

Slack (JEMHC only)

Pluggable User Properties Addon(PUP)

Filter to only blockers

Notify User Rooms rather than Email!

We are an equal opportunities vendor!

3rd Party delivery providers

Features

Automate routing and manipulate issues

● Automatically Map mail to Projects with Rules

● Field Extraction to Custom Fields

● Directives

AAA

BBB

CCC

Sender email d

omain

Subject keyword

Group membership

biz importance : non-criticalbiz cateogry : gemini

The comment

priority : minorcomponents : gemini

The comment@priority=bocker@issueType=task@components=this,that,other@labels,this-thing,that-thing

Automate creation and Translate data

● Content Cleanup● Icon Removal

● Value Extraction to Custom Fields

● Directive Aliasing

- JIRA images

- Signatures

- Replied to content

System Notice:

Responsible party: BillBusiness-impact: 10

Description: we need to..…………………….

Importance = must haveProject Stream = grand-slam

priority = blockercomponents = grand-slam

System Notice:

Responsible party: BillBusiness-impact: 10

Description: we need to..…………………….

JEMH primary notification methods

● Event Listener ● Workflow Postfunction

● Ad hoc notifications

Ad hoc editor improvements● New TinyMCE editor, enabling:

HTML editing of post-rendered Ad hoc TemplateSets

Image pastes

Insertion of post-rendered ‘canned response’ with Scriptlets

Upload local attachments, or pick Issue attachments (right), TODO: Static Resources

Spell-check with configurable languages (below)

Ad hoc scriptlets (rich canned responses)1) A Scriptlet Template (refers Static Resource #4 – see later) 2) A scriptlet Previewed

3) Picked via Insert > Template 4) Injected scriptlet for further editing 5) The received email, WYSIWYG

Customizing notifications

● Template Sets● Velocimacros

● Design time preview ● Use templates in Ad hoc notifications, preview too

Project Mappings

● One Profile, many mappings

● Rule match strategies, firstMatch or rulePriority

● Rule level tailoring

Enterprise Mail QueueJEMH

New Integrations

Event Listener

Project Mapping for AAA Digesting Queue

ScheduledDelivery

Database

JEMH Roadmap

JEMH Feature Roadmap● Responsibility Devolution ● Profile to Project Mapping migration

Optimizing

Mail Handling

Reduce mailbox polling to scaleJIRA InboundMail Server

JIRA InboundMail Server

JIRA InboundMail Server

AAA

ZZZ

<aaaa@domain.com>

<bbbb@domain.com>

<cccc@domain.com>

JEMH Profile :Project Mappings

JEMHMail Handler

JIRA InboundMail Server

AAA

ZZZ

JEMH Profile :Project Mappings

JEMHMail Handler

JEMH Profile :Project Mappings

JEMHMail Handler

<aaaa@domain.com>

<bbbb@domain.com>

<cccc@domain.com>

● 1:1 ratio between mailboxes and mail handers is fine for small numbers of mailboxes, it won't scale. Mailboxes are polled sequentially, so will only get slower

● Mulitple inbound mailserves can drive individual mail handlers that in turn use a common Profile, to save configuration overhead

● Arranging for all required mail to be in one physical mailbox (eg through Aliases or serer side re-routing) allows one inbound mailserver, one mail handler, one Profile ; this enables JEMH to demultiplex all mail to all mapped projects

● Every single mailbox poll will then retreive and process all mail

JEMH & JEMHC

Major differences

JIRA Server + JEMH JIRA Cloud + JEMHC

● Is older, more established, features more fleshed out

● Is scalable through JIRA Data Center

● High volume (messages/data) scenarios

a)Your instance has unlimited (theoretical) storage

● JEMH is in-VM so:

a) can work with the rich Issue Event model of JIRA

b) has access to all JIRA internal API's, eg workflow

● Is newer, some features are missing/not yet implemented

● Low-Medium volume (messages/data) scenarios

a) JIRACloud is limited to 25GB storage total (ever) for <500users, 100GB for 500+ users. JEMHC has ‘external’ attachments, for manual uploads to S3/Dropbox/ GoogleDrive – adding email attachments automatically is scheduled for development

b) JEMHC Plan tiering not best suited for small JIRA user instances with high volumes

● JEMHC is not in-VM so:

a) can only work with a restricted set of CREATE/UPDATE/DELETE/WorkLogged events

b) cannot by default use every available REST resource, for example, looking up users by email address ( https://ecosystem.atlassian.net/browse/AC-1014 )

c) Is limited to using data that is exposed through REST, eg cannot get full workflow details

Questions

Andy Brook •  CTO •  The Plugin People •  andy@thepluginpeople

Thank you!

Links● JEMH on Atlassian Marketplace ( https://marketplace.atlassian.com/plugins/com.javahollic.jira.jemh-ui )● Create A Profile ( https://thepluginpeople.atlassian.net/wiki/display/JEMH/Create+a+Profile )● Use Project Mappings ( https://thepluginpeople.atlassian.net/wiki/display/JEMH/Use+Project+Mappings )● Use Directives ( https://thepluginpeople.atlassian.net/wiki/display/JEMH/Use+Directives ) ● Use Template Sets ( https://thepluginpeople.atlassian.net/wiki/pages/viewpage.action?pageId=2850840 ) ● Use Ad hoc Notifications ( https://thepluginpeople.atlassian.net/wiki/display/JEMH/Use+Adhoc+Notifications )● Use Static Resources ( https://thepluginpeople.atlassian.net/wiki/display/JEMH/Use+Static+Resource )

Contact● Support jemh-support@thepluginpeople.com● Issues thepluginpeople.atlassian.net/browse/JEMH● Sales sales@thepluginpeople.com>

top related