44 lines
1.6 KiB
PHP
44 lines
1.6 KiB
PHP
|
|
<?php
|
||
|
|
|
||
|
|
namespace app\api\model;
|
||
|
|
|
||
|
|
use think\Model;
|
||
|
|
|
||
|
|
class ShengWang extends Model
|
||
|
|
{
|
||
|
|
public function getOnlineUser($room_id)
|
||
|
|
{
|
||
|
|
// 客户 ID
|
||
|
|
$agora_app_id = get_system_config_value("agora_app_id");
|
||
|
|
$customerKey = get_system_config_value("agora_app_key");
|
||
|
|
// 客户密钥
|
||
|
|
$customerSecret = get_system_config_value("agora_app_secret");
|
||
|
|
// 拼接客户 ID 和客户密钥
|
||
|
|
$credentials = $customerKey . ":" . $customerSecret;
|
||
|
|
// 使用 base64 进行编码
|
||
|
|
$base64Credentials = base64_encode($credentials);
|
||
|
|
// 创建 authorization header
|
||
|
|
$arr_header = [
|
||
|
|
"Authorization" => "Basic " . $base64Credentials];
|
||
|
|
|
||
|
|
$url = "https://api.sd-rtn.com/dev/v1/channel/user/{$agora_app_id}/{$room_id}";
|
||
|
|
|
||
|
|
$result = myCurl($url,'',$arr_header);
|
||
|
|
$data = json_decode($result, true);
|
||
|
|
|
||
|
|
if(isset($data['success']) && $data['success']){
|
||
|
|
if($data['data']['channel_exist']){
|
||
|
|
if($data['data']['mode'] == 2){
|
||
|
|
$redata = array_merge($data['data']['broadcasters'],$data['data']['audience']);
|
||
|
|
return ['code' => 1, 'msg' => '获取成功', 'data' => $redata];
|
||
|
|
}else{
|
||
|
|
return ['code' => 1, 'msg' => '获取成功', 'data' => $data['data']['users']];
|
||
|
|
}
|
||
|
|
}else{
|
||
|
|
return ['code' => 0, 'msg' => '房间不存在', 'data' => null];
|
||
|
|
}
|
||
|
|
}else{
|
||
|
|
return ['code' => 0, 'msg' => $data['message'], 'data' => null];
|
||
|
|
}
|
||
|
|
}
|
||
|
|
}
|