Nextcloudトーク

App StoreのNextcloud Talkアイコン






TalkはNextcloudプラットフォームの拡張機能であり、安全な音声通話とビデオ通話を行い、WebインターフェースまたはNextcloud Talkモバイルアプリケーションを介してテキストメッセージを交換できます。 WebRTCは対話者との通信に使用され、エンドツーエンドの暗号化は送信された情報を保護するために使用されます。 Nextcloud Talkコンポーネントはすべて開いています。



HabrでのNextcloudについての投稿は指で数えることができ、Nextcloud Talkについての言葉がないので、このギャップを埋めることにしました。 カットの下で、Nextcloud、Spreed.ME、Spreed、Talkについて学んだ方法、Talkをテストした方法、Talkをインストールして構成するときに遭遇した問題について説明します。



Nextcloudを知った方法



2013年、2人の友人、ZhenyaとMaximがフォールドでネットトップを購入し、独自のクラウドでホームストレージを開始しました。 当時、Dropboxは年間500ドルで500 GBのディスクスペースを提供していました。まったく同じディスクサイズのネットトップは少なくとも少し高価でしたが、プライベートストレージはDropbox Proよりも経済的で興味深いものでした。 ZhenyaとMaximは、友人や知人のアカウントを作成しました。 最初はこのアカウントを使用しませんでしたが、後でプライベートストレージのアイデアに触発され、写真アルバムを手探りし始めました。さらに、すべてが失敗することなく機能しました。 2016年、ownCloudの創設者であるFrank Karlitschekはプロジェクトを離れ、Nextcloudというフォークを作成しました。 Eugeneは、ownCloudが停滞を待っていることを示唆し、ownCloudからNextcloudにストレージを転送しました。 この場合、すべてのファイルはそのまま残りましたが、Nextcloudモバイルクライアントをスマートフォンに置き、Nextcloudの使用を開始しました。



Nextcloud Talkに先立って



当初から、Nextcloud App Storeには同じ名前の開発チームから利用可能なSpreed.ME拡張がありました。 この拡張機能を使用すると、ブラウザーで直接Nextcloud内にビデオ会議を作成できましたが、残念ながら、AndroidとiOS用のモバイルアプリケーションはなく、Spreed.MEには追加のソフトウェア(Spreed WebRTCサーバー)のインストールも必要でした。 少し後に、Nextcloud開発者がNextcloud App StoreでSpreedというビデオ通話拡張機能を公開しました。 SpreedはNextcloudとの統合性が高く、Spreed WebRTCサーバーのインストールは不要でしたが、機能的にはSpreed.MEよりも劣っていました。



2018年初頭、Nextcloud開発者はSpreedの完全な再設計を発表し、Google PlayストアとApple App StoreでNextcloud Talkモバイルアプリを公開しました。 Spreed拡張機能の名前はTalkに変更されましたが、Nextcloud App Storeのアプリケーション識別子は同じままであり、Nextcloud 12から13への移行を容易にするために、Spreedになっています。 AndroidおよびiOS用のNextcloud Talkモバイルアプリケーションは、まだWebバージョンよりも劣っていますが、最も必要なのは、スマートフォンからスマートフォンへの呼び出しです。



Nextcloud Talkのテスト方法



Nextcloud Talkをできるだけ早く試してみたかったのですが、ZhenyaはNextcloud 13の公式リリースを待たずに、ネットトップでNextcloudを13.0.0 RC 1に更新しました。 その後、Nextcloud Talkをスマートフォンにインストールして電話をかけました。 接続は完了しましたが、音声やビデオはありませんでした。 黒い画面しか見えませんでした。 MarioMaranićというAndroidアプリ開発者に連絡しましたが、彼はインターネット経由で通信するTURNサーバーがないと説明しました。



Nextcloud Talkは、WebRTC(ピアツーピア)を使用して2つのデバイス間の通信チャネルを編成します。スマートフォンには白いIPアドレスがないため、接続を確立することは困難です。 coturnをTURNサーバーとして使用し、すぐにネットトップに展開し、Nextcloud管理パネルのトーク設定で白いネットトップIPアドレスを指定することにしました。 その後、ビデオと音声が表示されましたが、最初は電話をかけるときにポップアップ通知が表示されないことに気付きませんでした。 NextcloudにNotifications拡張機能をインストールしてアクティブにすると、通知が表示されます。



