アスキーの会員サービスASCII倶楽部では、会員の方だけが読めるさまざまな連載や特集が毎日更新中。
本日は、ASCII倶楽部の人気記事「作業時間はたった約1時間!音声通話アプリをAgoraで作ってみた」を紹介します。
メンヘラテクノロジーの高桑蘭佳です。
弊社で運営している「メンヘラせんぱい」はチャットで相談できるアプリなのですが、ユーザーにヒアリングをしていると「通話もできたらいいのに……」と言われることが多々あります。もちろん、開発初期に通話機能をいれるかどうかを検討したこともあるものの、相談に乗る側のハードルを下げることや開発コストを考え、まずは2020年1月末にチャットだけでサービスを始めることにしました。
しかし、リリースから2年半以上経ち、通話機能の追加についても改めて検討するようになりました。実際に導入するかどうかはまだ確定していないのですが、社内でもちょこちょこ話題になるようになったので、そもそも音声通話アプリってどんな感じで作るんだろう……? と私自身も調べてみることにしました(もちろん、通話機能を追加しましょう!となっても、私が開発をするわけではないのですが……)。
まわりのエンジニアに聞いたり、ネットで調べたりしたところ、音声通話機能を提供しているAPIがいくつもあり、基本的にはそれらを使って作るのがよさそうとのこと。そんな中で、使いやすそうな雰囲気だったのが「Agora」です。
Agoraは、Agora Lab, Inc.が提供するサービスで、2021年頃に流行った「Clubhouse」でも使われているらしいです。日本国内ではブイキューブが販売代理店をしており、いろんな企業のアプリに採用されている模様。
フロントエンドの知識が乏しい私ですが、今回はAgora公式のクイックスタートに従って音声通話アプリを作りました。そして、ngork(ローカルサーバーを外部ネットワークに簡単に公開できるトンネリングツール)を使い、実際に通話ができるかどうかを試してみました。
Agoraの設定
まず、Agoraのサイトからアカウントを作成します。
アカウントが作成できたら「Project Management」を開いて、「Create」というボタンから新しいプロジェクトを作成します。
「Project Name」と「Use Case」を入力して、「Authentication Mechanism」は「Secured mode」を選択し、「Submit」をクリックします。
一覧から作成したプロジェクトの「Action」にある「Config」をクリックし、認証情報を確認します。
ここで、一時トークンを生成するので、「Temp token for audio/video call」の「Generate temp RTC Token」をクリックします。
「Channel Name」を入力し、「Generate」をクリックします。
すると、「Temp Token」が発行されます。「App ID」「Channel Name」「Temp Token」は後ほど使用するので、メモしておきます。
Agora側での設定はここまでで完了です。
続きは「作業時間はたった約1時間!音声通話アプリをAgoraで作ってみた」でお楽しみください。
なお、こちらの記事の続きを読めるのはASCII倶楽部会員の方限定です。
ASCII倶楽部には、今回紹介した記事だけでなく、PCやスマホ、カメラ、テレビ、オーディオなどの会員だけが読める連載が更新されております! さらに、週刊アスキー 電子版の最新号から過去4年ぶん以上のバックナンバーが読み放題となっております。
会員制読み放題サービス
ASCII倶楽部(アスキークラブ)
■利用料金
月額 税込1080円
※毎月1日~末日までの利用料金として
■支払方法等
●クレジットカード
* VISAカード/MasterCard/アメリカン・エキスプレスカード/JCBカード
●auかんたん決済
●ドコモケータイ払い
●Amazon アカウント
※auかんたん決済、ドコモケータイ払いを選択された方は、3日間無料キャンペーンをご利用いただけません。 ※ご利用になる決済機関によって決済時期及び決済方法が異なります。
それぞれの決済機関が定める利用規約等をご確認ください。
■提供時期
月額利用料金の支払い後、すぐに利用可能。
■推奨環境 <端末・ブラウザ>
【PC】
・OS
Windows 7 以上 , Mac OS X 10.10以上
・ブラウザ
(Windows)Internet Explorer 11※Edgeは除く , Google Chrome最新版 , Firefox最新版
(Mac)Safari最新版
【スマートフォン】
・OS
iOS 8 以上 , Android 4.x以上
・ブラウザ
(iOS)Safari
(Android)Google Chrome
URL ASCII倶楽部