The sys admin's daily grind: TTYtter
Twittering Machine
Twitter, so everyone says, is modern, fun, sociologically illuminating and otherwise useless. Even Charly feeds a budgie – but at the console, it's a question of style.
I like graphical clients – in fact, I would be lost without Thunderbird – but because I often spend hours in front of machines without X11, I keep on top of the good old command-line tools. For example, I love using the Mutt mail client, and both slrn for Usenet and Irssi for IRC run on a small root server in a screen session.
Recently, I added another animal to my console zoo: TTYtter [1]. As you might guess from the hybrid name, TTYtter is a non-graphical Twitter client. The Perl script uses either cURL [2] or Lynx [3] to connect to the Twitter API. TTYtter's author, Cameron Kaiser, who also happens to be a doctor, deliberately avoided special Perl modules like Net::Twitter so that he could run the tool on systems that are not allowed to download modules from CPAN.
I normally start my TTYtter with the following command:
ttytter -vcheck -ansi -wrap-user=Username:Password
The first parameter checks that my TTYtter version is up to date. (Kaiser is still polishing the client; version 0.9.5 was the latest when this issue went to press.) The -ansi option tells the program to use extended control characters – so the console can support a colored display, for example. The -wrap parameter gives me clean newlines after 79 characters by default.
Admin Style to the Max
After launching, TTYtter shows me the last 10 tweets and the last two direct messages. At the prompt, I can write another tweet and dispatch it. To use any of the Twitter API's other functions, I need to issue IRC-style commands preceded by a slash (/). Typing /trends displays a list of the current hot topics (Figure 1). Conveniently, TTYtter also provides a list of commands [1].
Incidentally, it is not difficult to control the Twitter API directly with cURL. The line
curl --basic --user "User_Name:Password"--data-ascii "Blafasel""http://twitter.com/statuses/update.json"
sends the text Blafasel as a Tweet under my username. In fact, this example actually has a meaningful use. For example, I just twitter any status messages from my server that are interesting, as you can see in Figure 2.
Infos
- TTYtter: http://www.floodgap.com/software/ttytter/
- cURL: http://curl.linux-mirror.org/
- Lynx: http://lynx.isc.org/
Our Services
Buy this article as a PDF
Price $2.95
Direct Download
Buy this article as a PDF
Price $2.95
Tag Cloud
News
-
FSF Outs the World Wide Web Consortium over DRM Proposal
Richard Stallman calls for the W3C to remain independent of vendor interests.
-
Debian 7.0 Debuts
The new release supports nine architectures, 73 human languages, and zero non-Free components.
-
Alpha Version of Fedora 19 Released
Fedora developers release the first alpha version of Fedora 19, known as Schrödinger’s Cat, for general testing. The final release is expected in July 2013.
-
ack 2.0 Released
ack is a grep-like, command-line tool that has been optimized for programmers to search large trees of source code.
-
SUSE Studio 1.3 Released
New features in SUSE Studio 1.3 include enhanced cloud integration, VM platform support, and lifecycle management.
-
Xen To Become Linux Foundation Collaborative Project
The Linux Foundation recently announced that the Xen Project is becoming a Linux Foundation Collaborative Project.
-
RunRev Releases Open Source Version of LiveCode
Open source version of LiveCode is now available for developing apps, games, and utilities for all major platforms.
-
OpenDaylight Project Formed
OpenDaylight is an open source software-defined networking project committed to furthering adoption of SDN and accelerating innovation in a vendor-neutral and open environment.
-
Gnome 3.8 Released
The new Gnome release includes privacy and sharing settings, allowing more user control over access to personal information.
-
Mozilla and Samsung Collaborate on New Browser Engine
Mozilla is collaborating with Samsung on a new web browser engine called Servo.
