1

つまり、基本的に私がやりたいことは、現在ライブのストリームの視聴者数をリアルタイムで取得することです。ストリームがライブかどうかを確認しています。更新された値をドキュメントに送信できるように、更新された値を取得するためにAPIを常にpingする方法はありますか。この場合、最終的に設定した$viewers変数を更新します。それが違いを生む場合、私が作成しているアプリケーションはCodeIgniter framework. 以下は、現在呼び出しを行う必要があるコードです。現在、実際の値を取得するにはページをリロードする必要があり、cURL を使用して API 呼び出しを行っています。

class Streaming {   
    var $base_url = "https://api.twitch.tv/kraken/";
    var $client_id = 'client_id_here';
  public function load_stream_stats($channel) {
    $curl = curl_init();
    curl_setopt_array($curl, array( CURLOPT_RETURNTRANSFER => 1,
                                    CURLOPT_URL => $this->base_url . 'streams/'. $channel .'?client_id=' . $this->client_id
                                  )
    );
    $result = curl_exec($curl);
    //makes sure that the cURL was excuted if not it generates the error stating that it didn't succeed.
    if(!curl_exec($curl)){
        die('Error: "' . curl_error($curl) . '" - Code: ' . curl_errno($curl));
    } else {
        //cURL Response worked
        if(!empty($channel)) {
            $return = json_decode($result);
            if($return->stream == null) {
                return;
                // stream is offline no need to do anything
            } else {
                $stream_details = array('viewers' => $return->stream->viewers);
                // $return->stream->viewers gives a number e.g. 1052
                return $stream_details;
            }
        } 
    }
    curl_close($curl);
  }
}

問題は、TwitchtV API に ping を送信して、REST API から更新された視聴者数を取得する方法です。

4

1 に答える 1