はじめに
業務系アプリケーションに組み込み可能な、カスタマイズ可能なチャットシステムです。一定のメンバーのみがパスワードで保護された状態で会話(チャット)をすることも、メンバーを問わず自由に書き込めるチャット板を作成することも可能です。
チャットのエンジン部分から、スクラッチで作成しているため、様々なカスタマイズのニーズにお応えすることができます。この例では、画面いっぱいにチャット画面が表示されていますが、業務システムの特定のフレームにチャット機能を組み込むことも、もちろん可能です。
とにかく触ってみたいという方は こちら
3名以上でチャットをしている例

チャット板選択画面
どのチャット板にログインするかを選択し、名前を入れてログイン。
パスワードが必要な場合は、パスワード入力エリアが表示されます。

基本的なチャット機能
フルスクリーンで鑑賞ください。まず、基本的なチャット機能について確認します。
(IEでは正しく動画が再生されないようですので、申し訳ございませんが、Firefox、Google Chromeでご確認ください)
マルチチャットボード対応
サイトを訪れたユーザーはまず、どの話題(チャットボード)にログイン(入室)するかを選択します。ログイン後は、直近の数十データが表示されます。
カスタマイズ例(証券コード対応)
証券コードにコロンをつけて入力をすると、銘柄情報、銘柄へのリンクが表示されます。
カラーリング対応
ログインユーザー毎に異なる色で表示されているので、どのユーザーの発言かの区別が容易にできます。(現在は5色としていますが、色を変更したり、増やすことは可能です。)
その他
アイコン、絵文字、禁止ワード等については、今のところ実装していません。
チャットボード登録(管理機能)
管理機能である、チャットボード登録機能をご確認ください。
ソート、フィルタリングを備えたチャットボード登録機能
見やすいグリッド表示、フィルタリング、ソート機能を備えたチャットボード登録機能。データはサーバーのMysqlデータベースへ保存されます。
同時100ユーザーの仮想接続
仮想的に同時100ユーザーの環境をエミュレートしてみます。100人のユーザーがランダムな間隔で投稿発信します。
過負荷状態における表示確認
過負荷状態において、正しくチャットの投稿が表示されていることをご確認ください。
過負荷状態におけるチャット機能の挙動確認
過負荷状態において、投稿を行ってみます。正しくチャットの投稿が表示されていることをご確認ください。
掲示板毎に異なる情報が表示されているか
掲示板毎に異なるユーザーがログインしており、異なる投稿が表示されていることをご確認ください。
その他
負荷テストは、負荷テスト用プログラムを使って容易に実施できます。実行するユーザー数を変えて確認してみることももちろん可能です。
対応ブラウザーについて
IE10以上、Google Chrome、 Firefox、Safariであれば問題なく実行できます。
最近のブラウザーであれば、どのブラウザーを使っても問題なく実行できます。
IE9以前のブラウザーは Flashプラグインがインストールされていれば動作します。
IEに関しては、最近までは他のブラウザーより機能が劣っていたので、IE9以前の環境で利用する場合は、Flashプラグインを必要とします。(おそらくたいていの環境にインストールされているはずです) またIE6、IE7などは CSSが正しく機能しないため、チャット機能は動作するがレイアウトが若干崩れるという現象が発生すると思われます。
iPhone標準ブラウザーで動作
iPhoneであれば、標準ブラウザーで実行できます。ただし、PC版のページでは閲覧・投稿は可能ですが、モバイル対応しているとは言えない状態です。iPhone用にページを用意し、モバイル用CSSのレイアウトを作成する必要があります。
AndroidはOSのバージョンに依存
Androidは標準で搭載されているブラウザーで動く場合、動かない場合があるかと思います。(Android OSのバージョンに依存) AndroidにFirefoxなどをインストールしている場合は、閲覧・投稿できます。ただし、こちらもiPhoneと同じでモバイル用の対応が必要になります。
技術的なバックグラウンドについて
最新のテクノロジーであるWebSocketを利用してリアルタイムチャットを実現
WebSocketに対応していない古いブラウザー(IE9以前)においてもFlashフォールバックで利用可能
インメモリデータベースによる高速な動作
ノンブロッキングIOによるハイパフォーマンスシステム
実際に触ってみる!
チャットシステム公開URL
http://lovelinux.mydns.jp/fncchat/boardmasts/select
リストからチャットボードを選択し、任意のユーザー名を入力してログインしてください。
チャットボード一覧が表示されない場合は、ブラウザーのリフレッシュボタンをクリックしてみてください。

Leave a comment