Icecast - список клиентов в веб-каталоге - PullRequest
1 голос
/ 01 июля 2019

Я пытаюсь показать список зарегистрированных слушателей для потоковой передачи вне области администратора. Безуспешно.

Я скопировал listclients.xsl из каталога / admin в / web. Я создал сим-ссылку в / usr / share / icecast2 / web. Я могу открыть:
radio_adres.com:8000/listclients.xsl?mount=/mount_name.ogg
, и он выглядит так же, как страница:
radio_adres.com:8000/admin/listclients. xsl? mount = / mount_name.ogg
кроме одного. Нет списка слушателей.

<xsl:value-of select="@mount"/ > показывает имя потока и <xsl:value-of select="@listeners" /> количество зарегистрированных, но цикл, который находится в исходном файле, чтобы показать, что слушатели <xsl:for-each select="listener"></xsl:for-each> не работают.

У меня есть 3 уровня журнала, но нет ошибок или даже предупреждений. Ничего такого. Может, icecast не позволяет показывать список клиентов без логина?

1 Ответ

1 голос
/ 02 июля 2019

Это будет не работать, так как /admin имеет гораздо больший доступ к данным, и фактически каждое преобразование XSL будет только работать корректно для определенных конечных точек в пределах /admin.Помимо этого доступны только данные из /admin/stats (XML), и они не включают конфиденциальные данные, такие как все данные клиента.Хотя это немного больше, чем обычно доступно в status.xsl по умолчанию.

Если вы хотите раскрыть эту информацию, вы можете передать запрос через обратный прокси-сервер или явно обработать его внутри второго веб-сервера с помощьюскрипт, такой как PHP, python и т. д.

Обратите внимание, что если вы хотите получить информацию для определенной точки монтирования, то вы также можете использовать source учетные данныеэто монтирование для доступа к определенным конечным точкам в /admin.Для получения дополнительной информации см. Документацию, указанную ниже.

См. Также:

...