Cocomoを遊んでみた。+サンプル10個

簡単に動画チャットやチャット、らきがきボードやファイル共有ができるCocomo。
今回遊んでみたのでメモでっす。
Cocomo

一日触ってみた感想ですが、これはRed5(FMS)とBlazeDSのいいとこどり+便利なクラスな感じ。
動画チャットもできるし、オブジェクトの共有もできる。チャットなんかメイン部分1行。
Red5ではサーバーが必要で自前で用意しないといけなかったものが、Adobeが用意してくれるので、導入にかなり敷居が低くなった感じ。
ただ、動画の保存には対応していないっぽく、この辺はRed5などでやったほうがいいと思う。

簡単なCocomoの使い方+作り方

まずはCocomoサイトにログイン
Cocomo

アカウント持ってないかたはこの際だからゲットしちゃいましょう。
SDKファイルをダウンロード

解凍すると「lib」フォルダに Flexで使えるライブラリcocomo.swc ファイルが出てきます。

このswcファイルをFlexプロジェクトを作成した際に現れる「lib」フォルダに入れればOK

簡単な作成例

Cocomoではたった数行で共有らくがきボードが作成できます。

まずはCocomoはroomでアプリを管理するので、あらかじめ先ほどのCocoaのサイトで部屋を一個作っておきます。
CocomoアプリはFlex側でこの部屋を指定するような感じになります。

次に基本URLと部屋名が必要となります。
http://connectnow.acrobat.com/yourname/yourroom

Flexなソースはこちら

<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" xmlns:rtc="CocomoNameSpace">
<rtc:AdobeHSAuthenticator id="auth" userName="アカウントID" password="パスワード" />
<rtc:ConnectSessionContainer roomURL="Cocomoで表示されるURL/部屋の名前"
    id="cSession"
    authenticator="{auth}">
    <mx:Panel width="640" height="480">
        <rtc:SharedWhiteBoard width="100%" height="100%"/>
    </mx:Panel>
</rtc:ConnectSessionContainer>
</mx:Application>

パスワードが素のままなのでこの辺はLoginフォームを作成したり書き込み権限を指定するのが基本となると思われます。
ちなみに、CocomoSDKをダウンロード解凍すると extras フォルダにCocomoの管理者用AIRソフトとローカルコネクション用AIRがあるので両方インストールしておくと便利です。
これでどのくらいの転送量があるか、どんなコマンドが送られたかが確認できます。

参考

簡単なサンプルの説明。

SKDとセットにサンプルが含まれているので試してみました。

Audio

マイク音声の編集。ゲインやエコーなどができる。

#たぶんストリーミング?でほかの人も聴けるもんだと思う(試してないです)。

ComplexObjectTransfer:

複雑なアイテムの保存。例としてプロフィールを保存してます。

CustomRoster:

コネクションしているユーザー一覧と、ランク設定。

DefaultPods:
動画チャット+テキストチャット。

ExternalAuthentication:

Flex,JAVA,PHPでの認証システム。Flexに素でアカウントとパスワードを書いておくのは危険なのでPHPSSLを使用してなるべく安全にCocomoにログインする方法。

ExternalAuthenticationフォルダのphpフォルダにあるindex.phpの設定方法

//↓http://connectnow.acrobat.com/「ここ」;
$account = "Cocomoで表示されるアカウント名";
$room    = "ルーム名";
$devuser = "メールアドレス";
$devpass = "パスワード";
$secret  = "暗号用の種";

php.iniでextension=php_openssl.dllを有効にしておく必要があります。またSimpleXMLを使用するのでPHPのバージョンは5以上で新しいめのがいい感じ。

FilePublisher:

簡単ファイル共有

日本語ファイル名もOK

KnockingQueue:

チャット管理システム。
ユーザーの許可・不許可の設定(たぶん)

LocalConnection:

AIRアプリがサーバーとなり、ローカルコネクションをする。

アプリデバッグで毎回サーバーへログインするのが気になる場合とかに便利そう。あとはFlash同士で同期をとりたい場合など。

LoginDialog:

ログインフォームのサンプル。
ユーザーとゲストの選択ができるのがポイント

編集者なのか閲覧者なのか権限関係も勉強する必要があるっぽい。

Multiple Groups:

Shared Collection:

アイテムデーターを共有。削除や追加ができる。

SharedModel:

投票システム?うまく動かないのであとで。

SimpleChat:

シンプルなチャット。

WebCamera:

Webカメラを使用したマルチライブチャット

複数人のも対応!

YahooMaps:

マップ+ラクガキ+チャット+ビデオチャットというなんでもござれなアプリ。

YahooMap.swcファイルが必須。

それとアクセスキーの取得