Developing Applications with Salesforce Chatter


Published on

It's time to get social! Join us to learn how you can use Salesforce Chatter to create new applications and add social capabilities to your existing apps. This session will feature a deep technical discussion on how to leverage Chatter both from within the platform using code (Apex) and pages (Visualforce) and outside the platform using the Web services API.

Published in: Business
1 Like
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide
  • 3 min[TALKING POINTS]Brief introWe are on Chatter
  • 3 MINSWhat to expect?You are attending this session because you want to understand what it is like to incorporate chatter into you cloud app. Our goal is to not provide you a 101 on Chatter. Our goal is not to highlight compelling use cases for Chatter. Our goal is to not evangelise Chatter as that disruptive technology. We already know that Enterprise Collaboration would never be same again since Chatter came about last year. [PAUSE]Our goal is to share with you the method of incorporating Chatter into your applications. Our goal is to make this session as technical as possible in the 50 minutes we have and still keep it exciting…by the end of this session whether you are a new developer of a expert - you will be able to get started with building an app with Chatter.How we’ll do it?We’ll be covering some Chatter basics just to ensure we are on the same page. In addition, a ton of enhancements have come out around Chatter since we last saw you. We think it will serve you well to very briefly highlight some of these key enhancements. [PAUSE]We have also picked out a very special app which we think will serve as a simple yet powerful premise to our discussion here. We’ll lift the hood on this app and share with you the Chatter specific development details. You might even see use of some new Chatter enhancements in this app.[PAUSE]At the end of the session we have reserved 10 minutes for a Q&A. But you don’t have to wait! You can start posting your questions now on the DF portal under this session’s record. Follow us there!
  • 3 MINSFollower and FollowedAs you already understand, the primary actor in all of Chatter’s use cases is the Chatter User. A Chatter User follows other Users or Objects such as Accounts, Contacts, custom objects of interest. The Entity Subscription object joins this many to many relationship between the User who is the follower and the Object or User who is being followed.
  • 5 MINSFeedThis part of the data model is the meat of the Chatter functionality. It is very important to understand these object relationships in order to apply Chatter to your real world applications. The key items to note here are:[PAUSE]A Chatter feed can be generated around any User or Object in your Chatter application represented by the box called “Feed Items”[PAUSE]Each Chatter Feed when created by a User is a FeedPost on the left. The User or other Users can subsequently Comment on a Post represented by the FeedComment object. IF you enable Feed Tracking on specific objects, you are able to query the FeedTrackedChange object.[PAUSE]The Chatter Feed comes in three varieties…first is the User’s profile feed, second is the User’s, somewhat of a “homepage” feed…the newsfeed and the third is the Chatter feed collected on the objects Chatter has been enabled for.[PAUSE]Now another important thing to be aware is that FeedTrackedChange and FeedComment cannot be directly queried. You first need to decide which object’s feed you want and then via sub query you retrieve the specific Feed Objects.
  • 2 MINSGroupGroups are one of the many exciting new Chatter features that recently came out. This feature allows a group of users to collaborate privately or publicly using Chatter.With that crash course on the Chatter Data Model we are now ready to explore application development with Chatter.[PAUSE]Also you are able to query feed objects around Groups just as you can around other Objects as we discussed previously.
  • 15 MINSWhat does the app do?[TALKING POINTS]Define premise for the app in concept.Define which specific part we shall be focusing on in this sessionWhat is the data model for this app?[TALKING POINTS]Specific to the page/functionality we discuss in the session describe the data modelWhere does Chatter plug into this app?[TALKING POINTS]Define cases where “In order to build component X on this page, I had to write query Y and use a VF Component Z”[DEMO]Show query Y in eclipse via the schema browserWhat are some Chatter components to develop with?[TALKING POINTS]Show VF code for the page and highlight VF Component Z being demonstrated. Tell audience how this is a new and convenient feature of Winter ‘11Show VF code on the page and highlight some non-standard components. Tell the audience how standard components to do not exist in VF for this use case yet, but we continue to bring enhancements.Chatter for outside[TALKING POINTS]Chatter WS API
  • 5 MINSHow do I test a Chatter App?So as you know the primary actor in Chatter is the User…therefore the test suite for a Chatter app should definitely incorporate tests written to simulate the User’s use cases. The runAs method comes in pretty handy in this scenario. Here is an example[DEMO]In Eclipse show the runAs() method and describe what the method is doingHow do I package a Chatter App?[DEMO]- In Eclipse show System.DMLExceptionSetup>Create>Packages
  • 2 MINS
  • 8 mins
  • Developing Applications with Salesforce Chatter

    1. 1. Developing Applications with Chatter<br />Developers<br />JonathanHersh:<br />AishShukla:<br />
    2. 2. Safe Harbor<br />Safe 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, 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 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.<br />The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, 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 intellectual property and other litigation, risks associated with 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 products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of, inc. is included in our annual report on Form 10-K for the most recent fiscal year ended January 31, 2010. This documents and others are available on the SEC Filings section of the Investor Information section of our Web site. <br />Any unreleased services or features referenced in this or other 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., inc. assumes no obligation and does not intend to update these forward-looking statements.<br />
    3. 3. Agenda<br />What to expect?<br />How we’ll do it…<br /><ul><li> Chatter Data Model
    4. 4. Developing an App with Chatter
    5. 5. Package an App with Chatter
    6. 6. Resources
    7. 7. Q/A</li></li></ul><li>Chatter Data Model: User<br />Follower and Followed<br />Entity Subscription<br />User | Object<br />User<br />subscriberId<br />parentId<br />(follower)<br />(followed)<br />
    8. 8. Chatter Data Model: Feed<br />Feed<br />User | Object<br />Feed Items<br />UserProfileFeed<br />FeedPost<br />NewsFeed<br />FeedComment<br />FeedTrackedChange<br /><Record>Feed<br />
    9. 9. Chatter Data Model: Group<br />Group<br />CollaborationGroup<br />CollaborationGroupMember<br />MemberId<br />NEW<br />
    10. 10. Developing The Chatter App<br />A VisualForce page with Chatter<br />A Chatter App <br />VisualForce components for the clever Developer…<br /><chatter:feed><br /><chatter:feedWithFollowers><br />NEW<br /><chatter:follow><br /><chatter:followers><br />Chatter for outside<br />
    11. 11. Buttoning Up The Chatter App<br />How do I test a Chatter App?<br />How do I package a Chatter App?<br />Package up Chatter + Field History Tracking <br />Catch the DML Exception inside Apex to handle non-Chatter enabled Orgs<br />Select Chatter as a package install dependency<br />NEW<br />
    12. 12. And Next…<br />DFC: <br />Post Comments | Questions on Chatter<br />Sign Up! Free DE Org @ DFC<br />Chatter Mother Load @DFC<br />Chatter Discussion Boards @ DFC<br />Workbook, Recipes, Cheat Sheets @ DFC<br />Contact Us! …………………..on Chatter<br />
    13. 13. Q & A<br />
    14. 14. Developing Applications with Chatter<br />
    15. 15. Visit the Developer Training and Support Booth in Zone<br />D I S C O V E R<br />Developer training, certification and support resources <br />that help you achieve<br />S U C C E S S<br />Find us in the Partner Demo Area of <br /> Zone 2nd Floor Moscone West<br />Learn about Developer Certifications<br />Discover Developer Learning Paths<br />
    16. 16. Remember. . .<br /><ul><li>Check Chatter for additional session information
    17. 17. Get your developer Workbooks and Cheat Sheets in the Zone
    18. 18. Visit for more information related to this topic</li></ul>Don’t forget the survey!<br />
    19. 19. GetYour Whole Company on<br /> for Free!<br />Visit the <br />Campground<br />to learn<br />how<br />
    20. 20. How Could Dreamforce Be Better? Tell Us!<br />Log in to the Dreamforce app to submit<br />surveys for the sessions you attended<br />Use the Dreamforce Mobile app to submit surveys<br />OR<br />Every session survey you submit is a chance to win an iPod nano!<br />