統計情報

Sora Unity SDK の統計情報機能について説明します。

この機能を利用することで、接続状況や通信品質を把握することができます。

統計情報の取得機能について

統計情報の取得機能は、Sora.GetStats メソッドを利用して取得することができます。

このメソッドは内部で WebRTC の RTCStatsReport を利用し、統計データを取得します。

利用方法

統計情報の取得は一定間隔に行うことを推奨します。

ここではコルーチンを使用して 10 秒間隔で統計情報を取得し Debug.Log に出力する方法を示します。

// Soraインスタンス
private Sora sora;
// 接続状態
// 接続状態を見て統計情報の取得を制御する
private State state;

private enum State
{
    Init,
    Started,
    Disconnecting,
}

IEnumerator GetStats()
{
    while (true)
    {
        // 10秒間隔で取得
        yield return new WaitForSeconds(10);

        // 接続中の場合のみ取得
        if (state != State.Started)
        {
            continue;
        }

        sora.GetStats((stats) =>
        {
            // 注意: このコールバックは Unity メインスレッドとは別のスレッドで実行される
            Debug.LogFormat("GetStats: {0}", stats);
        });
    }
}

Start() メソッドでコルーチンを開始します。

void Start()
{
    StartCoroutine(GetStats());
}
© Copyright 2024, Shiguredo Inc. Created using Sphinx 8.1.3