Java 实现阿里云直播推流在线列表查询

简介: 版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82788014 ...
版权声明:本文首发 http://asing1elife.com ,转载请注明出处。 https://blog.csdn.net/asing1elife/article/details/82788014

Java 实现阿里云直播推流在线列表查询

阿里云直播推流在线列表可以通过 API 的方式进行查询获取

更多精彩

官网

查询推流在线列表

初始化配置

  1. Constants.ALI_ACCESS_KEY_ID 是阿里云服务密钥 id ,所有服务共用
  2. Constants.ALI_ACCESS_SECRET 是阿里云服务密钥,所有服务共用
  3. 将客户端的初始化放置在静态块中可以保证配置只初始化一次
private static IAcsClient iAcsClient;

static {
    // 初始化配置
    String regionId = "cn-shanghai";
    DefaultProfile profile = DefaultProfile.getProfile(regionId, Constants.ALI_ACCESS_KEY_ID, Constants.ALI_ACCESS_SECRET);

    iAcsClient = new DefaultAcsClient(profile);

    // 本地调试
    // System.setProperty("http.proxyHost", "127.0.0.1");
    // System.setProperty("http.proxyPort", "8080");
}

查询推流在线列表

  1. Constants.ALI_LIVE_PULL_URL 是阿里云直播的推流地址
  2. Constants.ALI_LIVE_APP_NAME 是阿流云直播的应用名称
    • 如果不指定,则会查询出所有的应用的推流列表
    • 只能是单纯的应用名称,和阿里云直播控制台设置的保持一直
  3. 获取到推流在线列表后,只需要进行流名称的匹配即可
public Boolean checkLiveBegin(String streamName) {
    // 查询推流在线列表
    DescribeLiveStreamsOnlineListRequest listRequest = new DescribeLiveStreamsOnlineListRequest();
    listRequest.setDomainName(Constants.ALI_LIVE_PULL_URL);
    listRequest.setAppName(Constants.ALI_LIVE_APP_NAME.replace("/", ""));

    try {
        DescribeLiveStreamsOnlineListResponse response = iAcsClient.getAcsResponse(listRequest);

        // 获取当前推流列表
        List<LiveStreamOnlineInfo> onlineInfos = response.getOnlineInfo();

        for (LiveStreamOnlineInfo onlineInfo : onlineInfos) {
            if (onlineInfo.getStreamName().equals(streamName)) {
                return true;
            }
        }

    } catch (ClientException e) {
        logger.error("获取拉流信息失败!", e);
    }

    return false;
}
目录
相关文章
|
26天前
|
安全 API 持续交付
要利用阿里云控制API查询您的阿里云资源
【2月更文挑战第33天】要利用阿里云控制API查询您的阿里云资源
18 3
|
1月前
|
存储 Java 程序员
Java判断列表中元素的唯一性
Java判断列表中元素的唯一性
|
1月前
|
SQL 存储 JSON
阿里云数据库 SelectDB 内核 Apache Doris 2.1.0 版本发布:开箱盲测性能大幅优化,复杂查询性能提升 100%
亲爱的社区小伙伴们,Apache Doris 2.1.0 版本已于 2024 年 3 月 8 日正式发布,新版本开箱盲测性能大幅优化,在复杂查询性能方面提升100%,新增Arrow Flight接口加速数据读取千倍,支持半结构化数据类型与分析函数。异步多表物化视图优化查询并助力仓库分层建模。引入自增列、自动分区等存储优化,提升实时写入效率。Workload Group 资源隔离强化及运行时监控功能升级,保障多负载场景下的稳定性。新版本已经上线,欢迎大家下载使用!
阿里云数据库 SelectDB 内核 Apache Doris 2.1.0 版本发布:开箱盲测性能大幅优化,复杂查询性能提升 100%
|
25天前
|
Java 数据库连接
Hibernate中使用Criteria查询及注解——(Dept.java)
Hibernate中使用Criteria查询及注解——(Dept.java)
14 1
|
2月前
|
Java 关系型数据库 应用服务中间件
阿里云RDS购买Linux完整过程——安装java环境并跑起来tomcat
阿里云RDS购买Linux完整过程——安装java环境并跑起来tomcat
45 0
|
1月前
|
弹性计算 前端开发 小程序
微信小程序上传文件至阿里云OSS直传(java后端签名+前端直传)
当前的通用文件上传方式是通过前端上传到服务器,再由服务器转存至对象存储。这种方式在处理小文件时效率尚可,但大文件上传因受限于服务器带宽,速度较慢。例如,一个100MB的文件在5Mbps带宽的阿里云ECS上上传至服务器需160秒。为解决此问题,可以采用后端签名的方式,使微信小程序直接上传文件到阿里云OSS,绕过服务器中转。具体操作包括在JAVA后端引入相关依赖,生成签名,并在微信小程序前端使用这个签名进行文件上传,注意设置正确的请求头和formData参数。这样能提高大文件上传的速度。
|
1月前
|
NoSQL Java 数据库连接
使用Java实现从数据库查出数据存入Redis,并在查询时先查Redis,如果Redis中没有数据再从数据库中读取
使用Java实现从数据库查出数据存入Redis,并在查询时先查Redis,如果Redis中没有数据再从数据库中读取
347 1
|
2月前
|
弹性计算 API Python
如何利用通义千问查询阿里云资源
本篇文章详细阐述了如何利用LangChain框架构建一款Python工具,该工具能够调用通义千问大模型来查询和获取阿里云资源信息。
115571 48
|
25天前
|
Java 数据库连接
Hibernate中使用Criteria查询及注解——(DeptTest.java)
Hibernate中使用Criteria查询及注解——(DeptTest.java)
8 1
|
25天前
|
Java 数据库连接
Hibernate中使用Criteria查询及注解——(Emp.java)
Hibernate中使用Criteria查询及注解——(Emp.java)
9 0