Skypeを流し読みするツールを作ったよ!

「明後日引っ越すのにプログラム書いてる時間なんか…ないんだから・・・!」
という状況下のやっつけ仕事なので、自分専用にするつもりで最初は配布目的じゃなかったです。
「でもせっかく作ったんだし、他にも使う人いたらいいな!」という趣旨のもと日記に晒してみる。


これ何?

Skypeの全てのチャットウィンドウを一つの画面にまとめて表示します
おまとめローンとか一括〜〜とか流行ってるしね!
サブディスプレイ用に流し読みに最適!

機能

  • 発言/人の検索
  • ハイライト表示 (検索バーにhighlightと打ちこんでみると設定できる)
  • 発言者にマウスを近づけると、その人の発言リストがツールチップで表示される
  • 選択されたウィンドウへの返信

動作するかもしれない環境

  • JDK5.0以上
  • Winなら多分動く/Linux/Macだとswtのライブラリが必要かも(探してきてlibに入れてください)
  • そこそこ新しめのPC
  • Skypeインスコされていて、起動中のこと

ダウンロード

>>ココ<<

起動時に、Skype側から「このソフトを起動してもいいですか?」みたいなのが現れたら「はい」にしてください。
あとSkypeAPI経由でのアクセスでたまに時間がかかることがあります。

