service

WebRTC(ビデオチャット・音声通話アプリ)の開発

  • WebRTCの技術を用いた無料のビデオ通話(音声通話)に関連するサービスの開発案件に力を入れています。

  • WebRTCとは

    WebRTCはWeb Real-Time Communicationの略です。文字通り、リアルタイム性をもったインターネット上のサービスの構築に用いられる技術規格です。

    シグナリングサーバ、スタンサーバ、ターンサーバを用いてWebRTCを実現させると、リアルタイム性が必要な音声通話ビデオチャットのサービスをPC間、またはスマホ間、PCとスマホ間にて提供が可能になります。

    シグナリングサーバとは

    WebRTCのPeer to Peer通信を開始する際に必要となる、自分と相手先のネットワーク接続情報の交換を仲介する役割を担うサーバです。

    スタンサーバとは

    Peer to Peerで接続を確立する際、大きく分けて、異なるNAT間にデバイスがある場合と同じNATの中にデバイスがある場合がありますが、それをどちらなのか見定め、自分のデバイスが外から見たときの複数みえるIPアドレスのうち、どのIPアドレスが接続を確立可能か自分に教えてくれます。また、その際のIPアドレス以外のネットワーク接続情報も自分に教えてくれるという役割を担うサーバです。

    ターンサーバとは

    スタンサーバから取得できたネットワーク接続情報でPeer to Peer通信が確立できなかった場合に、ターンサーバを経由した通信に切り替わります。ターンサーバを経由した接続は、Peer to Peerではなく、クライアント/サーバ型で接続を確立している状態になります。このことは、サーバの負荷を高めると同時にネットワークの帯域を占めてしまう原因にもなるため従量課金制のサーバを借りる際には十分な注意が必要になります。つまりターンサーバは、接続の補助的な役割を担うサーバです。

  • WebRTCのメリット

    通話をしている各デバイスが、サーバのような役割を担うため、帯域の確保や高い処理能力をもつサーバ必要とせずに、セキュアに通話することが可能になります。また、これは一長一短ありますが、電話番号やLINEのアカウントなど、通常用いている連絡先を相手に伝えることなく通話することも可能になります。

  • WebRTCのデメリット

    シグナリングサーバ、スタンサーバ、ターンサーバといった特殊かつ比較的難易度の高いサーバを構築する必要があるためサービス開発を行った経験のあるベンダーが圧倒的に少なく、経験のある技術者の確保が困難な点が挙げられます。LAMP系の環境での開発を得意とする腕利きのエンジニアであっても、これらのサーバの名前すら聞いたことがないというエンジニアはたくさんいるはずです。

  • サービス企画時の注意点

    まず、固定電話との通信はできない点は、はじめに留意しておかなけばらない点です。また、スマートフォンでの通話では、スピーカやマイクの制御やアプリがオフになっていたりバックグランドになっている状態での着信呼び出しなどに関する制御が必要になります。また、スマホで3人以上でのビデオチャットを綺麗な画質で行うとスマートフォンデバイスの処理能力の限界でアプリが突然、落ちたりフリーズします。ですので、現状では、2者間での通話に留めるか、N者間の場合は、その参加人数に応じて、画質や表示サイズを落とすか、或いは、N者間の通話をサポートするサーバを別に立てて処理を補うなどの対策が必要になります。通話時のインターネットへの接続環境は、安定したWi-Fi環境があることが望ましいのですが、4Gの環境でも音声通話であれば問題なく通話が可能です。しかし、通信途中でWi-Fi、或いは電波が切れる、すなわち接続を確立しているIPアドレスが変更された際に、冗長性を保って通話し続けるのは困難で通話が切断されます。従って、タイトに通話の接続性や安定性が必要とされるサービスには不向きと言えそうです。

  • WebRTCを適用可能な例

    ● ビデオ通話・音声通話機能を中心としたSNSや会員向けサービス

    ● SNSや会員サービスの機能としてビデオチャット・音声通話機能のアドオン

    ● サポートセンターやヘルプデスクでの通話料の無料化

    ● スマホサイトからのフリーダイアル電話問い合わせの通話料無料化

    ● 建設現場などのプロジェクト専用のメッセージ/通話アプリ

    ● 社外からも内線感覚でかけられる通話/メッセージングアプリ

    上記は、サッと思いつく適応例ですが、WEBを通じて無料の音声通話やビデオ通話を活かしたサービスはアイデア次第では、色々なところで適応していくことが可能だと思います。

    無料通話や無料ビデオ通話などを絡めたサービス開発のご相談などがございましたら、ぜひお気軽にお問合せください

  • WebRTCに力を入れている理由

    簡単な伝達事項のやり取りであれば、メールやチャットでもそれほど差支えないと感じますが、クリエイティブな仕事やセンシティブな仕事をメールやチャットだけで仕事を進めようとすると返って非効率になるというのは経験則からも納得のいく話ではないかと思います。

    「世界一速く結果を出す人は、なぜ、メールを使わないのか」という本は、グーグル社内でどうやっているのかを開示したような本ですが、以下のような件があります。

    ==以下:抜粋==

    直接会う方が何倍も速い

    メールではうまく意思の疎通ができず、かえって仕事が遅くなることもあります。何回やり取りしても、相手の意図がつかめず、なかなか合意にいたらない。だったら、電話するか直接会って話せばいいのです。

     

    どれだけ便利になっても、最後は相手の顔を見て話すことに意味があります。オンラインチャットに書き込んでいる最中でも、「じゃあ、直接話そうか」と言って、ハングアウトを立ち上げて、いきなり会話をはじめます。表情が見えると、お互いに考えていることが、ダイレクトに伝わるので、文字だけや音声だけのやりとりよりもはるかに効果が高いと実感しています。

    ====

    優秀なスタッフが多いと考えられるグーグルですら、こんな感じなので、難しいお題で「メールでやり取りしよう!」というのは、自ら進捗を阻害し、混迷を呼び込むことにはならないか注意する必要があると言えそうです。

    つまり、コミュニケーション手段として、メールやチャットは、便利な面がある一方で、面倒を巻き起こす原因にもなる側面があると考えています。世の中が複雑化している一方で、コミュニケーション手段も日進月歩で進化しています。(WebRTCのバージョンアップの頻度も然りです。) このような状況下で大切なのは、声のトーンや表情から相手の真意を的確にとらえることであり、テキストでのコミュニケーションでは場合によっては、スピードが劣化すると考えています。

    そこで、従来からあった音声通話やビデオ通話をアイデアと技術で進化させ、コミュニケーションを効率的かつ気持ちよくを行える環境づくりの一助を担いたいと考えたのが、弊社がWebRTCの普及に力を入れている理由です。

  • ソーシャルキャピタルの蓄積とWebRTC

    まずソーシャルキャピタルを簡単に説明すると、人の価値を「人自身」と「その人の持つ人とのつながり」に切り離して考えてみたときに、その「つながり」の部分に資産性があるといったコンセプトです。つまり、もともとつながりがあり信頼できる知り合いであれば、いろいろと便宜が図られ、物事がうまく進むだけでなく、つながりを持っている状態に人が幸福感を感じるものだとされています。

    このソーシャルキャピタルの考え方と前述のグーグルでのコミュニケーション方法を合わせて考えると、音声や映像でリアルタイムに接続することの重要性が増していくのではないかとの考えに至ったというのが、結論です。

    例えば、フェイスブックでつながっている友達でも時間が経つにつれて、関係性が徐々に薄れていくという関係は意外に多いのではないでしょうか。そんな時に関係性を保つ、或いはリビルドするためには、「直接会う」のが普通に考えると最良の選択肢だと思いますが、互いに忙しい身であった場合、簡単にはそうもいかないというのが実情であるとも考えています。つまり、関係性を保つためのコミュニケーション手段としては、以下の不等式が概ね成り立っているのではないかと考えています。

    ①会う > ②ビデオチャット > ③音声通話 > ④テキストチャット > ⑤メール > ⑥なし

    この内、WebRTCで担うことが可能なコミュニケーションのが、②③④になります。

    (通常のクライアントサーバ型の構成で可能な範囲は、④⑤のみです。)

    このことから、ソーシャルキャピタルの増加をさせ、世の中をより良くしていくための技術として、リアルタイムにビデオチャットで映像や音声のやりとりが可能で、低コストでの導入が可能なWebRTCが今よりも利用されてほしいと考えています。