ユーザーガイド
用語集
アプリケーション
ユーザーが SkyWay を利用して提供するサービスです。SkyWay は1つのアプリケーションに対して1つのアプリケーション ID とシークレットキーを発行します。
Member
Room 内で他のクライアントとの通信を管理するエージェントです。映像や音声を送信したり、受信したりすることが出来ます。Member は一意な識別子である ID と、オプショナルな値である Name を持ちます。
ID は Member 作成時に自動的に払い出される値であり、Name はクライアントが Room に Join する際に指定できる任意の値です。Room 内で重複した Name を指定することはできません。
メタデータファイル
録音・録画において、保存した録音・録画ファイルと対応してメタデータを提供しています。メタデータファイルからは録音・録画ファイルの詳しい情報を知ることができます。
P2P
Peer-to-Peer の略で、クライアント同士がサーバーを介さずに直接通信を行う方式です。SkyWay において P2P 方式の通信を行うと SFU 方式と比較してより低遅延で実現できますが、3 人以上での通信において端末のエンコード負荷や上り帯域幅、通信量が多くなるデメリットがあります。複数人通話においてクライアント同士が繋がりあう網目上のネットワークを形成することから、メッシュ方式とも呼ばれます。
Publish
あるクライアントが映像、音声などの Stream を他の Member が受信可能にするために Room 内に公開する操作です。Stream を Publish すると Room 内に Publication というリソースが生成されます。また、Publish を行った Member のことを Publisher と呼びます。
Publication
Publish の操作によって Room 内に作られるリソースです。同一 Room 内の Member はこれを選んで Subscribe することで Stream の受信ができます。どの Member がどのような形式の Stream を Publish しているかの情報が含まれています。
RecordingSession
RecordingSessionは、どのような Publication をどのクラウドストレージに保存するのかの設定を保持するオブジェクトです。1つの Room に対して複数作成できます。1つの RecordingSessionには、0個以上の Publication が含まれます。また、1つの RecordingSessionで設定可能なクラウドストレージは1つのみです。
Room
Room ライブラリにおいて使用されるメディア通信を行うグループの単位です。Room に含まれる Member は Room 内にいる他の Member と映像/音声/データの送受信が出来ます。 通信方式を P2P と SFU の2種類から選択可能です。
Room は一意な識別子である ID と、オプショナルな値である Name を持ちます。ID は Room 作成時に自動的に払い出される値であり、Name はユーザーが Room を作成する際に指定できる任意の値です。アプリケーション内で重複した Name を指定することはできません。
Room ライブラリ
複数人で通信をするアプリケーションを作るためのライブラリです。JavaScript SDK, Android SDK, iOS SDK, Unity SDK, Linux SDK それぞれに用意されています。
SFU
Selective Forwarding Unit の略で、サーバーを経由して通信を行う方式です。3 人以上で通信する際には上りの通信の数を節約でき端末のエンコード負荷と上り帯域幅や通信量を削減できるため、P2P 方式よりも多人数での通話や映像配信を実現できます。
シグナリングサーバー
通信を開始する前に、IP アドレスやコーデックなど、通信に必要な情報を通信相手と交換するためのサーバーです。
サイマルキャスト
映像を SFU Bot に Forwarding する際、配信側のクライアントが複数のエンコード設定を指定する機能です。受信側クライアントは自身の通信品質に合わせた画質やフレームレートなど、適したエンコード設定の映像を受け取ることができます。
SkyWay Auth Token
SkyWay Auth Token とは、利用するクライアントが正当であることを示し、クライアントに必要十分な権限を与えるための JWT(JSON Web Token)形式のトークンです。全てのクライアントは自身の権限に対応した SkyWay Auth Token を取得する必要があります。SkyWay Auth Token の発行にはアプリケーションのシークレットキーが必要となります。
SkyWay Room API
SkyWay Room API は、Room に対する各種操作を行うための API です。JSON-RPC API として提供され、サーバーサイドアプリケーションからリクエストを送ることができます。
SkyWay Recording API
SkyWay Recording API は、録音・録画の操作を行うための API です。REST API として提供され、SDK を介さずにリクエストを送ることができます。
Stream
連続して送受信される一連のデータのことです。音声を送信する Audio Stream、映像を送信する Video Stream, 任意のデータを送信する Data Stream があります。
STUN サーバー
Session Traversal Utilities for NAT の略で、NAT が存在する環境で P2P 通信を行う際に必要なグローバル IP およびポート番号を取得する操作を行うサーバーです。
Subscribe
ある Room で Publish されている Stream の受信を開始する操作です。Stream を Subscribe すると Room 内に Subscription というリソースが生成されます。また、Subscribe を行った Member のことを Subscriber と呼びます。
Subscription
Subscribe の操作によって Room 内に作られるリソースです。 どの Member がどの Publication を Subscribe しているかの情報が含まれています。
TURN サーバー
Traversal Using Relays around NAT の略で、データを中継することで企業ネットワークなど P2P 通信が利用できない特定のネットワーク環境での WebRTC 利用を可能にするサーバーです。
ユーザー
SkyWay を利用してサービスを提供する事業者です。これに対してアプリケーションを利用する人のことはエンドユーザーと呼びます。
Webhook機能
SkyWay の Webhook によるイベント配信サービスそのものを指す単語です。
Webhookリクエスト
Webhook 機能からユーザーに送信するリクエストのことを指します。ユーザーが正規のものであると確認するための検証リクエストとイベント通知のリクエストの2種類があります。
署名用共通鍵
Webhook リクエストの署名を検証するために使用する共通鍵です。SkyWay コンソールで Webhook の設定を行う際に設定します。