Dynamischer Button? Status IC

Nach einem Gedankenspiel mit dem Stream Monitor auf dessen drei Live Mountpoints eingerichtet sind, würde ich gerne wissen ob folgendes theoretisch möglich wäre:

  • ist es möglich einen oder mehrere Button in mAirList anhand eines Wertes “dynamisch” einzurichten und dessen Status anzeigen zu lassen?
  • Ist es möglich die Beschriftung des Buttons anhand eines Wertes dynamisch anzeigen zu lassen?

Hintergrund:
Auf einem Windows Server ist mAirList 24/7 Automation incl dem Stream Monitor eingerichtet. Auf dessen Stream Monitor sind über einen IceCast drei Mountpoints mit unterschiedlichen Prioritäten vorgesehen.

Möchte ein Moderator live senden, sollte er vorab prüfen ob einer der Mountpoints bereits von einem Kollegen belegt ist.
Natürlich könnte er das anhand der IC Status Seite machen oder den Stream hören, das würde ich jedoch gerne mit diesem Gedankenspiel eleganter umsetzen können

Was müsste einer dieser Encoder Verbinden Buttons also können?

  • Status Abfrage ob Mountpoint Live ist
  • Status bei live abfragen welcher Moderator live ist
    (IC könnte über gewisse Meta Angaben zb. AIM den Moderator eingetragen anzeigen)
  • Farbe ändern bei Zuständen: Belegt = Rot, Frei = Grün, Verbunden = Blau
  • entsprechenden Encoder bei betätigen verbinden

Ist das in irgend einer Weise anhand Scripten überhaupt innerhalb mAirList möglich?

Vielen Dank.

2 Likes

Im Prinzip ja, die Belegtanzeige hatten wir hier schon mal in einer Form.

Moderatorstatus: ???

Verbinden bei Betätigung geht.

1 Like

Gutes Gedächtnis. Mir war auch so, als hätten wir sowas schon mal gehabt. Aber ich hab es nicht gefunden…

Nur müsste man ja auch den MOUNTPOINT checken, nicht nur die Encoder-Verbindung.

Danke für deine Antwort.
Das beschreibt aber, soweit ich das jetzt kapiert habe, nur den eigenen Encoder Status.

Mir ging es darum, einen Mountpoint IC Status ab zu fragen.

  • IP: Port/live1 online ja/nein

  • Wenn ja, lese AIM Tag [Moderator Name]

  • ändere Button Farbe Rot

  • beschrifte Button mit AIM Tag

  • Wenn 404 (Mountpoint frei)

  • Button Grün Beschriftung Frei

  • Auf Klick verbinde Mountpoint.

  • wiederhole jede Sekunde.

Ach so, ich bin nicht so der Streamspezialist. Das ist nach meiner Kenntnis so (noch) nicht vorgesehen. Da müßten wir @Torben draufhetzen.

1 Like

Sofern die benötigten Angaben über die den Iceast-XML-Status abrufbar sind, sollte es möglich sein eine Script zu schreiben, das periodisch diesen Status abruft, die relevanten Informationen extrahiert und über Befehle an die Bildschirmobjekte weitergibt.

1 Like

Hättest Du gegebenenfalls ein paar Anhaltspunkte für mich, wo ich ansetzen könnte? Ich finde eine IBassEncEncoderConnection mit diversen offensichtlich nützlichen Methoden …

Nein, damit geht das nicht - man müsste wirklich mit HTTPGet() usw. arbeiten, also im Script selbst den Status abrufen und verarbeiten.

Grundvoraussetzung wäre natürlich, dass alle benötigten Informationen auch im XML enthalten sind. Das solltet ihr vorab prüfen:

https://icecast.org/docs/icecast-trunk/server_stats/

2 Likes

Hallo Torben,

danke für den Hinweis. Leider ist es anscheinend bei IC nicht möglich erstens eine normale XML Datei aus zu geben sondern nur eine XSL. Worin der Unterschied liegt kann ich natürlich nicht sagen.

Nächstes Problem sind die Mountpoints: Diese werden in der Webübersicht nur angezeigt, wenn diese online also OnAir sind. Inwiefern das bei der Programmierung hinderlich ist, weiß ich aktuell natürlich nicht. Das könnte Tondose vermutlich auch beantworten.

Letzt endlich ist IC ja nicht zwingend erforderlich da es ja “nur” für interne Zwecke ist. Alternativ könnte ich auch mehrere SC1 mit verschiedenen Ports anlegen?

Hier stellt sich jetzt die Frage was am Sinnvollsten ist. Ach ja, und auf Windows sollte es am besten auch noch laufen da ich keinen eigenen Linux Server habe :sweat_smile: