Mashing SharePoint RSS with Presto

0
Your rating: None

Mashups and Microsoft SharePoint Part 2.2: Mashing SharePoint RSS with Presto

This is the seventh in a many-part series about Mashups and Microsoft SharePoint.  You can read about the entire series at http://www.jackbe.com/enterprise-mashup/blog/mashing-sharepoint-introduction.

In this article we'll publish a pair of RSS Feeds with Presto, use Wires to combine and filter the Feeds to create a Mashup, and finally, expose the Mashup as a Mashlet. One of the feeds will be provided by SharePoint and the other will be from a non-SharePoint source, so we will be demonstrating how Presto can be used to mash SharePoint data with external data source.

So we have a 4 stage procedure:

  1. Publish the SharePoint RSS Feed on Presto using Service Explorer.
  2. Publish the external RSS Feed on Presto using Service Explorer.
  3. Create and publish a Mashup using Wires.
  4. Create and publish a Mashlet of the Mashup using MashletMaker.

We will take a SharePoint Site Team Discussion List, exposed as an RSS Feed, and merge it with the an RSS feed of the MDC Forum postings over the last 30 days. We will also filter the merged feed for items that carry a key word.

Publishing the SharePoint RSS Feed with Presto

The screenshot below shows the example SharePoint Team Discussion List which we will publish in Presto as an RSS Feed. The List can be viewed in the form of an RSS Feed by selecting Actions -> View Feed. The RSS Feed URL identifies the GUID associated with this SharePoint List.

Before publishing the SharePoint RSS Feed to Presto we need to gather the following information, assuming we have a SharePoint Site named Jackbe :

  1. A name to uniquely identify the published Presto Service, eg. SpJackbeDiscussion, signifying Sharepoint Service, Jackbe Site, Discussion List.
  2. The URL for the RSS Feed, eg. http://www.mycompany.com/sites/Jackbe/_layouts/listfeed.aspx?List={GUID}, where GUID is the Id asscoaited with the RSS Feed.
  3. NT Lan Manager (NTLM) Username, password and domain.

Using Presto ServiceExplorer, we launch the RSS/ATOM publishing wizard and enter our details, select NTLM authentication and enter our user credentials. The screenshot below shows an example of the Service details entered in the Service Explorer Publishing Wizard:

Presto will access the service, read and validate the feed and prepare the Service as a Presto Published Service. If successful, the wizard will stop to allow us to configure role based access to the service as a whole and/or to individual getFeed operation.

Having published the service, by default the service will be activated and ready to be invoked, we are now ready to use the service as a Mashable in Wires.

Publishing the MDC Forum RSS Feed

Unlike the SharePoint Feed, the MDC Forum Feed does not require authentication. The screenshot below shows the Feed being published using the Service Explorer publishing wizard. We name the service MDCForum30DayPosts.

Having successfully published the second feed we are ready to mash the 2 feeds using wires.

Create and Publish a Mashup

  • Launch Wires and locate the 2 newly published RSS Services in the Service pallette.
  • Drag the 2 services out onto the canvas, both services only have the one operation associated with them and these will be selected automatically.
  • We can test the services by invoking them and viewing the returned service data in the preview panel.
  • Drag out a Merge Action Block onto the canvas and merge the 2 feeds.
  • We can test that the merged output contains data from both feed sources.
  • Drag out a filter Action Block, we can now set up the Filter Action to filetr out feed items that do not contain a particular keyword in either the item title or description.
  • To complete the Mashup we connect the Service block to the Mashup Output block.
  • We can now save the Mashup, assigning a unique name to it, tagging and providing a description.
  • Having saved the Mashup we can publish it so that it becomes externally accessible.

The screenshot below shows the completed mashup.

Having published the Mashup we can now expose the Mashup as a Mashlet. Once the mashup is published, Wires provides us with a shortcut via a toolbar button to create a Mashlet from the current Mashup.

See Creating Mashups for further details explaining how to use Wires to create Mashups.

Create and Publish a Mashlet

We will create a Mashlet which exposes the Mashup as a Mashlet so that the information can be made available to users outside the SharePoint environment.

  • Launch MashletMaker, either from within Wires or via the Presto Home page.
  • Select the RSS Mashup previously published.
  • Select the single operation exposed by the mashup, runMashup.
  • MashletMaker will now prompt us to select the type of View we wish to use, select RSS.
  • Mashlet Maker will now render the mashlet as shown in the screenshot below.
  • We can now choose to publish the mashlet or further alter it by modifying mashlet appearance or role based security setting.

 

This post is part of a many-part series about Mashups and Microsoft SharePoint.  You can read about the entire series at http://www.jackbe.com/enterprise-mashup/blog/mashing-sharepoint-introduction.