Amazon Chime SDKとは?〜BtoCサービスにおけるデジタルCXをさらに進化させるソリューションになりそう!〜

Amazon Chime SDKを使えば、高品質なリアルタイムコミュニケーション機能をアプリケーションに迅速に追加することができます。
2020.10.21

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

こんにちは、CX事業本部の若槻です。

今回は、弊部署内でにわかに注目度が高まっている、AWSのWeb会議システム向けのSDKであるAmazon Chime SDKについてご紹介します。

image

Amazon Chime SDKとは

元々AWSにはWeb会議システムである「Amazon Chime」がありましたが、この「Amazon Chimeと同じ基盤を利用したリアルタイムコミュニケーション機能」をシステムに独自に組み込むことができるようにしたSDKがAmazon Chime SDKです。次のような機能が任意のアプリケーションで使用できるようになります。

  • Web会議(音声、ビデオ)
  • 画面共有
  • テキストチャット
  • など

これにより、例えば自社のECサイトにAmazon Chime SDKを組み込むことで、ECサイト訪問者が商品ページ内に配置されたボタンやリンクからビデオ通話を開始して、アプリ内やブラウザ上でそのまま販売担当者からのリアルタイムな接客をシームレスに受けられるようにする、なんてことが可能となります。

具体例として、次のような流れでのサービス提供の実現が考えられます。

  1. ユーザーがECサイトを訪問、購入の検討のためWeb接客を希望する
  2. ユーザーは、Web接客を受けたい日時を予約ページのカレンダーなどから指定
  3. ユーザーは、当日になったらサイトのマイページに登録された予約からWeb接客を開始
  4. ECサイトの担当者はユーザーにビデオ通話で接客を開始する
  5. チャット機能を合わせて実装することで、ビデオ通話の補足をしたり、購入への誘導を簡単に行うことも可能

image image image

Amazon Chime SDKで具体的にどんな機能が使えるのか

下記ブログでAWS公式のデモアプリを使ってAmazon Chime SDKでどのような機能が使えるのかを確認しています。

具体的には、デモアプリを使って次のようなことができました。

  • 会議の準備、参加
    • 会議タイトル(会議URL)の作成
    • URLを使用した会議招待
    • 自分の会議参加者名の設定
    • クライアントが接続するメディアリージョンの自動選択・手動選択
  • メディア入出力の準備
    • 音声入力デバイス(マイク)の選択
    • 映像入力デバイス(カメラ、画像)の選択
    • 映像入力クオリティ(幅、高さ、フレームレート、最大通信帯域幅)の調節
    • 音声出力デバイス(スピーカー、イヤホン)の選択
    • 音声・映像入出力のプレビュー
    • 音声出力のテスト
  • 会議の実施
    • Web会議(音声、ビデオ)
    • 音声入力のミュート
    • 会議参加者の一覧の表示
    • 会議参加者のステータスの表示(「発言中」「ミュート」など)
    • 画面共有(デスクトップ、コンテンツ)
    • テキストチャット
    • メディアメトリクス(送信・受信可能帯域幅)の確認
    • 会議の退出
    • 会議の終了
  • その他
    • サイマル配信
    • Web Audio
    • SIPによる会議参加

デモアプリでの会議中の画面です。 image

Amazon Chime SDKの実装

下記ブログでAmazon Chime SDKによる実装のデモを紹介しています。

このようなブラウザ上でビデオ通話ができるデモを実装しています。 image

Amazon Chime SDKの料金

各「参加者」(つまり、SDKを実装したアプリケーションのインスタンス)は、どのメディアモダリティ (画⾯共有、画⾯表⽰、双⽅向⾳声、⼀⽅向⾳声、双⽅向ビデオ、または⼀⽅向ビデオ)に関係なく、会議セッションに接続されるごとに課⾦されます。

1 分あたりの料金 (各参加者)
Amazon Chime SDK 会議セッションへの接続 0.0017 USD

固定費用は必要なく使った分だけ課金なのは嬉しいですね。

Amazon Chime SDKのクォータ

リソース クォータ
会議ごとの出席者 250
会議ごとの音声ストリーム 250
会議ごとのビデオストリーム 16
会議ごとのコンテンツ共有 2

ビデオ会議の場合は最大16人(セッション)までの参加が上限ですが、接客などのユースケースではキャパシティとして十分かと思います。

Amazon Chime SDKのアーキテクチャ

Amazon Chime SDKを利用した構成は主に次の要素から成り立ちます。

  • Amazon Chime API:会議や参加者などのリソースの作成、管理を行うAPI。
  • Amazon Chimeメディアサービス:クライアントによる音声通話、ビデオ通話、画面共有をサポートするメディアセッション&サービス。
  • Amazon Chime SDK:サーバーサイドでに組み込んでAmazon Chime APIを使用したり、フロントエンドに組み込んでAmazon Chimeメディアサービスを使用したりする。
  • フロントエンドアプリケーション:サイト訪問者や接客担当者が使用するクライアント側アプリケーション。
  • サーバーサイドアプリケーション:フロントエンドなどからのリクエストに応じて会議IDや出席者IDの発行などを行う。AWS Lambdaなどによりサーバーレスで実装可能。

開発者はフロントエンドアプリケーションおよびサーバーサイドアプリケーションを実装する必要があります。

image Startup fm - Amazon Chime SDK - Speaker Deck から引用

FAQ

ユーザーによるアプリのインストールやアカウント登録は事前に必要?

いずれも不要です。既存のモバイルアプリ(iOS、Android)内やブラウザ上で通話を行えます。アカウントは通話ごとに発行される出席者IDが暗黙的に使われますが、ユーザーがそれを意識する必要はありません。

メディア通信はWebRTCにより行われる?

Amazon Chime SDKは正確にはWebRTC SFU(Selective Forwarding Unit)によりメディア通信を行います。P2P通信である通常のWebRTCと異なり、WebRTC SFUはサーバー経由で音声や映像をやり取りするためクライアント側の負荷が高くなりにくくなっています。

どんな事例があるの?

公開されているものとして、海外ではすでに次のような導入事例があります。 image Building Real-Time Audio and Video Calling in Your Applications with the Amazon Chime SDK - YouTube から引用

またSlack社のSlack Callの基盤として採用されたことも話題になりました。

Amazon Chime SDKが対応する言語/フレームワークは?

それぞれ次のような言語/フレームワークに対応しています。(2020年10月現在)

フロントエンド

JavaScript, React, iOS, Android

サーバーサイド

C++, Go, Java, JavaScript, .NET, Node.js, PHP, Python, and Ruby

対応リージョンは?

Amazon Chime APIのエンドポイントはUS East (N. Virginia) (us-east-1)のみとなりますが、メディアセッションの作成自体はAsia Pacific (Tokyo) (ap-northeast-1)を含む18の地域で行うことが可能です。(2020年10月現在)

おわりに

Amazon Chime SDKについてご紹介しました。

リアルでの接客活動が難しくなったこのWithコロナの時代において、オンラインでのCX(カスタマー・エクスペリエンス)を強化することは必須となっているため、BtoC事業者様などからの引き合いが増えてきている機能となります。

デモとして実際に実装してみた感想としても、既存のWebサイトにコンポーネントを配置するだけで高品質なビデオ通話をすぐに開始できるようになったため、迅速に高い効果を得たい事業者様にとってはとてもコストパフォーマンスの高い機能であると感じました。

参考

以上