Force.com Canvas: 2 Case Studies and a Roadmap

42
Force.com Canvas 2 Case Studies and a Roadmap Jay Hurst, salesforce.com, Product Manager @extraidea

Transcript of Force.com Canvas: 2 Case Studies and a Roadmap

Page 1: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas

2 Case Studies and a Roadmap

Jay Hurst, salesforce.com, Product Manager

@extraidea

Page 2: Force.com Canvas: 2 Case Studies and a Roadmap

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.

Page 3: Force.com Canvas: 2 Case Studies and a Roadmap

Jay Hurst

Product Manager

@extraidea

Page 4: Force.com Canvas: 2 Case Studies and a Roadmap

Questions

Who has heard about Force.com

Canvas?

Who has thought of at least one potential

app that could be used with Force.com

Canvas?

Who has actually developed a Force.com

Canvas App?

Page 5: Force.com Canvas: 2 Case Studies and a Roadmap

What is Force.com Canvas

Page 6: Force.com Canvas: 2 Case Studies and a Roadmap

Introducing Force.com Canvas

Platform service to allow external applications to be easily and

securely integrated into Salesforce from their native environment

with little re-design.

Services Include

• JavaScript SDK

• Simplified Authentication (Signed Request or OAuth)

• Context Services (Including Custom Parameters)

• Cross Domain API Calls

• Eventing model

• App Registration and Management

Page 7: Force.com Canvas: 2 Case Studies and a Roadmap

What does Force.com Canvas do?

Your Web Application is surfaced inside salesforce.com

• Displayed using standard web technology

• JavaScript SDK allows communication between apps

• Installation and management of the app is controlled by the admin

Page 8: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas Usage Flow

1. Canvas App is opened which sends a

Signed Request to the 3rd Party App

2. The 3rd Party App responds with HTML

that is loaded into the salesforce UI

3. The user interacts with the 3rd party app

4. The 3rd party app uses the Canvas

JavaScript SDK to make a call to a

server side JavaScript library

5. Salesforce acts on the behalf of the

user and posts to the request

6. Alternatively, the 3rd party app can

communicate server-to-server with

salesforce via the standard APIs 3rd Party App

<script

var a=

var xl

