Skype的ログ持ち回りチャットシステムのアイディア
サーバーが楽するチャットシステム。
モチベーション:
実装の方針:
Aerial + SharedObjectのデモをベースに。
- チャットのログはクライアントが持っている。FlashのSharedObjectに保存。Deflateで圧縮しておけば結構入るんじゃないか
- ↑これだけでは、自分が見ていない間に発言されたログは読めない。そこで、チャットに参加した時点で「〜時〜分から今までのログを送ってくれ」とサーバーに要求する
- サーバーはログを持っていない。要求をそのままクライアントに中継
- クライアントは適当に自分が持っているログを返してやる。ここのところ、効率よくログを収集できるようにうまいことやる
LingrやIRCとつなぐゲートウェイも書けば参入しやすいんじゃないかと。ファイアウォール問題は、443/tcpでSSLに偽装するか、IPを2つ用意してAerialも80/tcp待ち受ける。
IPが2つと言っても、Aerialが使えればCGIなんて不要なので、片方のIPは静的なHTMLとかJSとかが配れればいい。どこかのレンタルサーバーにでもDNSを振っておけば安上がりなんじゃないか。Flashでクロスドメインは普通に可能。
サーバーは極めて暇。ストレージも要らない。ただし同時接続数は多い。
実装上の問題は、
の3点。最後のやつがもっとも厄介か。Lingrがpolicy-file-requestに応答してくれればFlashでLingrクライアントが書けるんだけどなぁ
いや、専用クライアントが要らない時点で、Lingrにはユーザーをつなぎ止めておく手段がないんじゃないか。それを考えればLingrとのゲートウェイは要らない。