Automating Twitter
Jason Snell recently explained how to use Applescript to automate the popular Twitter client Twitterific. But, with the help of some simple shell scripting, you can also send quick status updates directly to Twitter from within an Automator workflow.
Start by launching Automator and creating a new custom, blank workflow. In the Utilities category of the actions list, you'll find the Run Shell Script action. Drag it to your workflow and enter the following script into the action's text area:
curl -u yourUserName:yourPassword -d status="Tweeting from Automator's 'Run Shell Script' action!" 'http://twitter.com/statuses/update.xml'
This script uses the command-line utility curl to send a status update to Twitter. Be sure to replace 'yourUserName' and 'yourPassword' in the script with your actual Twitter username and password, and to use your own custom status message. (Don't forget to keep it to 140 characters or less!) Once you're finished, just run the workflow to post the message.
You can pass a message to the Run Shell Script action as input. (Again, keep it short.) To do this, insert an Ask for Text action before the Run Shell Script action. Adjust the Run Shell Script action's text area so it reads:
curl -u yourUserName:yourPassword -d status="$@" 'http://twitter.com/statuses/update.xml'
Adjust the first field in the Ask for Text action to whatever you want. (I use, "What are you doing?") In the Run Shell Script action, set the Pass Input drop-down to As Arguments and insert your own username and password in the script. When you run it, this workflow will now prompt you for a status update, which it will then post to Twitter.
You can insert any action that results in text before this modified Run Shell Script action. For example, you could create a workflow that uses the Find People with Birthdays and Get Contact Information actions to send out birthday greetings to friends on Twitter. You could even save a workflow like this as an iCal alarm plug-in, to be run automatically on a daily schedule.
You can also pass multiple text messages to the Run Shell Script action. To do so, change the shell script to:
for f in "$@"
do
curl -u yourUserName:yourPassword -d status="$f" 'http://twitter.com/statuses/update.xml'
done
That will loop through all the text input messages and pass them along to Twitter individually. And this is just the beginning of what you can do with curl and Twitter. For a complete list of supported commands, including usage examples, visit the Twitter API documentation wiki.
[Ben Waldie (@applescriptguru on Twitter) is author of Automator for Mac OS X 10.5 Leopard: Visual QuickStart Guide (Peachpit Press, 2008), president of Automated Workflows, and developer of the Twitter Automator Action Pack.]
» posted by ITworld staff
Macworld.com
Sign up for ITworld's Daily newsletter
Follow ITworld on Twitter @IT_world
On Twitter now
jfruh
Apple syncing patent can't come soon enough
pasmith
New Twitter features borrow from 3rd party clients
Esther Schindler
Open Source Changes the Software Acquisition Process
mikelgan
How to set up continuous podcast play on the new iTunes
David Strom
Five important Windows 7 mobility features
sjvn
Guard your Wi-Fi for your own sake
Sandra Henry-Stocker
Grepping on Whole Words
Sidekick: The Good News & the Bad News
Either way you look at it Microsoft Data Center management did not follow standards or best practices in this failure. In which case it makes me wonder more about the outsourcing of corporate data much less personal data.
- mburton325
Join the conversation here
Quick, practical advice for IT pros. Made fresh daily.
Want to cash in on your IT savvy? Send your tip to tips@itworld.com. If we post it, we'll send you a $25 Amazon e-gift card.












