メッセージング機能

概要

ここでは Sora Unity SDK のサンプル集を使ってメッセージング機能について説明します。

Sora Unity SDK サンプル集

メッセージング機能の注意点

メッセージングを使用する場合は Data Channel Signaling が有効になっている必要があります。

メッセージングの詳細については Sora のドキュメント を参照してください。

メッセージング設定

メッセージングはラベルを指定することで利用することができます。

https://i.gyazo.com/de710a10b38fa3700ed1af545871428b.png

Data Channels

設定したいメッセージの数を指定します。

Element

DataChannels で指定した数だけ生成されます。それぞれのラベルを指定します。

Label

メッセージのラベルを指定します。先頭に # が付いている必要があります。

Direction

メッセージを送受信、または送信するか受信するかを指定します。

sendrecv は送受信、sendonly は送信のみ、recvonly は受信のみになります。

Orderd

Orderd を有効にするとメッセージが順番に届くようになります。

Orderd を有効にするには以下の設定が必要です。

  • Enable Ordered を有効にする

  • Orderd を有効にする

Max Packet Life Time

最大再送時間を指定することができます。デフォルトは未指定で無制限です。

Max Packet Life Time を有効にするには以下の設定が必要です。

  • Enable Max Packet Life Time を有効にする

  • Max Packet Life Time を有効にする

Max Retransmits

最大再送回数を指定することができます。デフォルトは未指定で無制限です。

Max Retransmits を有効にするには以下の設定が必要です。

  • Enable Max Retransmits を有効にする

  • Max Retransmits で再送回数を指定する

Protocol

現在指定する必要はありません。

Compress

Compress を有効にするとメッセージが圧縮されます。

Compress を有効にするには以下の設定が必要です。

  • Enable Compress を有効にする

  • Compress を有効にする

メッセージの送信

Sora Unity SDK サンプル集ではメッセージの送信は ゲーム画面の送信ボタンを押下することで送信できます。

メッセージの内容は aaa を送信するようになっています。

SoraSample.cs の以下に示す部分を変更することで送信するメッセージを変更することができます。

public void OnClickSend()
{
    if (fixedDataChannelLabels == null || sora == null)
    {
        return;
    }
    // DataChannel メッセージを使って全てのラベルに適当なデータを送る
    foreach (var label in fixedDataChannelLabels)
    {
        string message = "aaa";
        sora.SendMessage(label, System.Text.Encoding.UTF8.GetBytes(message));
    }
}
© Copyright 2023, Shiguredo Inc. Created using Sphinx 7.2.6