03 March, 2009

First release of the Twitter module for SilverStripe

Dear all,

You might remember I wrote something about a new addition to the SilverStripe Open Source CMS called the Twitter Module. If you have a bad memory or you didnt see my previous post here is the link to that "Have you tried to merge your twitter account with your SilverStripe website".

Okay here we go, here is the first release of the module where you can have it installed it with your SilverStripe website.

To download it click here.

I'd love to hear your views about the module, and if you have anything in your mind just post your comments here.
The software is free, released under the Free BSD you can make use of it with out any hesitation.

Have some nice experience with this new addition. To let you know about some stuff about the module it ships with some widgets, where you can have your twitter details in many pages. Also still you can have only one TwitterPage set up on your website. You can have many, but the widgets will not work as you need, I will be fixing this soon, and would like to hear how you need it on a next release. Also I will be posting the codes to the SilverStripe.org so you will be able to download it from there too.

Thanks, I am going to have a beer today evening to celebrate the release, as this is something I was looking forward for sometime ;)
GREETS!!!!!

4 comments:

Shawn Parr said...

I've been playing with this plugin, and ran into a couple of things. The first was related to Silverstripe caching, but it seems like updates happen within an hour or so which is totally fine for how we want to use it.

One feature request would be the ability to have an RSS feed come off of a TwitterPage in SilverStripe. I know it seems redundant, but it could be useful.

Thanks for your hard work, and this module. We hope to get some good use out of it.

Nivanka said...

Hi Shawn,

I bet sometimes the browser caching can evolve on this too. But you can fix it using the following hack, add this code to your _config.php


HTTP::set_cache_age(0);


Also twitter.com itself caches some timelines such as public timeline. And twitter.com allows 100 requests per hour, this is a problem too, so it is wise to make the module not to update the page automatically, otherwise the module will result null values when it exceeds 100 Restful requests ;).

About the RSS feed I think that it will be a cool feature, but not sure how people will make use of it, anyway will keep it in mind to add it to the next release.

Shawn Parr said...

Hey Nivanka,

Here is an example of how we would like to use rss feeds from the TwitterPage.

We create a page to keep our site owners up to date on service issues (upgrades, downtime, new features, etc) that we populate the data via twitter.

Our site owners have a greatly varying experience level, so some of them may want to just follow us on twitter, some may want to only check the SilverStripe page from time to time.

We want to give a 3rd option to those who are comfortable/familiar with rss, but don't want to deal with twitter for whatever reason. While twitter has rss feeds directly, it would be nice to have an rss feed of the exact view on our SilverStripe twitter page due to it consolidating user and friend updates together.

We will utilize twitter with one special account for our department that will announce bit items like upgrades and downtime. We will then have separate twitter accounts for individuals to announce smaller things like theme tweaks, new features, etc.

BTW, with the caching issue, the browser cache was tested and in our particular case wasn't an issue, as well as the twitter feed was being updated within a minute or two each time (we checked the feed that SilverStripe was using directly). As you say, if some caching didn't occur it could go over limits for Twitter, and with the type of announcements we are interested in, once an hour is totally fine.

Nivanka said...

The module is published on the SilverStripe website, you can download it, I will work on the RSS feeds for the next release.