腾讯的PHP框架,腾讯音视频 TRTC
namespace trc;
// 腾讯音视频
class trc{
private $secretId = 'AKIDyDGxubFJtGRN6EKk8rPjmYswmlsiLXXS 111';
private $secretKey = 'qQozwhFSM0NUnriKdgXCnFUTBdpoW07y';
public function __construct($secretId=null, $secretKey=null) {
if ($secretId) $this->secretId = $secretId;
if ($secretKey) $this->secretKey = $secretKey;
}
// 生成授权链接
public function get_sha(){
$host = "cvm.tencentcloudapi.com";
$service = "cvm";
$version = "2017-03-12";
$action = "DescribeInstances";
$region = "ap-guangzhou";
$timestamp = time();
$algorithm = "TC3-HMAC-SHA256";
// step 1: 生成规范请求字符串
$httpRequestMethod = "POST";
$canonicalUri = "/";
$canonicalQueryString = "";
$canonicalHeaders = "content-type:application/json; charset=utf-8\n"."host:".$host."\n";
$signedHeaders = "content-type;host";
$payload = '{"Limit": 1, "Filters": [{"Values": ["\u672a\u547d\u540d"], "Name": "instance-name"}]}';
$hashedRequestPayload = hash("SHA256", $payload);
$canonicalRequest = $httpRequestMethod."\n"
.$canonicalUri."\n"
.$canonicalQueryString."\n"
.$canonicalHeaders."\n"
.$signedHeaders."\n"
.$hashedRequestPayload;
// echo $canonicalRequest.PHP_EOL;
// step 2: 生成要签名的字符串
$date = gmdate("Y-m-d", $timestamp);
$credentialScope = $date."/".$service."/tc3_request";
$hashedCanonicalRequest = hash("SHA256", $canonicalRequest);
$stringToSign = $algorithm."\n"
.$timestamp."\n"
.$credentialScope."\n"
.$hashedCanonicalRequest;
// echo $stringToSign.PHP_EOL;
// step 3: 签名字符串
$secretDate = hash_hmac("SHA256", $date, "TC3".$this->secretKey, true);
$secretService = hash_hmac("SHA256", $service, $secretDate, true);
$secretSigning = hash_hmac("SHA256", "tc3_request", $secretService, true);
$signature = hash_hmac("SHA256", $stringToSign, $secretSigning);
// echo $signature.PHP_EOL;
// step 4: 生成授权
$authorization = $algorithm
." Credential=".$this->secretId."/".$credentialScope
.", SignedHeaders=content-type;host, Signature=".$signature;
// echo $authorization.PHP_EOL;
$curl = "curl -X POST https://".$host
.' -H "Authorization: '.$authorization.'"'
.' -H "Content-Type: application/json; charset=utf-8"'
.' -H "Host: '.$host.'"'
.' -H "X-TC-Action: '.$action.'"'
.' -H "X-TC-Timestamp: '.$timestamp.'"'
.' -H "X-TC-Version: '.$version.'"'
.' -H "X-TC-Region: '.$region.'"'
." -d '".$payload."'";
return $curl.PHP_EOL;
}
}
腾讯的PHP框架,腾讯音视频 TRTC相关推荐
- [Web端接入经验分享] 腾讯云即时通信TIM、实时音视频TRTC
[Web端接入经验分享] 腾讯云即时通信TIM.实时音视频TRTC 即时通信TIM官网地址 即时通信TIM SDK API文档地址 实时音视频TRTC官网地址 实时音视频TRTC SDK API文档地 ...
- 【新知实验室】——腾讯云音视频TRTC体验
腾讯实时音视频 TRTC 是什么? 腾讯实时音视频(Tencent Real-Time Communication,TRTC)将腾讯21年来在网络与音视频技术上的深度积累,以多人音视频通话和低延时互动 ...
- 用腾讯即时通讯IM和实时音视频实现陪玩系统源码的语音通话功能
在陪玩系统源码中,用户之间主要的交流方式就是语音通话,实时互动性的语音通话能让人产生面对面交谈的感觉,所以在陪玩系统源码中,语音通话功能的开发非常重要,今天我们就一起来看看如何用腾讯即时通讯IM和实时 ...
- 腾讯互动白板+即时通讯+实时音视频,Android学生端接入
腾讯互动白板+即时通讯+实时音视频,Android学生端接入 一.简介 线上教学方案:腾讯云互动白板(Tencent Interactive Whiteboard,TIW)+即时通信(Instant ...
- 用腾讯即时通讯IM和实时音视频实现完整语音通话功能
说来奇怪,即时通讯领域的霸主QQ,微信,旗下产品出的腾讯即时通讯IM就像个残疾人一样,这里不对那里不对,要达到生产级别,就不得不去改它很多源码才行.今天先不吐槽其他的,我们看看如何在腾讯Im里面完成语 ...
- 已拿字节、腾讯、墨墨 offer,音视频开发进阶指南pdf
背了多少单词 (更慌了,随口说100个左右) 怎么知道有墨墨这个app的 (同学介绍) 你简历说你自己心思缜密,但是你简历上的句子的标点符号有问题啊.(emmm) 项目的UI问题 技术 : JavaS ...
- 【新知实验室】——腾讯云音视频TRTC初体验
一.产品简介 腾讯实时音视频(Tencent Real-Time Communication,TRTC)是腾讯以多人音视频通话和低延时互动直播两大场景化方案,通过腾讯云服务向开发者开放,致力于帮助开发 ...
- 共建音视频技术生态,腾讯云成国内首家直播+点播全线支持AV1视频处理业务公有云
日前,腾讯视频云直播.点播.媒体处理全线产品均已支持AV1标准,据悉,腾讯云也是国内首家直播+点播同时支持AV1视频处理业务的公有云厂商. 据悉,AV1(Alliance for Open Media ...
- 李郁韬:短期爆发还是未来趋势?腾讯云海量音视频通信服务背后的技术发展
面临特殊时期,无论远程办公.还是学校"停课不停学"都成为时下的必然选择,众多视频会议平台也在特殊环境下开启了短期免费开放及功能服务.但与此同时不可避免会带来突发的大规模在线视频与协 ...
最新文章
- 正则化技巧:标签平滑(Label Smoothing)以及在 PyTorch 中的实现
- Webpack 的 HtmlWebpackPlugin 如何控制某个 chunks 的 inject 位置?
- Spring任务调度
- DSDT亮度修复失败
- WPF使用Linq 一行代码搞定数据绑定
- RANSC算法(随机样本一致性)
- Lingo优化模型概述
- Divide and conquer:Drying(POJ 3104)
- 这场直播,我们把 Apache 顶级项目盛会搬来了!
- rsyslog官方文档
- 《惢客创业日记》2019.05.20(周一)向技术大牛请教(二)
- 【windows】Windows电脑怎么卸载服务/删除服务?
- linux rs 485应用程序,Linux 的 RS485 通信协议.pdf
- 地对地导弹地对地导弹地对地导弹
- 人生苦短_人生苦短,懂事太晚!
- 一次性餐具 disposable dishware
- 读书笔记:杨绛《我们仨》
- freetype 使用解析---矢量字体
- 生活在数据时代;聊聊数据分析在当今社会生活中的有趣应用
- Ten Digit Powers