#CNX14 - Journey Builder - The New App Experience

31
Track: Developers #CNX14 #CNX14 Journey Builder: The New App Experience Jake Miller, Manager, Software Engineering, Journeys @_JRMiller

description

JourneyBuilder is the next generation marketing automation tool that allows developers to leverage the power of building and invoking interactions programmatically. This session will introduce the audience to the anatomy of an interaction, and demo how to use interaction APIs to create and invoke interactions with their customers.

Transcript of #CNX14 - Journey Builder - The New App Experience

Page 1: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

#CNX14

Journey Builder: The New App Experience

Jake Miller, Manager, Software Engineering, Journeys

@_JRMiller

Page 2: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

Safe HarborSafe harbor statement under the Private Securities Litigation Reform Act of 1995:

This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.

Jake Miller
http://www.cisco.com/c/en/us/solutions/collateral/service-provider/visual-networking-index-vni/white_paper_c11-520862.html
Page 3: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

There is no “Internet of Things” - Sarah Epps, Senior Analyst, Forrester

Jake Miller
http://www.cisco.com/c/en/us/solutions/collateral/service-provider/visual-networking-index-vni/white_paper_c11-520862.html
Page 4: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Page 5: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

The New App Experience

Delivers the Right Information at exactly the Right Time

Page 6: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Breakdown the

Anatomy of an Interaction

Learn How To Manage

Interactions

APIs and the Workflow Document

Format

Extend Journey Builder

Build Custom Activities

Goals – Presentation Overview

1 2 3

Page 7: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

The Anatomy of a Journey

Page 8: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

An Interaction is a Directed Acyclic Graph (DAG)

Node

Node

NodeStart Node Stop

Can Branch Can Merge

Unidirectional

No Cycles

Page 9: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

An Interaction: A Simple Use Case

Registered Prefer Email

Email

Mobile

Developer Interaction

• Trigger: Jake Registered for CNX + Confirmed Registration: No• Decision: Does Jake prefer email or mobile messages?• Send Email or Push Message Encourages Jake to confirm registration• Goal: Jake will confirm his registration

Custom Stop

Page 10: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Events: Invoking an Interaction

Registered

RegisteredNOT Confirmed Registration

InteractionConfirmed Registration

Interaction

Event (Jake Registered for CNX)

Event Router

Prefer Email

Email

MobileCustom Stop

Page 11: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Data Context

The Event Router

Automation Studio

Fire Event Activity

Event API

Event Router

Request Queue

Engine

Page 12: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Triggers: Events and Filters

Trigger

Event +

CustomPrefer Email

Email

MobileStop

Filter

Jake Registered for

CNX14

Is Registration Confirmed?

Page 13: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Design Time and Run Time

RegisteredDefinition

Registered (Instance)

NOT Registered(Instance)

Jake - Registered

Jake – NOT Registered

Register

NOT RegisteredDefinition

Jake Miller
Could be two devs and marketerRelate to the illustrative exmaple of registration
Page 14: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

The Interaction’s Goal

Custom StopTrigger Prefer Email

Email

Mobile

Goal If “Is Exit Criteria” = true, contact will be ejected.Otherwise, contact will remain in the interaction.

Page 15: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Demo

Jake Miller
Page 16: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

Interaction APIs & Workflow Document Format

Page 17: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Workflow Document Format

Split Workflow API Version 1.0

{ "key”: ”My-Registration-Interaction", "name": "Registration", "description": “This is my registration interaction"., "triggers": [], "activities": [], "goals": [] }

Page 18: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Versioning an Interaction

Split

IXN Version 1

POST /Interactions/key:reg-1/

{ "key”: ”reg-1", "name": "Registration", "description": “Registration IXN”, "triggers": [], "activities": [], "goals": [] }

IXN Version 2

POST /Interactions/key:reg-1/ { "key”: ”My-Registration-Interaction", "name": "Registration", "description": “Registration IXN”, "triggers": [], "activities": [], "goals": [] }

Page 19: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Define an Activity "activities": [{ "id": "f23b61a3-21a7-41bd-ac9b-ef113271d2e9", "key": "WAIT-1”, "type": "WAIT", "outcomes": [ { "next": "EMAIL-1” } ], "arguments": {}, "configurationArguments": { "waitDuration": 1, "waitUnit": "DAYS" }, "metaData": { "waitType": "duration" } }]

The next node in the graph

Runtime arguments – databind-able

Publish time arguments

Page 20: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

Extend Journey Builder:Build Custom Activities

Page 22: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Custom Activity: Add User to GitHub Repo

Page 23: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Custom Activity: Under the Hood

Journey Builder Canvas

GitHub Custom Activity

GitHub ActivityJB API & Engine

EngineAPI

Post Monger

SaveValidatePublish

SaveValidatePublishExecute

Jake Miller
Need to animate this slide and need to mention post monger...also - add a UI screenshot to the 3rd party box.
Page 24: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Data Binding – Define at Design Time

Trigger Custom Stop

{ "key": "rest-1", "arguments": { "execute": { "inArguments": [ { "ContactKey": "{{Contact.ContactKey}}", "gitHubUsername": ”{{Event.Key.gitHubUsername}}" } ], "url": "URI/for/your/activity/execute", "verb": "POST", "body": "", "header": "", "format": "json", "useJwt": false, "timeout": 10000 } }}

Page 25: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

YOU

Can Dissect an Interaction

YOUCan Manage

Interactions via API per the Workflow Document Format

YOU

Can Build Custom Activities to Extend

Journey Builder

Recap Slide

1 2 3

Page 26: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

Now go and Build

Jake Miller, Manager, Software Engineering, Journeys @_JRMiller

Page 27: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

Resources

$500

Build Custom Activities

Understanding Interactions

Interaction APIsWorkflow Document Format

1

2

3

Page 28: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

Questions?

Jake Miller, Manager, Software Engineering, Journeys @_JRMiller

Page 29: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

Track: Developers

#CNX14

Take the after-session survey!

Take the Survey in the Connections 2014 Mobile App

Join the Conversation!

#CNX14

$50Starbucks

Gift Card

Page 30: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14

CUSTOMER JOURNEY SHOWCASE

MARKETING THOUGHT LEADERS

EMAIL MARKETING PRODUCT STRATEGY& ROADMAP

PERSONAL TRANSFORMATION

& GROWTH

SOCIAL MARKETING MOBILE & WEB MARKETING

DEVELOPERS HANDS-ON TRAINING

INDUSTRY TRENDSETTERS

CREATIVITY & INNOVATION

SALESFORCE FOR MARKETERS

ROUNDTABLES

Page 31: #CNX14 - Journey Builder - The New App Experience

Track: Developers

#CNX14