docs.unity3d.com
    目次を表示する/隠す

    DataChannel

    DataChannel はテキストやバイナリをピア間で送受信するための機能です。WebSocket と類似した機能を利用できます。

    Note

    サンプル には DataChannel の動作を確認するための DataChannel シーンが含まれています。

    DataChannel の作成

    DataChannel を作成するには, RTCPeerConnection の CreateDataChannel メソッドを呼び出します。

    // `RTCDataChannel` インスタンスを作成。
    var option = new RTCDataChannelInit();
    var channel = peerConnection.CreateDataChannel("test", option);
    

    他のピアが DataChannel を作成したとき、 OnDataChannel がコールバックとして呼ばれます。

    // `OnDataChannel` にコールバックを登録。
    peerConnnection.OnDataChannel = channel => 
    {
        // 
    }
    

    ピア間で DataChannel による通信が可能になると、RTCDataChannel.OnOpen が呼ばれます。また、通信が切断されると、RTCDataChannel.OnClose が呼ばれます。

    メッセージの送信

    メッセージにはテキストやバイナリが利用できます。RTCDataChannel.Send メソッドを呼び出します。

    // テキストを送信。
    string text = "hello";
    channel.Send(text);
    
    // バイナリを送信。
    byte[] data = System.Text.Encoding.ASCII.GetBytes(text);
    channel.Send(data);
    
    // NativeArray を送信。
    NativeArray<float> array = new NativeArray<float>(10, Allocator.Temp);
    channel.Send(array);
    

    メッセージの受信

    メッセージを受信するには RTCDataChannel.OnMessage を実装します。

    // `OnMessage` にコールバックを登録。
    channel.OnMessage = bytes => 
    {
        // ...
    }
    
    トップに戻る
    Copyright © 2023 Unity Technologies — 商標と利用規約
    • 法律関連
    • プライバシーポリシー
    • クッキー
    • 私の個人情報を販売または共有しない
    • Your Privacy Choices (Cookie Settings)