Red5::11.簡単なチャットアプリを作成する(その1)11.簡単なチャットアプリを作成する(その1)それでは、これまで解説したことを元に簡単な動画配信機能付きチャットシステムを作成したいと思います。第一段階として、ハンドルネームを入力してサーバーにログインする仕組みを作成します。今回新たに追加されたRed5側の処理は、同一ハンドルネームのユーザーがログインしてきたら、接続を拒絶する処理です。サンプルで動作を見てみるRed5側で接続したユーザーを切断する処理は、rejectClient("same_handle_name");と書きます。引数は切断した際にクライアントに渡すことのできる値です。切断理由などを渡すのがおもな用途になると思います。reasonObject);のように接続クライアントを拒否した際に第2引数で値を渡せるのと同様ですね。サーバー側のコードは以下のようになります。JAVAの文字列比較がわからず==演算子で比較してしばらく意図通りに動かずに悩んだのは秘密です。}}Flash側はちょっといままでよりファイル数が多くなります。SimpleChat(this);今回は全てのファイルをSimpleChatというディレクトリ以下に配置していますので、上のようにimportしてNewします。fla側でNewした、全体を制御するSimpleChatクラスを見てみましょう。}}LoginFormクラスは、ActionScript3のコーナーで解説しましたが、リンケージを使っています。"ハンドルネームは6文字以内で設定してください。}}ActionScript3のコーナーのコードにログイン処理用の表示処理が加わっています。次にRed5と接続するNetConnection部分、NetConnection.Connect.Rejected内でRed5サーバーからの値を受け取っています。}}RTMPの情報を、設定用クラスから取得しています。Newしないでクラスから値をもらうために、変数がstaticで宣言してあるところが、強いてあげるならポイントでしょうか。文頭でも掲載しましたが、サンプルは以下のようになります。サンプルで動作を見てみる参考書籍FlashMediaServer開発のアンチョコ1.Red5について2.Windowsにインストールする3.FreeBSDにインストールする4.接続人数を返すアプリケーション作成(Win)5.Red5に映像を録画するサンプルプログラム6.Red5のログ保存方法7.サーバーのメソッドを呼び出す8.クライアントのメソッドを呼び出す9.接続クライアント全員のメソッドを呼び出す10.接続クライアントの情報を保持する11.簡単なチャットアプリを作成する(その1)12.簡単なチャットアプリを作成する(その2)13.簡単なチャットアプリを作成する(その3)14.意味無くまわしてみた・・・15.データベース(MySQL)と接続する16.AIRチャット(β未満)を公開します。17.AIRチャット(β)修正18.EclipsePlugin導入方法19.xuggleプラグインで遊ぶつもりが遊ばれてみる20.クライアント・サーバー間の通信作法まとめ(1)ActionScript3Papervision3DFlashMediaServerRed5WowzaMediaServerトッププログラミング書籍紹介サイト製作四方山噺Macブログ。