阿里云直播SDK的坑
1、直播云没有单独的SDK,直播部分被封装在CDN的相关SDK当中。
2、针对SDK,没有相关Demo。
3、针对SDK,没有相关的文档说明。
4、针对SDK的说明,官网上的说明与源码里面的说明完全不一致,初始化Client
与源代码文档中的REMEND.MD
完全不一致。
5、针对SDK没有封装哪些是常用的类,那些是访问比较少的类,与Senparc.WeiXin
相比差的不是一个级别。同时并不便捷,需要用户组合调用SDK进行拼装。
6、提供的SDK路径乱得一踏糊涂,使用年月日做命名空间名,想直接用没门,必须得各种调整。
7、针对SDK基于C#4.5版本,照顾不了低版本用户。当然也可以用户自己下载下来 重新编译。
阿里云SDK目录结构
1、
aliyun-net-sdk-core
:作为C# SDK引用核心包,只要使用阿里云的产品的C# 的SDK,该文件夹是核心,不管使用任何模块都必须引用此文件。
2、aliyun-net-sdk-cdn
:该文件夹是阿里云CDN产品的C#核心包,但是目前直播里面的SDK在此包中,也许是直播与CDN比较紧密吧!(PS:在开通直播产品时,CDN产品的开通是前提条件)
下图为阿里云的C# SDK整个库,里面包含阿里云的所有产品的C# SDK。
配置步骤
接下来,我们看看如何配置,这一步很关键。毕竟阿里云官网上的内容与SDK的Demo 有3个版本。
1、将整个C# SDK包放入项目目录中
由于当前只使用直播功能,因此只加入
aliyun-net-sdk-core
以及aliyun-net-sdk-cdn
这两个包。
2、初始化客户端
Region Id
:区域ID,可在源代码的aliyun-net-sdk-core
->Regions
->endpoints.xml
该文件查找。我默认为cn-shenzhen-inner
。
Access Key ID
:密匙ID,可在控制台Access Key 管理
当中创建后获取。(PS:这个我就不写我自己的了)
Access Key Secret
:密匙,同上。
IClientProfile clientProfile = DefaultProfile.GetProfile("Region Id", "Access Key ID","Access Key Secret");
IAcsClient curClient=new DefaultAcsClient(clientProfile);
3、简单请求
DescribeLiveRecordConfigRequest request =new DescribeLiveRecordConfigRequest();
request.DomainName = "live.jcebing.com";
DescribeLiveRecordConfigResponse response = curClient.GetAcsResponse(request);
4、完整的代码
class Program
{
private static IAcsClient client;
static void Main(string[] args)
{
TestLive();
}
private static void TestLive()
{
IClientProfile clientProfile = DefaultProfile.GetProfile("cn-shenzhen-inner", "",
"");
IAcsClient curClient=new DefaultAcsClient(clientProfile);
//初始化直播具体操作
DescribeLiveRecordConfigRequest request =new DescribeLiveRecordConfigRequest();
request.DomainName = "";//域名
DescribeLiveRecordConfigResponse response = curClient.GetAcsResponse(request);
System.Console.WriteLine(response.LiveAppRecordList.Count);
System.Console.ReadKey();
}
}