nDiki
2008年2月25日 (月)
■ Twitter への書き込みを自動的に Skype ムードメッセージに設定する

Linux for Skype の Skype API は D-Bus を使ってアクセスすることができる。 Debian GNU/Linux sid 上の Skype for Linux 2.0.0.43 で、Perl スクリプトから自動的にムードメッセージを更新するようにしてみた。
Skype が起動している状態で以下のスクリプトを実行する。
#!/usr/bin/perl
use strict;
use warnings;
use Net::DBus;
use URI::Fetch;
use XML::RSS;
use Date::Parse;
my $id = '自分の Twitter ID';
my $time = time;
my $fetch_response
= URI::Fetch->fetch(
"http://twitter.com/statuses/user_timeline/$id.rss?dummy=$time")
or die URI::Fetch->errstr;
my $rss = XML::RSS->new;
$rss->parse($fetch_response->content);
die 'no items' if @{$rss->{items}} == 0;
my $item = $rss->{items}->[0];
my ($sec, $min, $hour, $mday, $mon, $year, $wday, $yday, $isdst)
= localtime(str2time($item->{pubDate}));
my $title = $item->{title};
my $mood
= sprintf("[%02d/%02d %02d:%02d] $title", $mon + 1, $mday, $hour, $min);
my $bus = Net::DBus->session;
my $service = $bus->get_service('com.Skype.API') or die;
my $invoker = $service->get_object('/com/Skype') or die;
my $response = $invoker->Invoke('NAME twitter2skypemood');
die $response if $response ne 'OK';
$response = $invoker->Invoke('PROTOCOL 5');
die $response if $response ne 'PROTOCOL 5';
$response = $invoker->Invoke("SET PROFILE MOOD_TEXT $mood");
のようなダイアログが表示されるので、「この選択を記憶する」をチェックして、はいを選択。
そうすると RSS フィードとしてとってきた 自分の Twitter メッセージが、Skype のムードメッセージに表示される。自分の環境では日本語も問題なく表示される。
うまくいったので cron で定期的に更新するようにしてみた。
@ 追記
- Twitter への書き込みを自動的に Skype ムードメッセージに設定する for Windows (2008-08-05)
- 今日のさえずり - Twitter 日本語表示みた (2008-04-23)
- 今日のさえずり - 「深呼吸してください。」が無くなったのは残念 (2009-09-24)
- Twitter を使い始めて1年 (2008-04-06)
- Plagger で Twitter のあれこれをメールで通知 (2008-12-25)
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザインProcess Time: 0.234597s / load averages: 1.15, 1.20, 1.06
nDiki by WATANABE Yoshimasa (Naney, Google profile)
Powered by DiKicker
Base theme by Nana (for tDiary)


◇ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。
◇ 2GB 無料のオンラインストレージサービス Dropbox に次のリンク先から登録すると今なら 250MB プラス! → Dropbox