風柳メモ

ソフトウェア・プログラミング関連の覚書が中心。

簡易チャットシステム「れとろ・ちゃっと」の説明

昨日の記事はちょっとあんまりかな、とも思うので、普通に説明記事を。
認証用にTwitterを使い、チャットルームを作成でき*1、参加者と会話を交わせる簡易チャットシステムです。

  • チャットに参加中は、参加者以外のタイムラインが流れることはないので、特定人との会話に集中出来ます。
  • ログはテキストでダウンロードできます。
  • 話した内容は、Twitterに記録することもできます(サンプルサンプル)。

トップページ

 れとろ・ちゃっと

ログイン(共通)

  1. 右上または「操作」欄にに有る“Twitterアカウントでログイン”リンクをクリック。
  2. TwitterのOAuth認証画面にて(使いたいアカウントであることを確認し)[許可する]ボタンを押す。

自分のチャットルーム作成

  1. トップページの「操作」欄にある“自分のチャットルームを開設/設定変更”

  2. 「ルーム名」入力、「入室条件」及び「Twitterへの投稿(する/しない)」を選んだ後、[新規開設]ボタンを押す*2

  3. 正常に作成されたら、“入室”リンクよりチャットルームに入室出来る。
    また、作製したルームの設定[変更]や、ルームの[削除]も出来る。

    “ログ”リンクは、当該チャットルームのテキストログ(最新1000件まで)。Twitterへの投稿が有効であれば、“URLリスト”“はてな記法”形式のツイートIDリストも取得可能。

他の人のチャットルームに参加

  1. トップページの「操作」欄にあるフォーム(ID (screen_name):〜さんが開設したチャットルーム)に、対象となる相手のTwitter ID(screen_name)を入れて、[参加]ボタンを押す。

    自分に参加資格のあるルーム一覧が表示されるので、目的のルーム名のところのリンクをクリックして入室する。

    “ログ”リンクは、当該チャットルームのテキストログ(最新1000件まで)。Twitterへの投稿が有効であれば、“URLリスト”“はてな記法”形式のツイートIDリストも取得可能。

  2. トップページの『入室できるチャットルーム一覧』には入室可能なルームのリストが表示されているため、ルーム名をクリックして直接入室することも出来る。

チャットルーム

  1. 下のようなチャットルームが表示される。

  2. 下部のフォームから発言を投稿すると*3、各人の画面上部のログ欄に随時発言が表示されていく。
  3. Twitterへの投稿が有効になっているチャットルームの場合、発言はTwitterへも投稿される。その場合、便宜上
    『@直前の人のscreen_name 本文 [ルーム名 No.シリアル番号]』
    のように、直前の人への言及(in_reply_to_status_idの付いたmention)の形となる(投稿に失敗したり意図的にツイートを削除したりしない限り、最新の投稿から発言を遡って行くことが可能)。
  4. チャットルームの上部の“ログ”リンクより、テキストログが取得可能。
    また、Twitterへの投稿が有効になっている場合、“URLリスト”よりURLのリストが、“はてな記法”より、はてなのTwitter記法のリストが、それぞれ取得出来る。
  5. ログ欄は通常、自動スクロールするが、□自動スクロールのチェックを外せば停まるので、スクロールバーで過去発言確認可能。
  6. 右欄は現在の参加者*4。クリックすると「@〜」がフォームに入力される。
  7. ちょっと席を立ってすぐ戻るような場合、□にチェックを入れると、右欄に(離席中)と表示。
  8. TRPG用(笑)に、mDn(mはダイス数:1〜999・nは面数:1〜999。例:2D6)だけ打って投稿すると、retro_chatからダイスを振った結果が返る。

覚書とか

考えるだに負荷が高くなりそうなアプリケーションなので、今はどんなものか様子見中。
まぁ、こんなのを使おうとする人も少ないと思うんだけれど……。

*1:このとき、ホワイトリスト方式=特定アカウントのみ参加可能、と、ブラックリスト方式=誰でも参加可能、ただし特定アカウントを除く、のどちらかを選べる

*2:今のところ、作成出来るルームは3つまで

*3:1回の発言文字数は100文字まで

*4:現状、10秒間隔でポーリングしており、3分間反応がなかったものは退室したと見なしている、onunloadを監視し、チャットルームから移動した場合退室とみなす。