03-6845-0775平日10:00〜18:00受付
無料ガイド
お問い合わせ

Agora.io SDKを利用したライブコマースサンプル(WebRTC版)

公開日:

※2020年の記事です。

 

2018年頃からEC市場でライブコマースをよく見かけるようになりました。
ライブコマースの開発を希望するお客様が増えてきた為、簡易なサンプルを実装しました。
サンプルの方針として、フレームワークを使用すると移植しにくさがあると思いますので、各言語ベタでコーディングしています。

Githubに公開しています

開発環境

macOS Mojave 10.14.1
VisualStudioCode 1.29.1
Chrome 72.0.3626.121
AgoraVideoSDK for Web 2.8.0
PHP 5.5.26
MySQL 5.5.42

機能一覧

・ライブ作成
・ライブ配信(Web SDK)
・ライブ視聴(Web SDK)
・チャット(Signaling SDK)
・ハート送信(Signaling SDK)
・延べ視聴人数/ハート数のリアルタイム表示
・同時視聴数の記録(RESTFull API)

実装のポイント

同時視聴数の記録

実装の手法は様々です。要件に合わせて異なってきます。
今回は、Channelに接続している人=視聴しているとしてagora.ioが提供しているRESTFull APIを利用しています。

https://docs.agora.io/en/Agora%20Platform/dashboard_restful_communication?platform=All%20Platforms

put_live_count.php
        $channelName = BASE_CHANNEL_NAME . $_GET['live_id'];
            $url = sprintf("%s/%s/%s/%s/%s",REST_API_URL,"channel","user",APP_ID,$channelName);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_USERPWD, REST_API_USER . ":" . REST_API_PASS);
            curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
            $json = curl_exec($ch);
            curl_close($ch);
            $data = json_decode($json, true);
            $count = 0;
            if($data['success'] && isset($data['data']['audience_total'])){
                $count = $data['data']['audience_total'];
            }
            $sql = sprintf("insert into session (live_id,count,created_at) value(%s,%s,now())",$pdo->quote($_GET['live_id']),$pdo->quote($count));
            $pdo->query($sql);
    
    
ガイドブックダウンロード
ビデオ通話・ライブ配信API/SDK「Agora」

【最新版】超低遅延API/SDK「Agora」ガイドブック

通話・配信遅延30-200ms!100万人の視聴対応!未経験者から専門家まで、誰でも読みやすいAgoraのガイドブックをダウンロードしませんか。

無料ダウンロード
ブイキューブ

執筆者ブイキューブ

Agoraの日本総代理店として、配信/通話SDKの提供だけでなく、導入支援から行い幅広いコミュニケーションサービスに携わっている。
関連記事

先頭へ戻る