On July 1, 2013 Google reader was retired. This was high profile news that was covered heavily online.
This wasn't the only blow to RSS usage, a lesser blow was struck when Twitter announced permanently
retiring the Twitter API v1.0 which allowed Atom and RSS feeds output.
The current Twitter API 1.1 only allows JSON format and requires authentication to access. This took effect, June 12.
For most people, this did not make a difference. But for me it was a blow, because I was pairing
RSS output from Twitter feeds with IFTTT to filter and alert me only if a certain keyword appeared in the feed.
To backtrack a little, I've written many times on this blog about techniques on how to
proactively scan for tweets about your library.
There are 3 ways to figure out if a tweet is about your library even though the person tweeting does not @mention your library.
1. If the tweet contains the keyword (e.g NUS Library)
2. If the tweet contains keyword (e.g. Library) and is within say 1 km of your library
3. If the tweet contains keyword (e.g. Library) and is from people you can identify as your user
In fact, before the retirement of Twitter API v1.0, IFTTT could even pull directly from Twitter results without RSS for search terms but this is no longer an option and now IFTTT can no longer trigger on Twitter but can work only as an action.
You might wonder why I use IFTTT, when Tweetdeck is capable of tracking such items including location alerts.
IFTTT is pretty handy because
1. It can filter and alert on a specific keyword only - eg You could put in a RSS of a twitter group of people who are presumably your users, but get alerts only if the word library is mentioned.
2. It provides a host of alert options, from email to SMS and more.
But now that Twitter does not provide results in RSS, what can be done?
1. Use a third-part service to provide Twitter output in RSS
"What we really need is some sort of a parsing program sitting between Twitter and our RSS Reader. The parser would fetch updates from Twitter at regular intervals and convert them from JSON to RSS which we can then subscribe in our favorite RSS Reader."
Follow the instructions, then convert the existing RSS feed url to the new URL.
If you have no idea of the syntax on how to grab Twitter results in RSS in the first place see
this for the syntax.
Using that, you just need to replace the portion before the q=xxxx with the new URL from the Google Script.
For example if before you were doing
http://search.twitter.com/search.rss?q=nuslib%20OR%20nuslibrary%20OR%20nuslibraries
You just need to replace the part in red, with the new Google Script url given to you via email once you have set it up, eg.
https://script.google.com/macros/s//exec?action=search&q=nuslib%20OR%20nuslibrary%20OR%20nuslibraries
Below shows one IFTTT Recipe I setup that will SMS me, if certain keywords are tweeted.,
This works like a charm, but for some reason I couldn't get it to work with location alerts, though I wonder if it is due to the length of the rss string.
IFTTT itself polls every 15 minutes, Google script itself only pulls from Twitter periodically, so this creates even more delay, so if you want close to real-time alerts this isn't ideal.
2. Use Zapier - a IFTTT alternative
It's very similar to IFTTT but it seems to be a lot more powerful in particular for Twitter and a bit more customizable.
The first few parts are similar to IFTTT, you select Trigger and actions. Here I select Twitter as a trigger and to email myself to Gmail as action.
Select the specific accounts
The Twitter options look promising because unlike IFTTT you can directly pull in Twitter search results without RSS
The basic options allow location searches, so you could pick a Latitude and Longitude and a radius around for tweets to be alerted on.
But it gets really interesting if you click on Add custom filters
I soon realised the basic options just scratches the surface, Zapier is apparently capable of filtering on pretty much every piece of metadata available from a Tweet, and it is a very long and complicated list.
So for example, you could setup alerts on favourited tweets, whether they are retweeted, how many times and much much more.
The downside is, you pretty much need to be an expert on Twitter API to know what each field means.
Setting up the action can be also quite customized.
Unlike IFTTT which has defaults for Zapier, you are expected to set your own, some are pretty obvious. But others are not.
The text in Orange are actually dynamic based on the metadata from tweets. It takes some experimenting to know what you want. But the "live preview" helps by showing what the data will be like. Below shows for example what "User Created At" field will show.
I found this part of Zapier a bit buggy, occasionally it won't show any data (because there is no real tweet to draw on) which is normal, but occasionally some fields just wont appear, even though I know they are available for selection, but if I reload the pull down again after several tries the option appears?
But in general it works. Here's an example.
Compared to the RSS->IFTTT method, Zapier sends out the alert faster, based because there is only a 15 minutes delay for the free version, while IFTTT also boasts the same 15 minute polling time, there is additional time delay due to the additional of the Google Script to pull in Twitter results.
The free version of Zapier is also limited because you can get up only 5 such tasks and receive a maximum of 100 alerts per month for the free version, while IFTTT has no such limits.
3. Use Mention
For some different, try the
Mention Service, this covers not just Twitter but also blogs, facebook etc and pretty much everything. It does not allow location based alerts, and is limited to 250 alerts per month for free. I use the ios app mainly but there is a desktop version, Chrome
Conclusion
This is a somewhat geeky post, though I have been using such techniques since 2010 and have found them invaluable in keeping on top of news I am interested in.