今や、Web会議ソフトはビジネスにおいても、プライベートにおいても、コミュニケーションに必須のツールとなった。Web会議ソフトとしてはZoomやMicrosoft Teamsが著名だが、その多くはプロプライエタリなものであり、自由なカスタマイズは許されていない。それに対し、Opensource.comが「7 open source alternatives to Skype|Opensource.com」において、有償のWeb会議ソフトと同様の機能を備えつつ、オープンソースで開発されているWeb会議ソフトを紹介しているので、同記事をもとに、オープンソースのWeb会議の特徴を紹介しよう。
Jitsi Meet
Jitsiプロジェクトによって開発された「Jitsi Meet」は、スタンドアロンのアプリケーションを必要とせず、完全にWebブラウザだけで利用できるのが大きな特徴だ。ユーザー登録なども必要なく、Webサイト上で「Start Meeting」ボタンをクリックするだけで会議を始めることができる。
会議の時間は無制限で、最大50人まで参加可能だ。チャットや画面共有、YouTube動画やSlideDeckプレゼンテーションの共有、Etherpadを使用したドキュメントの共同編集、参加者のデスクトップの操作、参加者ごとの会話時間の集計、カレンダーアプリとの統合といった機能を備えている。ライブストリーミング配信にも対応している。本稿執筆時点ではバーチャル背景機能を備えていないが、背景ぼかし機能がベータ版として提供されている。
Jitsi MeetはJavaで記述されており、プロトコルはWebRTC標準と互換性があるとのこと。Jitsiプロジェクトの技術とチームは現在8×8社の傘下にあるが、プロジェクトそのものはオープンソースのコミュニティベースで継続されており、Jitsi Meetを含む多くのリポジトリがGitHubで公開されている。
Wire
「Wire」は、ビデオ会議や音声会議だけでなく、メッセンジャーやグループチャット、画面共有、ファイル共有といった機能を備えたコラボレーションプラットフォームである。チームのメンバーだけでなく、Wireアカウントを持たない外部のパートナーやクライアントとコラボレーションするためのゲスト機能なども備えている。
WireはもともとSkypeを作成したオーディオエンジニアによって開発されたという。Wire自体はGPLv3に基づいてオープンソースで開発されており、自前でビルドして使用する場合は料金はかからない。それに加えて、付加機能を備えた有料のサービスも展開されている。
Jami(旧Ring)
「Jami」は、以前はRingという名称で開発されていたWeb会議ソフトウェアで、ビデオおよび音声会議に加えて、メディア共有やメッセージングなどの機能を備えている。完全にP2P(Peer to Peer)で通信が行われるため、データを中継するサーバを必要としない点が大きな特徴である。Linux、Windows、macOS、iOS、Androidをサポートしており、ユーザーIDのほかにSIP(Session Initiation Protocol)を使った通信が行える。IDとSIPを並行して使用し、必要に応じてプロトコルを切り替えることも可能。
JamiはオープンソースのGNUプロジェクトの一部として、GPLv3のもとでオープンソースで開発されている。ソースコードはGitLabリポジトリで公開されている。
Element(旧Riot.im)
「Element」はオープンソースで開発されているグループチャットアプリで、もともとは「Riot.im」という名前で公開されていた(Opensource.comの記事ではRiot.imとして紹介されている)。チャットやファイル共有などをはじめとするコミュニケーション機能の一貫として、ビデオ会議やボイスチャットの機能も提供されている。
Matrixというリアルタイムコミュニケーションのためのオープンスタンダードなプロトコルを実装しており、汎用性の高い通信基盤を持っている点が大きな特徴。インスタントメッセージングや絵文字、画像の共有、オンデマンドのチャットルームなど、チームコラボレーションに必要な一通りの機能を備えている。Element内でIRCやSlack、Twitter、SMSなどの他のコラボレーションツールを使用してコミュニケーションすることもできる。
Webブラウザで利用できるほか、Windows/macOS/Linux向けのデスクトップ版、iOSおよびAndroid向けのモバイルアプリも用意されている。ElementはApache2.0ライセンスの下で利用可能で、ソースコードはGitHubリポジトリに公開されている。
Signal
「Signal」は主にiOSおよびAndroidをターゲットにしたメッセンジャーアプリケーションである。テキストやボイスメッセージ、写真やビデオの共有、グループチャットといった機能に加えて、音声通話およびビデオ通話がサポートされている。Windows、macOS、Linux向けのデスクトップアプリも用意されているが、こちらはテキストチャット専用で、しかも使用するにはモバイルデバイスにもSignalアプリをインストールする必要がある。
Signalでは、Signalプロトコルと呼ばれるオープンソースのプロトコルを使用して通信を行う。Signalプロトコルではエンド・ツー・エンドで暗号化が行われるため、ユーザーのプライバシーが適切に保たれるという。Signalは独立した非営利団体によって開発されており、誰でも無料で利用することができる。
Linphone
「Linphone」は、SIPを使用して動作するVoIP(Voice over Internet Protocal)通信サービスになる。Windows、macOS、Linux、iOS、Androidをサポートしており、音声通話およびビデオ通話、ビデオ会議、インスタントメッセンジャー、写真やファイルの共有などが利用できる。
Linphoneを使用するにはSIP番号を取得する必要がある。Linphoneから固定電話や携帯電話の番号への通信はサポートされておらず、SIP番号にのみに接続が可能となっている。
Linphoneはデュアルライセンスになっており、オープンソースのGPLv3バージョンと、他のプロプライエタリなソフトウェアに組み込むことができるクローズドバージョンが用意されている。クローズドバージョンは有償だが、(GPLの制限を受けないため)購入後はソースコードを変更してもプロプライエタリに保つことができる。
Nextcloud
「Nextcloud」はオンライン共有ストレージを展開するためのクラウドアプリケーションである。簡単に言ってしまえば、自前でDropboxのようなサービスを構築できるソフトウェアだ。
Nextcloudでは、サービスを展開するサーバ側のソフトウェアと、デスクトップやモバイルデバイスにインストールするクラウアントアプリのそれぞれが提供されている。クライアントアプリは、Windows、macOS、Linux、Android、iOSに対応しており、これをインストールすることで、ローカルのファイルやフォルダをクラウド上のストレージとシームレスに同期することができる。
さらにNextcloudは強力なプラグイン機構を備えており、チャットクライアントやメールクライアントなどの機能を追加することができる。音声通話やビデオ通話を利用可能な「Talk」と呼ばれるチャットアプリケーションも提供されている。したがって、チームで導入すれば、共有ストレージとしてだけでなく、さまざまなコラボレーション作業のハブとして利用することが可能となる。