Some Facebook Quibbles

Image via CrunchBase

So I’m going to try to keep this non-technical. But I do want to explain why Facebook will be eclipsed by something else fairly soon. Their programming interface is keeping Facebook from being used for anything but MafiaWars style games.

I’m currently writing a theater ticketing and management website called BuyPlayTix. It has a lot of cool features, and so I decided to start working on Facebook integration. I tried to do a Facebook widget about a year ago (remember back when they had those?), and got frustrated and gave up. I’m glad I did since they basically removed that feature entirely.

I went ahead this time since I knew there was at least one feature that I could add that would be useful.

So now you can create an Facebook event automatically based on your event in BuyPlayTix. Which is nice. It saves you a little bit of duplicate effort. You set up your ticketing website, click a button and your event is on Facebook. Except you still have to go to their website to actually invite anyone to the event. Because their API doesn’t support that feature.

I have a page for my theater company – Loaded Gun Theory. I have hundreds of fans who want to be updated about Loaded Gun Theory’s new productions. They have manually clicked a button to make this happen. Yet I cannot automatically invite those fans to Loaded Gun Theory events via Facebook.

Which was ok, I guess. I still added a feature that saves about 5 minutes of typing.

Next up, our mailing lists. Email is becoming increasingly outdated, we lose about 5% of our contact list every time we send out an update. I figured it would be nice to be able to email updates to people who have opted in to our mailing list, or update them via Facebook. So I wrote a widget that would let you lookup a person on Facebook. Only downside there is you can only look them up by full name. The API has a first_name field. And a last_name field. But you can only search by full name. Which stinks if you happen to be looking up one of the many women who have their maiden and married name as their full facebook name. Or you’re looking up anyone who has a nickname, but uses their full name on facebook.

Then I figured it would be nice to have an automatic import feature. Where it would take only those exact matches and update them with their corresponding facebook id. Thanks to the previous problems this wouldn’t be a great solution, but it would save some time. Guess what? Can’t do that. Even though I have a list of fans subscribed to my facebook page, there is no way to get them out via the API. That’s right. I can’t get a list of all the people who are fans of Loaded Gun Theory. Which is pretty stinking useless.

So I’m already irritated at this point. I decide to go setup the mailing list capability where it will send an email if that’s configured, or a message via Facebook if you’ve (manually) entered the users facebook ID.

I go to look at what sort of messages you can send. Turns out:

a) You can’t send a message FROM your page. I can’t send a message from Loaded Gun Theory. It’s always going to look like it’s coming from Tim Thomas. Which is great if you know me, but we actually do have fans who don’t.

b) You can’t send a message that shows up in the Inbox. At all. Period.

c) You can’t send a private message to a user.

What can you send? You send send a status update (again as Tim Thomas, not Loaded Gun Theory). You can send a notification (which shows up in that tiny little box in the right hand corner that you don’t pay attention to). Or you can respond to a status update. Which doesn’t seem to be the best way to notify a fan about a new production.

So what do I have? I’m still sending out email and I’m sending those little notifications in the bottom right. I guess it’s better than nothing. But barely.

I understand they’re trying to prevent spam, but they’re also preventing every legitimate use. And I can still go into the application and spam people. It just takes longer for their page to load than mine.

I also added twitter support. That took 3 lines of code, and works exactly as you would expect.

Has anyone had success in communicating with Facebook users via the API? What did you do?