PC上のSkypeログをPHPで抽出してみた(2)
↑これの続き
プログラム
色々改善しました。
改めて使い方
- コマンド
$ du --si main.db
668M main.db
$ php skyperead.php
Usage: php skyperead.php
$ php skyperead.php main.db
$
- 結果
$ ls skypelog/ | wc
487 511 17578
$ wc skypelog/topicmap.txt
431 602 31915 skypelog/topicmap.txt
$ wc skypelog/usermap.txt
718 1187 25773 skypelog/usermap.txt
$ du --si skypelog
501M skypelog
ファイル振り分けルール (各々、.txt の拡張子が付きます)
- グループチャット (3名以上参加しているチャット)
- トピックがついている場合はトピックをファイル名に
- トピックが無い場合は、内部ID をそのままファイル名に (#〜_$〜;〜)
- プライベートチャット (2名参加しているチャット)
- 相手のユーザ名をファイル名に
- 相手のユーザ名が分からない場合は skypeid で (spam とかは多分このパターン)
- ムードメッセージやファイル転送などは、自分の名前がファイル名
- usermap.txt に skype名とユーザ名の一覧
- topicmap.txt に 内部id とトピックの一覧
前回の問題点
色々な条件でメッセージが意図しないファイルに振り分けられる事がありました。
- 大丈夫なもの
- トピックのついたグループチャット
- 相手から話しかけられたプライベートチャット
- 前回駄目だったもの
- トピックのついてないグループチャット
- プライベートチャットで自分から会話を始めたもの
- コンタクトが送られたけど無視したもの
- ムードメッセージチャット
改善点
ファイルへの分別がうまく行かないケースを幾つか修正
処理の概要
今後の課題
- 複数の main.db 対応