その他

  • 検索バーにhelpと押すとhelpページに飛ぶ
  • ソースコード(きちゃない)
  • 突貫で作ったので、テストほとんどやってないのできっとバグだらけ><
  • 誤爆に注意
  • インスパイアしてくださる方がいらしたら、ぜひぜひ!!! (これはショボイのできっと改善の余地ありまくりんg

SkypeAPI使ってごにょると楽しいよ!

「今このウィンドウにいる参加者、リストアップしたいなー」
 ↓
つ「ほらよ!」
 ↓
「(°O° ;) おおお、はえええ!」

が簡単にできたので、SkypeAPIおもしろいよ!を紹介してみる。


http://forum.skype.com/lofiversion/index.php/t35713.html
http://skype.sourceforge.jp/

その他いろんな言語のバインドが出てるっぽいよ!

僕はEclipse+Java大好きっ子なので、今回はそれを紹介するね!

環境構築

  1. ダウンロードファイル一覧 - Skype4Java(旧Skype API for Java) - OSDNからAPIをダウンロード!
  2. Eclipseに解凍したもんをそのままプロジェクトラリエクスポート
  3. 実行→実行ダイアログ→環境タブ→新規(変数:PATH,値:(プロジェクトのパス\lib\swt))

文頭の例のプログラム

Skypeを起動させた状態で


public class メンバリスト{

public static void main(String args[]) throws Exception {
new メンバリスト();
}

メンバリスト()throws Exception {
Chat chats[] = Skype.getAllActiveChats();
for (Chat chat : chats) {
User users[] = chat.getAllMembers();
for(User user: users) {
System.out.print(user.toString());
System.out.println("\t"+ user.getAbout().replace('\r', ' ').replace('\n', ' ') +
"\t" + user.getHomePageAddress());
}
System.out.println("\n\n\n");
}
}
}


こんな感じで、実行すれば、ポンと参加者リストがテキスト形式に!!

User#getBirthDay()を使って、誕生日リストを作ってみたり、他にもいろいろ遊べそうだよ!
みんなも使ってみてね!!


それと昔、あさだボットをインスパイアしたやつも作ってたのでついでにソース載っけとく!!

>>あさだボットをインスパイアしたもののソース<<
このbot動かしておくと、誰かがURLつきの発言したらそのページのtitleタグの中身を返すよ!
ソースすんごいきたないけどね!!

実況ったーの統計

 今朝の読売新聞23面に『「上から目線」テレビに反感』というタイトルで、若者が最近テレビを嫌っていたり見ていないという内容の記事があった。内容は、「今の時代はネットがあるから」「批判的物言いへの不信感・嫌悪」などのよく言われがち考察だったが、今はてな近辺で流行ってる(?)「上から目線」がタイトルに含まれていたのでふと目がとまって、なんとなくテレビに対しての自分なりの考察をまとめたくなった。

 そこでせっかく動かしているTwitterbot実況ったー(@jikkyo)を使って、集計を取ろうじゃあないか!と思いついたわけです。

実況ったーの稼働率

 2ch側が不安定だったり、Twitterが落ちていたり、はたまたサーバのコンセントが抜けたりなどが過去にあって、信頼性はそんなには確保できてないと思うので、他実況まとめサイトとの比較で稼働率を調べてみることにした。

http://www.tv2ch.info/?prgrankと実況ったーの2008年からの最大瞬間レス数と比較し、どれくらい漏れがあるか調べる。


www.tv2ch.infoと実況ったーの検出率




www.tv2ch.infoが1094res/min以上しか載っていないのでサンプル数が少ないがこのグラフから察するに、
今年入ってから、21.17件(21件ないしは22件)1094res/min以上の番組があったと考えられる。
とすると実況ったーの稼働率はおよそ85%となる。それくらいの精度のお話ってことでよろ!

ジャンル分け

wikipedia://番組名」を参照しつつ手動でジャンル分けする。

映画,バラエティー,アニメ,スポーツ,特撮,ニュース,ドラマ,その他 に分類した。


すると700res/minを一瞬でも超えた番組をジャンル分けすると、次のような結果になった。
(生ログはこちら)


ジャンル 番組数 備考
アニメ 14 ガンダム5回,ヤッターマン/サザエさん2回
バラエティー 9 特番強し
映画 7 洋画は沈黙の戦艦,エイリアンvsプレデターの2つ
スポーツ 6 サッカー×2,相撲×2,駅伝,国際マラソン
ニュース 5 朝4つ、夜は報道ステーション1回のみ
ドラマ 3 NHK連ドラ,のだめ正月スペシャル,以外では鹿男あをによしのみ
特撮 2 仮面ライダーキバ×2
その他(生活情報・ゆくとしくる年) 2 生活ほっとモーニングはその他かなぁ

考察

ドラマ見なくなったってのは、これらからもわかるね。
昔は「昨日のドラマでさー」という話題が可能だったのかもしれないけど、
最近ではよっぽどの話題性がないと見ないのだろう。

2ちゃんねらーがアニメよく見てるってのは想像つくけど、
アニメは1〜2クールで終わるTX系のアニメばっかりになるのかというとそうではない、
サザエさん*2、コナン、ガンダム*5、ヤッターマン*2など老舗|リメイクものばかりだった。

バラエティーはといえばタイトルに"SP"が含まれるものが4つ含まれていて、そういうので一瞬炎上したのがPOSTされたのかもね。

映画は「耳をすませば」が1997res/minで大ヒット。洋画よりも、デスノ電車男・「それでもボクはやってない」など邦画って言われてみれば結構見てるんだなーと統計取ってみて気づいた。

スポーツは、相撲以外は予想通り。相撲って意外と見てる人いるのかなー。(問題あったからなのかな?)

まとめ

  • テレビいらなくね?論がネットではよくあるけど、案外サザエさんとかコナンとかゴロゴロ見てる人多いんじゃーないの?
  • 最近では趣味の多様化で話題の共通項を探すのが困難になってきたっていうけど、とりあえず話題を探す場合は、サッカーと実写化された漫画を押さえておけば若者だとトークできるかも! 逆に「昨日やってたドラマがさぁ」と言っちゃうと「なにそれー」になっちゃうのかな?

IM Historyを使ってみた

IM Historyとは、MSN Messenger,Yahoo Messenger, Skypeなどのログ一元管理ソフトです。
導入、使用方法、スクリーンショットなどはこちら

良い

  • UI分かりやすくて検索しやすい
  • 必要なら他のPCとも同期取れる
  • 同一人物の紐付け可
  • Skypeの場合、削除された発言も見れる

悪い

  • ブラウザ上からも管理できるっつーことは送信されてんのかな?(https://my.im-history.com/ というアドレスから見えるようになる)
  • 常駐ソフトがまた増える
  • Vistaの場合インストーラーが途中で失敗した。(でもなぜか動いてた)
  • このソフト入れる以前のデータは(多分)見れない

インストール

メルマガやソフトウェアアップデート通知メールの登録チェックボックスがデフォルトだとチェックされているので、必要でない方は外す。あとは普通にー。
初回起動時にupdateが固まるように見えることがありますが、これはブラウザでIM-historyの認証ページにログインすると治ります

紐付けに関して

こんな感じになります
方法はContactsで紐づけしたいユーザを開いて3つある小さいボタンのうち一番右にある(contacts deatails)をクリックしてそのユーザの詳細を開いた後、他のユーザを見ると3つだったボタンが4つになって(add to metacontact)なるアイコンが出てくるのでそれをクリックしてください。

その他

GoogleDeskTopSearchと何が違うの?
特化してるあたりとか、Skypeがあるあたりとか(GDSでもできるのかな?)。

  • このソフト入れる前のログは見えないっぽい

もしも1日が10万秒だったら…を作ってみた

1日は60秒×60分×24時間=86400秒ですが、なぜ10進法じゃないのか子供の頃疑問に思った方も少なくないはず。
そこでもし1日が10万秒だったらどうなるか?を作ってみました。




→→もしも1日が10万秒だったら…←←





100秒で1分、
100分で1時間、
10時間で1日という時計。

86400秒から10万秒にするにあたり、ちょっとだけ1秒あたりの時間が短くなっています。
また従来の時計では午前と午後という概念がありましたが、この時計では1周が1日です。
午前の話?午後の話?と話がややこしくなる心配もありません。

1日が10万秒になるとちょっとおもしろいかもね!

TwitterのBot作ろうぜ! (実況ったーのソースとか

実況ったーを作ったよ! - とて日記で作ったやつのソース置いておきますね^^

パスワード消したからそのままじゃ動かないけど、何か自分でもBot作ってみたいなぁって人がいたらこんな感じで作ればいいんじゃないかな!っていう紹介日記だよ!


ソース


ソースコードの作成時間とかTwitterを見てみると、
12/16 2:45に思いついて、3時30分に作り始めて、7:30には初版ができてたみたいだよ!

取り立てて急いでやったとかではなくTwitterにPostしながら、曲聴きながらだったよ。

なので自分の好きな言語で書いちゃえばみんなも気軽にできるんじゃあないかな!

詳細はreadMe.txtとかで。

JavaでMSN Messengerクライアントを動かす

今から15ヶ月ぐらい前に作ったものだけど、自分のHPで公開しても(Googleクロール来ないから)ヒット数少ないので、はてダのほうでも公開してみますね。


名付けてとてメッセ

メモ帳風味で職場や授業中にこっそりメッセすることができます。
(受信ポート1863に制限がかかっている場所では使えないみたいです)

でもはてダ界では、それよりも需要ありそうなのが・・・
ソースコードも公開してますよ!です。
Javaドキュメント

この記事はどんな人対象?

例えばTwitterメッセンジャーをごにょごにょしたなんかを作りたいよ!とか、
メッセンジャーで人口無能botを作りたいよ!とかだね。

できること

  • ステータスの変更 (オンライン・退席中・オフラインなど)
  • 名前・パーソナルメッセージ(名前の後にあるやつ)の変更
  • チャット

できないこと

  • ファイル送受信
  • アバター(アイコン)表示
  • 音声・手書きメッセージその他付随のアプリケーション

サンプル

public class MessengerTest implements MessengerListener {

public MessengerTest() {
Messenger messe = new Messenger("testuser@hotmail.com", "password");
// メッセンジャーリスナーに登録する
messe.addMessengerListener(this);
// サインインする
messe.connect();
}

// MessengerListenerの実装
public void getList(MemberList li) {
System.out.println("メンバリストを受け取りました");
}

public void changedStatus(Member member) {
System.out.println("メンバ\t" + member.toString() + "が状態変化しました");
}




以下リスナの実装

要は

  1. Messengerクラスでメッセンジャーサーバになんか要求を出す
  2. メッセンジャーサーバからのレスポンスはコールバックインターフェースのMessengerListenerを継承してやり取りする

です。


追記:12/24 12:07
Java MSN Messenger Libraryとやらがあるそーです。多分そっちのほうが便利かも・・・orz