if(xls

Client-Side JS (canvas-all.js)

3rd PartyDatabase

Web UI

Salesforce.com UI

Canvas Link

if(conn

SELEC

WHERE

print

Server-side JS

Salesforce.com Database

1 2

3

4

5

6Chatter Tab

Server

Page 9: Force.com Canvas: 2 Case Studies and a Roadmap

What is the Signed Request Access Method?

The signed request is the default (and recommended) access

method.

When you click the Canvas app, we POST a signed request to your endpoint

You can verify the request was sent by salesforce and then view context info

Context contains data like:

• Scoped OAuth Token

• User Info (Name, email, ID, etc..)

• Company Info (Company name, ID, etc…)

• Environment Info (page is the canvas on, size of the iFrame)

• Useful Links

Page 10: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas – You code it, we show it!

Regardless of your language of choice, JavaScript libraries allow

your app to connect with salesforce at a UI and API layer:

SD

K

Page 11: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas – Summer ‘13

Page 12: Force.com Canvas: 2 Case Studies and a Roadmap

Canvas Locations – Chatter Tab

Add a Canvas App to the Chatter Tab

List of Apps appear in the Chatter Applications List

Clicking the App opens in the Chatter Main Window

Salesforce.com Confidential

Page 13: Force.com Canvas: 2 Case Studies and a Roadmap

Canvas Locations – Visualforce Component

Add a Force.com Canvas App to any Visualforce Page

Tabs, Inline, and Standalone Visualforce Pages

Ability to specify Canvas height and width

Signed Request/Context delivers Page and Record specific information

Salesforce.com Confidential

Page 14: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas – Eventing

Send simple JSON events between Canvas Apps

Apps can publish and subscribe to events

Eventing allows cross-domain communication

Happens in the browser

Salesforce.com Confidential

Page 15: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas – Scrolling and Resizing

The canvas app can resize itself, and detect when the parent frame is

scrolling

Allows for a richer, more seamless user experience

App can resize up to the allowed limits

Infinite scrolling is also supported

Salesforce.com Confidential

Page 16: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas – Winter ‘14

Page 17: Force.com Canvas: 2 Case Studies and a Roadmap

Canvas Enhancements

Metadata API

You can now retrieve and deploy Canvas Apps through MDAPI

• Allows a canvas app to be migrated between orgs

• Consumer Key is still unique, so app can be recreated, not copied

Streaming API

Canvas Apps can now hook into the streaming API via the Canvas SDK

• Allows you to build rich apps that receive info from salesforce.com

• Each page only needs a single Streaming connection

- Managed by the Canvas SDK

• CometD connection is managed for you

Salesforce.com Confidential

Page 18: Force.com Canvas: 2 Case Studies and a Roadmap

Canvas Locations – Winter ‘14

List has expanded to a few more places

Open CTI and Console

• Allows a canvas app to interact natively inside of the Service Cloud Console

• You do not need to house the Canvas App in a VF page

Publisher (Pilot)

• Allows you to develop a Canvas App for the Publisher

- Create a place for common actions that exist in your app

Chatter Feed (Pilot)

• Allows you to develop a Canvas App that can appear in a user’s Chatter Feed

- Add your information into the Salesforce Chatter Feed giving a single information

stream to your users

Salesforce.com Confidential

Page 19: Force.com Canvas: 2 Case Studies and a Roadmap

Publisher Location (Pilot)

Your actions in our publisher

Uses the Quick Action framework to allow placement in different publishers

The developer can choose their own icon (or use the default canvas icon)

The app ties directly into the Chatter Lifecycle to publish the feed item

Salesforce.com Confidential

Page 20: Force.com Canvas: 2 Case Studies and a Roadmap

Canvas Feed Location (Pilot)

Your information in our feed

The developer can choose their own icon (or use the default canvas icon)

The app has a linked title and description

• When the link is clicked, the app switches between open to closed

In the open mode, your app displays inline in the feed

Salesforce.com Confidential

Page 21: Force.com Canvas: 2 Case Studies and a Roadmap

Canvas in Salesforce1 (Pilot)

Provide full parity with Web UI

Ability to view Canvas Feed Apps

Ability to view Canvas Publisher Apps

Ability to add Canvas Apps on VF pages in Stage Left and on

Record Detail views

Page 22: Force.com Canvas: 2 Case Studies and a Roadmap

Sam Henechowicz

CTO, SalesWays Corp

@salesways

Page 23: Force.com Canvas: 2 Case Studies and a Roadmap

• Toronto, Canada

• Creators of

• Fun, Easy, Visual, Universal Sales Methodology

• Stage does not equal Probability, Priority

Page 24: Force.com Canvas: 2 Case Studies and a Roadmap

Why Canvas?

• Existing Cloud App with Interactive Interface

• Avoided Porting Algorithms from LAMP Stack

• Rapid Development, Easy Updates

• Quick Setup for Admins

Page 25: Force.com Canvas: 2 Case Studies and a Roadmap

Architecture

Page 26: Force.com Canvas: 2 Case Studies and a Roadmap

Demo

Page 27: Force.com Canvas: 2 Case Studies and a Roadmap

Areas of Focus

• Canvas works best for visual, one directional apps

• Data not automatically synchronized with Force.com

• Not easy to replicate Sharing Rules on 3rd Party App

• Additional Security Review Steps

• Burp Scanner Report

Page 28: Force.com Canvas: 2 Case Studies and a Roadmap

Thank You!

http://www.salesways.com

@salesways

Page 29: Force.com Canvas: 2 Case Studies and a Roadmap

Gordon Bockus

UI Lead, Spanning

@SpanningBackup

Page 30: Force.com Canvas: 2 Case Studies and a Roadmap

About Spanning

Spanning provides data protection for cloud applications,

ensuring that potential data disasters turn into non-events.

Founded 2010 in Austin, Texas

Funded 2011 $3m Series A, 2013 $6m Series B

Products:

Spanning Backup for Salesforce

Spanning Backup for Google Apps

Multiple free tools

~3000 customers worldwide

~40 full-time employees

Page 31: Force.com Canvas: 2 Case Studies and a Roadmap

Spanning Backup for Salesforce

Automates daily and on-demand backups of Salesforce

What we back up:

• Base objects, custom objects and custom attributes

• Metadata (customizations and personalization)

• Attachments and files

Key features:

• Automates, manages and monitors daily backups

• Enables recovery of objects and metadata from any daily or on-demand backup

• Canvas-enabled Chatter posts for key activities

• Allows the customer to control the API usage

Page 32: Force.com Canvas: 2 Case Studies and a Roadmap

Spanning Backup for Salesforce

Product Release Timeline

• In Beta now, www.spanning.com/salesforce

• Submitted for security assessment

• Per-user pricing, unlimited storage

Launches in January 2014!

Page 33: Force.com Canvas: 2 Case Studies and a Roadmap
Page 34: Force.com Canvas: 2 Case Studies and a Roadmap

Spanning Backup for Salesforce

We started with Canvas!

Let us do what we do best, build web apps fast

• Team of 4, expertise in Java and JavaScript

• Minimal to moderate Salesforce knowledge

• Developed v1 in 4 months

Product architecture

• Server side Node.js extracts data to Amazon S3 and RDS

• Client side JavaScript UI leveraging Angular.js and Bootstrap

• Visual force pages and components built with Canvas

• Utilize the Force.com Rest and SOAP API

Bootstrap

Page 35: Force.com Canvas: 2 Case Studies and a Roadmap

Spanning Backup for Salesforce

Canvas Development Process

Benefits of Canvas

• Allowed us to develop how we wanted, aligned with our expertise

• Enabled rapid development and lower cost to enter the market

• Seamless integration with Salesforce platform

• Integration with multiple parts of Salesforce via a single App

• Simplified authentication

Page 36: Force.com Canvas: 2 Case Studies and a Roadmap

Spanning Backup for Salesforce

Canvas Development Process

Challenges

• Limited ability to build a fully responsive application

• Must serve SSL in development

• Browser support dictated by the Salesforce CRM

• Demo domain for testing

Page 37: Force.com Canvas: 2 Case Studies and a Roadmap
Page 38: Force.com Canvas: 2 Case Studies and a Roadmap

Force.com Canvas wrapped in a little bow

In today’s session we have:

Walked through the basics of Force.com Canvas

• What does Force.com Canvas Allow you to do

• Where can Force.com Canvas display

Discovered how current Partners have begun using the Force.com

Canvas

Page 39: Force.com Canvas: 2 Case Studies and a Roadmap

Jay Hurst

Product Manager,

Salesfore.com

@extraidea

Sam Henechowicz Gordon Bocks

CTO,

SalesWays Corp

@salesways

UI Lead,

Spanning

@SpanningBackup

Page 40: Force.com Canvas: 2 Case Studies and a Roadmap

Where to next? Other Force.com Canvas Sessions

11/19 5:15-6:00 - Force.com Canvas in the Publisher and Chatter Feed

11/20 9:00-9:45 - Introduction to Force.com Canvas Apps

11/21 10:00-12:30 - Hands-on Training: Integrate an External App with the Salesforce UI Using Canvas

11/21 11:30-12:30 - Integrate Third-party Web Apps Using Force.com Canvas

Force.com Canvas Integration Workbook in the DevZone

Force.com Canvas Developer Page

Force.com Canvas Topic Page – http://bit.ly/forcecanvas

Email or tweet Jay – [email protected]/@extraidea

SalesWays – Sam Henechowicz - @salesways

Spanning Contact – Gordon Bockus - @SpanningBackup

Page 41: Force.com Canvas: 2 Case Studies and a Roadmap
Page 42: Force.com Canvas: 2 Case Studies and a Roadmap