2007年12月26日
アイテム情報収集の説明の下書き
書きかけですが、アイテム情報収集のサイトに関する説明の下書きです。
★SecondLife商品情報自動収集システム
2007-12-28
march Korda
1.本システムの概要
本システムは、Secondlife内で販売されているオブジェクト(以下、商品)に
関する情報を自動的に収集して本システム内のデータベースに格納し、
WEB画面から検索し販売場所にテレポートできるようにするシステムである。
2.仕組みの簡単な説明
2.1.
本システムには大きく2つの処理がある。
(1)SIMに接続し、商品の情報を取得して、本システムのデータベースに格納
する
(2)ブラウザから商品検索条件を受け取り、該当する商品情報をブラウザに返
却する
2.2.データフロー
図1を参照
3.収集するデータ
3.1.収集項目
0L$以上で販売されている商品に関する以下の情報を収集する
・名前
・説明書き
・置かれている場所(SIM名+X値+Y値+Z値)
・販売価格
・販売形式(Original/Copy/Contents)
・使用されているテクスチャのうちの1つのUUID
・使用されているテクスチャのうちの1つの画像
・商品のオブジェクトUUID
・所有者のUUID
副次的に以下の情報を付加する
・アイテムID(本システムの内部管理用の番号)
・情報収集日
3.2.収集場所
あらかじめ指定した場所にテレポートし、その近所にあった商品の情報を
収集する。
これは他人のプライベートエリアに進入しないための配慮であると共に、
有名店や注目店の情報のみを取得するためである。
4.課題
・箱詰めされていない商品の場合、テクスチャを見ても商品の外見が分から
ない。
(例:ぬいぐるみの実物を置いて販売している場合、ぬいぐるみの材質(使っ
ているテクスチャの代表)は分かるが、そのぬいぐるみが犬なのか熊なのか
は分からない)
・TP地点の近くにあるのに情報収集できていないアイテムがある
・UUIDを指定しても取得できないテクスチャがある
・検索をLIKEの中間一致でおこなっているため、レコード数増加により
性能が劣化する
・商品をRezするタイプのベンディングマシンがあると、
RezするたびにUUIDが異なるため、異なるアイテムと見直してしまい、
同じ商品が複数登録される。
5.開発者向け資料
5.1.構成技術
・Secondlifeからのデータ収集にはlibsecondlifeを利用した。
・libsecondlifeのドライブにはIronPython(FePy)を利用した。
選定の理由は、Secondlifeに接続して手探りでlibsecondlifeの挙動を
確認する際に対話型言語の方が開発スピードが速くできると考えたためで
ある。
・サーバ構成ソフトはmysql+PHPとし、当節の一般的な環境で構築できること
を目指した。
・サムネイルの作成にはImageMagickを利用した。
5.2.ファイル・ディレクトリ構成
5.2.1.収集用PCディレクトリ/ファイル構成
5.2.2.サーバディレクトリ/ファイル構成
5.2.3.CSVファイル
5.3.データベース構成
5.3.1.テーブル一覧
5.3.2.テーブル構成
5.3.3.データの重複判断と更新
同一商品(オブジェクトのUUIDが同じ)を別な収集日に収集した場合は、
収集日が古いほうを削除する
5.3.4.シーケンスもどきの実装
5.4.画面構成
5.5.機能一覧
5.6.試験済み項目
Posted by march at
22:55
│Comments(0)