#コメントサービスってけっこうあるんですね。
#そうなんですよね。<継続性
#スパムフィルタだけやってくれるサービスでもあればいいんですけど。
#内容を送ったらspamかどうか判定してくれる、っていう感じ?
#今でも承認が必要なコメントなんかは即時性は要求されないから、あり得るかもね。
#TypePad connect は miyagawa さんも関わってるらしいので、彼が飽きるまではつづくんじゃないかと思います。
#IEでアクセスしてるとどっかでエラーになって、以降アップデートされなくなっちゃうんだけど、どこでエラーになってるかわからん。
#ああ、最近の IE はどうなんだろう。昔はインターネットオプションかなにかの中で設定できた気がするんですが。
#あとは、1 行ごとに alert をいれるとか、よくやります。
#Tools->Internet Options->AdvancedでDisabled script debuggingをアンチェックするのはやったんだけど
#昔の文書だとViewメニューからコンソールが出るみたいなことが書いてあったんだけど、Viewメニューがどこ行ったかわからない @Vista
#あら。ああ、Alt おしてみてください。
#おおおおおおお。
#こんなところに隠れていたとは。
#そうなんですよ。
#わーいScriptDebuggerが出てきた。
#これはあれだな、RPGで隠しダンジョンを探す楽しさを与えてくれようという思し召しだな。
#イースターエッグ。
#むむ。外側のドキュメントはデバッガ内に現れるんだがiframeの中のやつにはどうアクセスするんだろう
#ああわかった。Running Documentsのところにポート番号を出してくれないから区別がつかなかった
#おお。いろいろ進化している>chaton
#IE7の問題がわかった。キャッシュのせいだった。
#キャッシュ避けにタイムスタンプつけてたんだけど、1秒以内にAjaxがリクエストを再発行するとurlが全く同じになっちゃうので
#外にリクエストに行かずに即座にsuccessga
#返る。それで無限ループ。
#とりあえずタイムスタンプ+シーケンス番号にしてみた。
#あ、よくみると、何人つないでるかもでてるんですね。
#あれ、さっき 6 人だったのに、2 人にへった、とおもったら、いま 5 人。
#画面にConnectedと出てるから発言したけど、画面に反映されず、リロードしたら反映されるようになった
#ユーザの数==Cometスレッドの数、なのかしら
#へい、今は単に生きてるComet threadの数を出してます。
#ただ、一回通信終了するとスレッド終了しちゃうので、そのクライアントから再度つながる前に処理した分についてはそのクライアントの数が反映されない
#IPとポートで接続クライアント管理して、適度なタイムアウトで取り除くようにすればもちっと正確に出ると思う。
#あと、cometサーバ時々入れ替えてるんだけど、JavaScriptの変更についてはリロードするまで反映されないので、開きっぱなしだと動かなくなることが今はあるかも。
#いずれ変更したらそれもpushできるようにするけど。
#IE7だとcomet server落としてもAjaxの方でonExceptionが上がらないみたいだな。なのでずっと"Connected"表示のままになる。
#だんだんwebデベロッパの苦悩がわかりかけてきたぜ。
#タブに未読件数を出す方法だけど、やっぱりiframeの中から外を操作するのは無理っぽい。IE7だと出来たんだけどFirefoxではpermission deniedになった。
#外側からもポーリングすればできるけどちょっとださいからなあ。
#Flash と JavaScript でも、DOM の扱いが結構違うなぁ。Flash の方がわりとわかりやすい。
#Web デベロッパは 2、3 年やってるとバッドノウハウがたまりまくるので、そうなるとなかなか足を洗えなくなってしまいますねぇ。
#どちらかというと、足を洗いたくなる ;-p
#まぁ、本職のWebデベロッパじゃないからかもしれない
#ハンパに齧るには、奥が深過ぎる症候群(笑)
#ちょっとやる分にはとっかかりがいいけど、正しくやろうとか考えるとドツボにハマって抜け出せなくなる
#そもそも「正しい」やりかたがあるのかというのが疑問
#Lingrにも書いたけどpainaいぢり中。次にtrunkにコミットするバージョンはデータフォーマットが変わります。いちおう変換できるようにするけどバックアップ推奨。
#そもそもここでIE使ってる人って何人ぐらいいるのかな>IE対応
#世間平均に比べたらIEの割合は少ないとは思うけど、さすがに無視はできないんじゃないかな。
#karettaでIEで苦労したのはtextareaのセレクション。画像アップロード→textareaのカーソル位置に画像リンクマクロ挿入っていうのがIEだとうまくいかなかった。差異を吸収するライブラリで解決。
#まあ、簡単にハックできる範囲までで止めときます。運用でカバーできるなら厳密に振る舞いを合わせることもないでしょうし。
#IEやFirefoxの差異を吸収できるUIライブラリで有望なものはありますか?>とおる。
###これはまだか
#んー、わかりません。
#Yahoo UI とかはどうでしょうか? ぼくはさわったことないけど。
#ぼくは HTML から Flash に逃げたので、足も洗いやすいです :D
#karettaではscriptacurus.jsを使いました。現状で良い選択だったかどうかは不明です。当時はyahoo UIは癖がありそうな印象でした
#UI はそれぞれ哲学があるので、どうしても癖がでちゃうんじゃないでしょうかねぇ。
##自前で comet サーバを持たずに全部 CGI で実現するチャットをつくってみました。
#JavaScript は手書きです :)
#おー、CGI読みに行ったところで待つわけかな。
#実はpullの方で適切にタイムアウトしてやったら、CGI自身のタイムアウトにひっかからないかも。
#chatonも、今はcomet接続の方、何も変わってなくても30秒で一回返事を返すようにしてる。
#というのは、ブラウザが終了しちゃったことっていうのをcomet側で検出するのに、ソケットに一回書いてみないとわからなかったから。何か他の方法あるのかな? (selectでは判別できなかった)
#なのでファイルが変更されるまで待たせることにすると、待ち続ける接続がどんどん増えるばかりで減らない。
#まあ、CGIでやる場合はhttpdのリソースも食うことになるからそこが問題になるかもしれないけど。
#テステス
#ちょこまか変えたのでまだ見てる人はリロードしてください
#未読数どうしようかなあ。
#テステス
#Wee.
#same originにするためにリバースプロキシ使うと、結局Apacheのコネクションを占有することになるのか。
#lighttpd + FastCGI とかがいいのかな。
#どっちにせよhttpdのコネクション占有するなら、とおる君のみたいにCGIでも構わないかもしれない。
#まあ専用cometサーバにしておくとファイル内容は一回だけ読めばいいんで効率はいいけどね。