Nextcloud Talk:モバイルアプリケーションとWebインターフェイス



Nextcloud Talk Androidモバイルアプリインターフェイス



Nextcloud Talkモバイルアプリケーションでは、執筆時点では、ビデオコールと連絡先リストのみが実装されています。 アプリケーションの連絡先リストは、ネットトップのNextcloudサーバーからダウンロードされます。



Nextcloud Talk Webインターフェイス



Webバージョンにはさらに機能があります。たとえば、クラウドストレージにアカウントを持っていない対話者を会議に招待できます。 ウェブ版にはチャットがありますが、残念ながら、絵文字やステッカーはありません。



将来、Nextcloud Talk開発者は、XMPPチャットに互換性のあるAPIを追加して、XMPPプロトコルをサポートするサードパーティアプリケーションがNextcloud Talkサーバーを介して通信できるようにする予定です。 ほとんどの場合、チャットはNexcloud Talk 2.0モバイルアプリケーションに表示されますが、2.0がいつリリースされるかはまだわかりません。



Nextcloud 13をインストールしてトーク



これで、Nextcloud 13を備えたDockerコンテナーがネットトップ上で実行され、 GitHubでコンテナーを構築するために必要なすべてのソースコードを公​​開しました 。 Zhenyaのアイデアでした。彼は私たちが使用するさまざまなWebサービスからDockerファイルを収集し、コンテナを収集するスクリプトを追加して「Mr. ミーシークスボックス」(略称はmbb)。 Nextcloud Talkをすばやくデプロイして、すべてを自分の手で感じたいが、Dockerがあまり得意でない場合は、mmbが好きです。



そのため、最初にGit、Docker、およびDocker Composeをインストールします。



sudo apt-get update sudo apt-get install git, docker, docker-compose
      
      





次に、mmbリポジトリを複製します。



 git clone https://github.com/tolstoyevsky/mmb.git cd mmb
      
      





次のコマンドを実行して、MariaDBとNextcloudの2つのコンテナーを組み立てます。



 sudo ./mmb.sh mariadb amd64 sudo ./mmb.sh nextcloud amd64
      
      





Raspberry Pi、またはARMプロセッサを搭載した他のデバイスでこれを行う場合は、amd64をarmhfに置き換えてください。



両方のコンテナを起動しますが、その前にポート3306がビジーでないことを確認してください。



 cd mariadb docker-compose up -d cd ../nextcloud docker-compose up -d
      
      





ブラウザhttp:// [your ip-address]:8001 / ncで開き、管理者アカウントを作成するためのページが表示されたら、すべてを正しく行いました。 管理者のログインとパスワードを設定し、コントロールパネルに移動して、右上隅の[設定]→[アプリケーション]をクリックします。 アプリケーションの長いリストで、Talkを見つけてアクティブにします。 次に、Nextcloudで別のアカウントを作成し、ブラウザーまたはローカルネットワーク内のモバイルアプリケーションから電話をかけます。



白いIPアドレスがある場合は、ポート8001を外部に転送してインターネット経由で電話をかけることができますが、TURNサーバーを上げる必要があります。 これは、mmbを使用して、coturnを使用してコンテナを構築および実行することで実行できます。



 cd .. sudo ./mmb.sh coturn amd64 cd ../coturn docker-compose up -d
      
      





Raspberry Pi、またはARMプロセッサを搭載した他のデバイスでこれを行う場合は、amd64をarmhfに置き換えてください。



TURNサーバーを起動した後、Nextcloud管理パネルを開き、左側のメニューで「トーク」を選択し、「TURNサーバー」フィールドに白いIPアドレスを入力し、シークレットフレーズのフィールドに「secret」と入力します。 別のシークレットフレーズを使用する場合は、mmb / coturn / docker-compose.ymlファイルを調べて、AUTH_SECRET変数の値を変更し、coturnでコンテナーを再起動します。



 cd ../coturn docker-compose stop docker-compose rm docker-compose up -d
      
      





その後、Nextcloudで友人のアカウントを作成し、Nextcloud Talkアプリケーションをスマートフォンに配置して、お互いに電話をかけることができます。



All Articles