Wednesday, March 25, 2009

Twitter Workflow as SharePoint Middleware

First off, let me address the fact that this post is about Twitter. Well, it's about Twitter AND SharePoint if you want to get picky. But ok, it's about Twitter, the one that's always in the news and is very trendy right now. I think it's great; I've learned a ton about SharePoint since I've started following some great SharePoint experts that I found out on WeFollow.Com.

What problems can Twitter solve with SharePoint? For one, it provides a platform to share out data that might be behind a corporate intranet, or existing within a secured SharePoint site. Every list in SharePoint has a corresponding RSS feed, but they are next to useless because of protected content issues. We can use Twitter as middleware to push out information about our content as it happens. In a sense it is doing what email notifications on a list are, but if there is a #1 complaint I hear from people is that they are absolutely swamped with email.... do they really need another email from a SharePoint site? On top of is from an automated source that means they don't need to respond and are less than likely to read it. This illustrates the concept of having users pull the data instead of having it pushed on them. Furthermore, this is superior to the RSS feeds in SharePoint because you could have multiple workflows on multiple document libraries pushing out data to the same Twitter account; almost a site-wide RSS feed.

So now you're saying, "So you expect everyone in the company to sign up for a twitter account?" No. Twitter has a RSS feed for each public facing account. This could be pulled in by a widget on your non-SP intranet, it could be pulled in by an RSS Reader Webpart, it could be rendered using XSLT. If you have employees who do have twitter accounts, then they could 'Follow' that account as well, or have the workflow post directly to their own account if they wished.

On to the workflow, the "CheepFlow", as I call it. I know, awesome name. When adding the workflow to a list, you are presented an association form where you enter: The Twitter account name, the account password, a Bit.Ly username, and a Bit.Ly api key. This is to shorten the urls that come out of sharepoint, which can get pretty long. Provided you check the 'Start this workflow when a new item is created', when a new document is uploaded, the workflow will "Tweet" an update with the name of the document, the name of the document library, and the shortened url to access it. I set up an account for the sake of this project, you can see it here. The links won't work because they all go to "localhost" :)

I created a project at CodePlex to host the code at, please check there for any updates! Credit goes to the team over at Yedda for the C# Twitter Wrapper. If you have any comments or questions I would love to hear them!

Wednesday, March 18, 2009

STSADM Shortcut

I think everyone should be able to recite the 12 Hive Path like the pledge of allegiance, but navigating through the file system in explorer or the command shell can be tedious. Use this batch file to open up a command window already in the /12/bin directory. Change the path if your target directory is different! If you don't trust batch files from ol' Uncle (SharePoint) Joe, then save the following line in notepad, and change the extension to .bat

cmd.exe /k cd "C:\program files\common files\microsoft shared\web server extensions\12\bin"

Monday, March 16, 2009

SharePoint Form Login Nothing Happens

Using FBA (Forms-Based Authentication) can be very intimidating, because there are so many interlocking parts, especially if you are using FBA in an extended web application. One problem I have run up against time and time again is after you have everything configured BY THE BOOK, you attempt that first login, hit the 'Sign In' button and nothing happens. The page refreshes, but the username and password fields are empty. Even if you enter the password wrong or a username that doesn't exist, nothing happens! This has to do with the cookies SharePoint is attempting to store. Try your site in Firefox, you should be able to successfully log in.

If this is the case, then you need to add your site to the list of 'Trusted Sites' in your browser. Don't forget to close out your browser before you try to access the site again.

Sunday, March 15, 2009

Site Update

Giving the site a much-needed facelift; please pardon the current state of design quality.

Thursday, March 12, 2009

WSS 3.0 Licensing in One Sentence

I gave my first conference presentation this week at the Brainstorm 10.0 event in Wisconsin Dells; one of the hooks of the presentation was that if you have Windows Server 2003 (or 2008) running somewhere in your network, then you already own SharePoint.

Sure, it's WSS 3.0 and not MOSS 2007, but if you are not a big shop then it can be tough to justify a purchase like Office SharePoint Server. But it's not really free, is it? What about CALs, and Internet Connector licenses? This part always confused me, to be honest. Turns out I was making it WAY more complicated than it needed to be, so here it is:

WSS 3.0 usage is directly bound to the licensing of the server it is on.

What this means is that if you have a server that is already hosting internet-facing websites, then you can host WSS 3.0 on that server and have your SharePoint sites internet-facing as well. If you have a server that is internal to your network then your SharePoint access is restricted to the number of CALs that you already have for that server.