サーバセットアップ

本製品の利用に必要なサーバのセットアップを行います。

シグナリングサーバ(PeerJS-Server)

アプリケーションが接続するシグナリングサーバを構築します。 通話を行う際に、通話相手との接続を構築するために利用されます。

node.jsのインストール

PeerJS-Serverの実行環境となるnode.jsのインストールを行います。 以下のnode.js公式サイトからダウンロードしてください。 Windowsへのインストールの場合はWindowsInstallerを利用できます。 Linux系OSの場合はダウンロードページにある Installing Node.js via package manager などを参考にしてください。 なお、 バージョンは最新版ではなく、4.xのLTS版 を選択してください。

https://nodejs.org/

PeerJS-Serverのインストール

本製品ではシグナリングサーバとして、オープンソースソフトウェアの PeerJS-Server を利用しています。 また、オリジナルのPeerJS-Serverを弊社にて一部修正を加えたバージョンがございます。 基本的にはオリジナルではなくこちらをインストールして頂きますようお願い致します。

Global-Solutions/peerjs-server

Windowsの場合は、上記のページからzipファイルをダウンロードして展開してください。

Linuxでは以下のコマンドを実行してください。

wget https://github.com/Global-Solutions/peerjs-server/archive/master.zip
unzip master.zip

ダウンロードおよび展開完了後は、展開したフォルダで以下のコマンドを実行して、依存ライブラリのインストールを行ってください。

npm install

PeerJS-Serverの起動

以下のコマンドを実行することで、サーバを起動することができます。

node bin/peerjs --port 9000

STUNサーバ(cotrun)

アプリケーションが接続するSTUNサーバを構築します。 通話を行う際に、通話相手への通信経路を取得するために利用されます。

基本的にSTUNサーバとしての機能を有していれば、特にサーバアプリケーションの種別は問いません。 ただし、本製品ではオープンソースソフトウェアの"coturn"を使い動作検証を行っております。 基本的にはこちらの利用を推奨いたします。 また、coturnはSTUNサーバとTURNサーバの2種類の機能を有しておりますが、本製品ではSTUNサーバとしてのみ利用することを想定しております。

coturn/coturn TURN server project

coturnのインストール

※coturnはLinux系のOSをサポート対象としており、Windowsには対応していないためご注意ください(詳細はcotrun公式ページをご確認ください)。

coturnのダウンロードを行います。 以下のコマンドを実行してください(検証時の最新版であるバージョン4.5.0.4を想定して記述しています。必要に応じて適宜変更してください)。

wget http://turnserver.open-sys.org/downloads/v4.5.0.4/turnserver-4.5.0.4.tar.gz
tar xvfz turnserver-4.5.0.4.tar.gz

ダウンロードおよび展開完了後は、以下のコマンドを実行して、依存ライブラリのインストールを行ってください。

yum -y install openssl openssl-devel sqlite sqlite-devel libevent libevent-devel

ライブラリのインストール後は、ダウンロードしたcoturnを展開したフォルダで以下のコマンドを実行して、コンパイルおよびインストールを行ってください。

./configure
make
sudo make install

インストール完了後は設定ファイルを更新します。 まずは、以下のコマンドで設定ファイルのテンプレートから実際に使う設定ファイルを作成してください。

cp /usr/local/etc/turnserver.conf.default /usr/local/etc/turnserver.conf

次に設定ファイルの以下の項目について、行頭の#を外して設定を有効にするとともに、必要な設定を記入してください。

# サーバのプライベートIPを記述
listening-ip=xxx.xxx.xxx.xxx
relay-ip=xxx.xxx.xxx.xxx

# サーバのフロントエンドのIP
external-ip=xxx.xxx.xxx.xxx

# デバッグ用ログ出力(任意)
verbose

# ログの出力先ファイルパス
log-file=

# STUNサーバとしてのみ使用(TURNサーバとして使わない)
stun-only

coturnの起動

以下のコマンドを実行することで、サーバを起動することができます。

turnserver