【问题标题】:Monitor icecast using node.js使用 node.js 监控 icecast
【发布时间】:2020-10-07 12:21:21
【问题描述】:

我有一个相当模糊的问题,但我希望能得到一些帮助。

我在 unbuntu 服务器上安装了 icecast,使用 nginx 设置了两个服务器块。

Icecast 设置为在 https://stream.domain.com:8443/stream 上流式传输

我有一个在 https://app.domain.com 上运行的 node.js 应用程序

有没有办法使用节点“监听”icecast 域/流/端口,并在流启动时启动一个函数,并在流停止时停止它?

我不希望有一个完整的解决方案,只是为我指明正确方向的线索!提前谢谢你。

【问题讨论】:

  • 您可以使用<on-connect><on-disconnect> 标签在您的icecast 配置中进行设置

标签: node.js icecast


【解决方案1】:

提出请求

https://stream.domain.com:8443/status-json.xsl

它会返回一个服务器的 JSON 状态,然后查看这个 JSON 中的“source”键 - 不为空的“source”将表明有一个源连接到服务器并且 Icecast 正在广播一些东西。 该 JSON 还提供了许多您也可以使用的附加信息。

另外一个基本的检查是尝试连接到端口 8443 - 如果连接在 5 秒内没有发生 - 这将表明 Icecast 完全关闭。

【讨论】:

  • 我知道 status-json.xsl,但问题是我的节点应用程序正在服务器上运行,并且当 icecast 流上线时它应该做一些事情。我无法手动请求状态 url。
  • 为什么不按间隔请求 Icecast JSON,比如 5 秒?并在它在线时做出反应。
猜你喜欢
  • 2020-02-10
  • 1970-01-01
  • 2011-06-21
  • 1970-01-01
  • 1970-01-01
  • 2013-11-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多