Integrating Force.com and Heroku
Using REST and Bulk APIs
Mark Puddick, Moroku, CTO
@MarkPudd
Mark Puddick
CTO, Moroku
Agenda
- Moroku Game System
- Authorization

- REST
- Bulk

- Polls Demonstration
Game System - Objective
• We Gamify bank customers banking
• Allow Player to gain points for banking activities such as go...
Game System - High Level Architecture
Mobile
App

Bank Customers

Bank Admin

Moroku Game Server
Game Functionality
Analyt...
Why?
• High request volume with Heroku
• Heroku gives us some great options to scale

• Administration with Force.com
• Us...
Authentication
• Options
• Basic username/password

• Access Token/Refresh Flow

• Encrypted Token storage

• Configuratio...
REST API
- Obtain Information about Salesforce or Force.com objects
- Perform SOQL queries

- Update or delete records
Using REST API – SOQL to get Configuration
• Quiz configuration is done within Force.com
• Daily batch job syncs the quizz...
Using REST API – SOQL to get Configuration

Daily Batch
Using REST API -SOQL to update Analytics
• Analytics are generated around what players have been doing
• Generated from Po...
Using REST API -SOQL to update Analytics

Twice daily
batch
Using BulkAPI
• Create Job – specifies the object and action
• Create Batch of content – player information
• Create subse...
Bulk API – Update Customers Points
• Users points balance and goals uploaded
• Runs as a daily batch

• Leaderboards gener...
Bulk API – Update Customers Points

Daily
Batch
Example Application – Setup Poll and Sync

Sync
Code
Github - git@github.com:markmoro/poll_demo.git
All about
Moroku makes banking fun because:
•Financial Mastery is both very important and very difficult for lots of
peopl...
Mark Puddick
CTO, Moroku
Integrating Heroku and Force.com Using Bulk and REST APIs
Upcoming SlideShare
Loading in …5
×

Integrating Heroku and Force.com Using Bulk and REST APIs

220 views
166 views

Published on

Using a combination of Heroku and Force.com, Moroku is able to provide provide a high-volume Gamefication engine for iOS and Android clients. Our core engine runs on Heroku, and all of the configuration and view of Analytics is done via Force.com. Join us to learn how to integrate the on-demand scalability of Heroku with Force.com to provide an administration and analytics portal for customers. We'll show you how to use the Salesforce Bulk API to upload thousands of records to Force.com and how to use the REST API to get configuration data from Force.com, and more.

Published in: Technology, Economy & Finance
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
220
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
3
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Integrating Heroku and Force.com Using Bulk and REST APIs

  1. 1. Integrating Force.com and Heroku Using REST and Bulk APIs Mark Puddick, Moroku, CTO @MarkPudd
  2. 2. Mark Puddick CTO, Moroku
  3. 3. Agenda - Moroku Game System - Authorization - REST - Bulk - Polls Demonstration
  4. 4. Game System - Objective • We Gamify bank customers banking • Allow Player to gain points for banking activities such as goal setting • Points, badges and leaderboard mechanics are used • We use Heroku to run our Game Server • Sync with Force.com • Sync quizzes, analytics and players
  5. 5. Game System - High Level Architecture Mobile App Bank Customers Bank Admin Moroku Game Server Game Functionality Analytics Summary Generation REST Bulk API Moroku Game Console Configuration Analytics Views
  6. 6. Why? • High request volume with Heroku • Heroku gives us some great options to scale • Administration with Force.com • User management • Integration points • Familiar look and feel
  7. 7. Authentication • Options • Basic username/password • Access Token/Refresh Flow • Encrypted Token storage • Configuration • Sign on URL
  8. 8. REST API - Obtain Information about Salesforce or Force.com objects - Perform SOQL queries - Update or delete records
  9. 9. Using REST API – SOQL to get Configuration • Quiz configuration is done within Force.com • Daily batch job syncs the quizzes with Heroku • Heroku scheduler run the batches • REST API used the get the quizzes • Potential to run on demand
  10. 10. Using REST API – SOQL to get Configuration Daily Batch
  11. 11. Using REST API -SOQL to update Analytics • Analytics are generated around what players have been doing • Generated from Postgres or Treasure Data • Scheduled on Heroku Batch twice per day • Reports, graphs and dashboard created for the bank
  12. 12. Using REST API -SOQL to update Analytics Twice daily batch
  13. 13. Using BulkAPI • Create Job – specifies the object and action • Create Batch of content – player information • Create subsequent batch if needed • Close job • Check status and results
  14. 14. Bulk API – Update Customers Points • Users points balance and goals uploaded • Runs as a daily batch • Leaderboards generated in Force.com • Goal distribution shown in dashboard
  15. 15. Bulk API – Update Customers Points Daily Batch
  16. 16. Example Application – Setup Poll and Sync Sync
  17. 17. Code Github - git@github.com:markmoro/poll_demo.git
  18. 18. All about Moroku makes banking fun because: •Financial Mastery is both very important and very difficult for lots of people. •Fun is the most ancient and proven mechanism for learning skills and delivering outcomes: “People rarely succeed unless they have fun in what they are doing”: Dale Carnegie, 7 Habits …… .  Established January 2012, Sydney Australia  May 2012, Game System Beta Released  August 2012: Red Herring Asia 100  September 2013, First bank goes live
  19. 19. Mark Puddick CTO, Moroku

×