0

私はここの新しいユーザーメンバーです。そして、私はFMSが初めてです。ライブ ビデオ チャット アプリでテキスト データ メッセージをあるユーザーから別のユーザーに送信することに関して質問したいことがあります。Flash Media Server と rtmfp を使用してビデオ チャット アプリケーションを作成したいと考えています。たとえば、グループに加入している全員にデータを送信するのではなく、ユーザーが 1 対 1 のチャット プライベート ルームでメッセージをやり取りしたいと考えています。これにリモート ShardeObject を使用することを検討していましたが、SharedObjects はすべてのメンバーにメッセージをブロードキャストしますが、これは私が望むものではありません。質問です。sharedobject を使用して特定のクライアントにデータ メッセージを送信できますか?それとも、NetStream.send メソッドまたは NetGroup の sendToNearest メソッドを使用する必要がありますか? ありがとうアシュリー

4

1 に答える 1

0

異なる共有オブジェクトを使用して、2 人のユーザー間で新しいチャットが発生するたびに新しいオブジェクトを作成できます。

しかし、別のオプションはcall()、あなたの方法を使用することNetConnectionです.

次のようにサーバーにメソッド「sendMessage()」を実装したとします。

Client.prototype.sendMessage = function(clientID, message)
{
    for (var i = 0; i < application.clients.length; i++)
    {
        var client = application.clients[i];
        if (client.id === clientID)
        {
            client.call("handleMessage", null, message);
        }
    }
}

その後、クライアント側でこれを行うことができます:

    connection.client = this;

[...]

public function sendMessage(message:String):void
{
    connection.call("sendMessage", null, clientID, message);
}

public function handleMessage(message:String):void
{
    // message sent from server
}
于 2013-03-28T09:32:13.147 に答える