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

半年ぐらい前に Skype for Linux で Twitter への書き込みを自動的に Skype ムードメッセージに設定するスクリプト(記事)を作って cron で 10分毎に更新するようにした。
Windows BOX 上 Skype を使っている時も同様にできるように、Skype4COM を使うバージョンも書いてみた。 D-Bus ではなく Skype4COM を使うようにすることと、Skype4COM にはシフト JIS の文字列を渡すようにすること以外はほとんど同じ。
Skype4COM の DLL を登録し、Skype が起動している状態で以下の Perl スクリプトを実行。
#!/usr/bin/perl
use strict;
use warnings;
use Win32::OLE;
use URI::Fetch;
use XML::RSS;
use Date::Parse;
use Encode;
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("$title [%02d/%02d %02d:%02d]", $mon + 1, $mday, $hour, $min);
$mood = Encode::encode('shiftjis', $mood);
my $skype = Win32::OLE->new('Skype4COM.Skype');
$skype->Client->Start unless $skype->Client->IsRunning;
my $profile = $skype->CurrentUserProfile;
$profile->{MoodText} = $mood;
インストール済みだった ActivePerl 5.8.8.822 で動作を確認(ちなみに現時点での最新は ActivePerl 5.10.0.1003)。なお URI::Fetch、XML::RSS、Date::Parse(TimeDate) は標準では入っていないので PPM パッケージでインストール。
タスク スケジューラで10分毎に上記のスクリプトを wperl.exe で実行するように設定。 これで Windows 上でもさえずりをムードメッセージに設定できるようになった。
- Twitter への書き込みを自動的に Skype ムードメッセージに設定する (2008-02-25)
- 今日のさえずり - 時報というやつも初めて見た (2010-01-25)
- Twitter ステータスを nDiki サイドバーに表示 (2007-11-09)
- ちょっと複雑なネット用統合アドレス帳 Ripplex (2008-04-30)
- PAR::Repository でビルド済み Perl モジュールをネット... (2006-12-12)
■注目キーワード
購入 買った 発売日 フリー 無料 価格 値段 作り方 選び方 使い方 方法 設定 サンプル ダウンロード 限定 在庫 予約 穴場 比較 検証 レビュー 感想 評価 評判 使用感 使ってみた 口コミ 噂 最新 MP3 動画 意味 お薦め お勧め おすすめ 便利 Blog ブログ mixi 修理 デザイン ビックカメラProcess Time: 0.210279s / load averages: 0.45, 0.29, 0.21
nDiki by WATANABE Yoshimasa (profile)
Powered by DiKicker
Base theme by Nana (for tDiary)




■ Twitter やってます。この記事が気にいったらぜひ twitter.com/Naney の follower になってください。
■ Google Buzz はよろしければ Naney の Google プロフィールからどうぞ。