Studiomonitor und Cartwall

Hi,

entweder bin ich blind oder es gibt wirklich nichts dazu. Hab jetzt ne ganze Weile gesucht. Ich suche, wenn es da etwas gibt, die Variablen für Cartwall HTTP-GET Logging.

Ich habe einen kleinen Studiomonitor, wo ich mir OnAir-Status, Mik-Status, EOF-Status, den aktuell laufenden Titel sowie die nächsten 9 Titel anzeigen lasse.

Bei den Titeln ist das ja recht einfach mit %a - %b aber wie sieht das beim Cartwall aus. Welche Variablen werden da genutzt, damit ich mir z.B. 6 Player des Cartwalls im Studiomonitor anzeigen lassen kann?

Wie gesagt, ich finde diesbezüglich nichts.

Servus,

das könnte man ähnlich wie in diesem Beispiel mittels eines kleinen Skripts lösen:

procedure OnPlayerStateChange(PlaylistIndex: integer; PlayerIndex: integer; 
  OldState: TPlayerState; NewState: TPlayerState; Item: IPlaylistItem);
begin
  if NewState = psPlaying then begin
    SetRuntimeData('CartIndex', '');
  end
end;

procedure OnCartwallPlayerStateChange(PlayerIndex: integer;
  OldState: TPlayerState; NewState: TPlayerState;
  Item: IAudioCartwallItem; PlaylistItem: IPlaylistItem;
  OnAirMode: TCartwallOnAirMode);
begin
  if NewState = psPlaying then begin
    SetRuntimeData('CartIndex', 'Es spielt Cartplayer ' + IntToStr(PlayerIndex));
  end
  else if NewState = psStopped then begin
    SetRuntimeData('CartIndex', '');
  end;
end;

begin
end.

Probier das mal aus. Das Skript installierst Du als Hintergrundskript, ins Log schreibst Du mit

%R{CartIndex}

Geloggte Grüße

TSD

Ok, danke erst mal, ich werde das mal versuchen das entsprechend mit einzubauen.

Vg

So, das haut so nicht hin. Wenn ich jetzt den Cartwall abspiele, egal welchen, wird das als aktuell gespielter Titel angezeigt.

Ich hab das bei mir wie folgt:

Ich habe eine *.ini für das HTTP-Logging. Für die insgesamt 10 angezeigten Titel dann dieses hier:

Param0=title-1
Value0=%a - %b
Param9=title-1-start
Value9=%S{tt}
Param18=title-1-cuedata
Value18=%c{FadeOut} - %c{CueIn}

Das Ganze dann natürlich entsprechend durch + erweitert. Funktioniert auch alles. Das wird dann an eine *.php auf meinem Server geschickt und dort entsprechend weiter “verarbeitet”.

Und genau auf diese Weise hätte ich das jetzt für den Cartwall. Nun weiß ich aber eben nicht, ob es für den Cartwall überhaupt solche Variablen gibt und wenn ja, finde ich sie nicht.

Hier nochmal grafisch. In den Playern (Feldern) soll der Titel (oder was auch immer) des jeweiligen Cartwallplayers stehen und der aktive Player soll blinken. Das mit dem Blinken würde ich dann wie bei meiner EOF oder MIC Anzeige machen. Es geht mir jetzt halt nur um die Variablen (falls es die gibt) für den Cartwall.

VG

Oha, das ist jetzt ein ganzer Haufen neuer Anforderungen auf einmal.

Zunächst zu Deiner Ausgangsfrage: Du läßt das Skript im Hintergrund laufen und trägst in Deine .ini ein:

…
Value0=%b - %a - %R{CartIndex}
…

oder so ähnlich. Die Zeile mit Es spielt … kann natürlich verändert werden, z. b. in

SetRuntimeData('CartIndex', 'Cartwall Player ' + IntToStr(PlayerIndex));

Deine weiteren Wünsche kommen mir irgendwie bekannt vor. @shorty.xs hat sich hier und hier ausführlich mit On-Air-Screens beschäftigt – hattest Du das schon gefunden?

Abendliche Grüße

TSD

Den 2. Link da mit dem Beitrag von shorty kenne ich schon, den anderen werde ich mir mal anschauen, ob ich da was finden.

Wünsche sind da ja eigentlich keine, ok, nur was den Cartwall angeht. Den Rest hab ich schon und der funktioniert auch. So wie auf dem Bild sieht es zur Zeit aus, wie gesagt, alles was da zu sehen ist funktioniert so wie es funktionieren soll, das hatte ich nur erwähnt um aufzuzeigen was ich habe.

Jetzt würde ich halt entweder unten drunter oder daneben, das würde ich dann noch überlegen, halt Quasi eine Kopie des Cartwalls einbauen, begrenzt auf 6 oder so, je nachdem, wieviel Platz letztendlich da ist, und dort sollen die Titel des jeweiligen Jingles oder was auch immer da dann drin ist, angezeigt werden. Wie gesagt, beim Player wird Interpret und Titel ja über %a - %b angezeigt, daher dachte ich, ähnliches gibt es vielleicht auch beim Cartwall.

Aber erst mal schaue ich mit den einen Link da von shorty noch an.

VG

Ja, funktioniert bei mir genauso für die Cartwall. Du solltest in der Config aber Logging für die Cartwall erlaubt haben:



Berücksichtigte Grüße

TSD

Ja, das Logging für den Cartwall ist aktiviert, aber irgendwie funktioniert das nicht so wie es soll. Hier mal meine komplette *.ini (das %R{CartIndex} ) ist jetzt natürlich nur zum Test drin. Habe auch das Script von dir mal unangetastet gelassen, das heißt, es müsste ja nun da stehen z.B. "Es spielt Cartwall 3). Steht es aber eben nicht. Er zeigt wirklich nur den Titel des Playerinhalts an (z.B. Jingle 5)

So, hier jetzt mal die *.ini

[LogInterface0]
Type=HTTPGET
BaseURL=URLZUMWEBSERVER/monitor/monitor.php
User=
Password=base64:
OnStart=on
OnStop=off
UTF8Encoding=on
IncludeItemTypes=Music
Options=-
Delay=0
Enabled=on
Param0=title-1
Value0=%b - %a - %R{CartIndex}
Param1=title-2
Value1=%+a - %+b
Param2=title-3
Value2=%++a - %++b
Param3=title-4
Value3=%+++a - %+++b
Param4=title-5
Value4=%++++a - %++++b
Param5=title-6
Value5=%+++++a - %+++++b
Param6=title-7
Value6=%++++++a - %++++++b
Param7=title-8
Value7=%+++++++a - %+++++++b
Param8=title-9
Value8=%++++++++a - %++++++++b
Param9=title-1-start
Value9=%S{tt}
Param10=title-2-start
Value10=%+S{tt}
Param11=title-3-start
Value11=%++S{tt}
Param12=title-4-start
Value12=%+++S{tt}
Param13=title-5-start
Value13=%++++S{tt}
Param14=title-6-start
Value14=%+++++S{tt}
Param15=title-7-start
Value15=%++++++S{tt}
Param16=title-8-start
Value16=%+++++++S{tt}
Param17=title-9-start
Value17=%++++++++S{tt}
Param18=title-1-cuedata
Value18=%c{FadeOut} - %c{CueIn}
Param19=title-2-cuedata
Value19=%+c{FadeOut} - %+c{CueIn}
Param20=title-3-cuedata
Value20=%++c{FadeOut} - %++c{CueIn}
Param21=title-4-cuedata
Value21=%+++c{FadeOut} - %+++c{CueIn}
Param22=title-5-cuedata
Value22=%++++c{FadeOut} - %++++c{CueIn}
Param23=title-6-cuedata
Value23=%+++++c{FadeOut} - %+++++c{CueIn}
Param24=title-7-cuedata
Value24=%++++++c{FadeOut} - %++++++c{CueIn}
Param25=title-8-cuedata
Value25=%+++++++c{FadeOut} - %+++++++c{CueIn}
Param26=title-9-cuedata
Value26=%++++++++c{FadeOut} - %++++++++c{CueIn}

Das alles wird dann mittels der monitor.php in eine *.txt Datei geschrieben, die dann ausgelesen wird um das Ganze dann auf der Webseite anzeigen zu lassen. Siehe oben den Screenshot.

Ich ging jetzt, wahrscheinlich fälschlich davon aus, dass man z.B. bei Cartwall die *.ini erweitern kann, etwa in dieser Form hier:

Param27=cartwallplayer-1
Value27=??? ja keine Ahnung :smiley: Das wäre das was ich gebraucht hätte.

Ok, scheint es also in der Form nicht zu geben, ist jetzt nicht tragisch, ich schaue mal ob ich das noch anders, vielleicht mit dem von dir verlinkten Beitrag löschen kann.

VG

Jaaa … :thinking: Das findest Du dort wahrscheinlich nicht. Funktioniert denn das Logging in eine Datei? Sind die Elemente im Cartplayer von

IncludeItemTypes=Music

?

Ausschließliche Grüße

TSD

Ja, das Logging in eine Datei funktioniert. Die *.txt Datei wird ordnungsgemäß beschrieben und dann wird das Ganze auch richtig anzeigt. Aber eben so dass der Cartwall nur den Titel anzeigt, aber eben nicht das was in deinem Script drin steht “Es spielt Cartwall XX”. Der zeigt halt nur das an, was von mAirlist mittels Logging in die *.txt Datei geschrieben wird.

Ich meine gut, wenn mein Vorhaben so oder gar nicht umsetzbar ist, ist das auch kein Weltuntergang. Hätte es so funktioniert wie gedacht, wäre es ne nette Erweiterung gewesen, aber man kann nicht alles haben und ich werde es überleben.

P.S. Ja, hatte die 3 Jingles mal auf Music gestellt.

VG

Ich habe, wenngleich verspätet, es ausprobiert mit obigem Skript:

procedure OnPlayerStateChange(PlaylistIndex: integer; PlayerIndex: integer; 
  OldState: TPlayerState; NewState: TPlayerState; Item: IPlaylistItem);
begin
  if NewState = psPlaying then begin
    SetRuntimeData('CartIndex', '');
  end
end;

procedure OnCartwallPlayerStateChange(PlayerIndex: integer;
  OldState: TPlayerState; NewState: TPlayerState;
  Item: IAudioCartwallItem; PlaylistItem: IPlaylistItem;
  OnAirMode: TCartwallOnAirMode);
begin
  if NewState = psPlaying then begin
    SetRuntimeData('CartIndex', 'Es spielt Cartplayer ' + IntToStr(PlayerIndex));
  end
  else if NewState = psStopped then begin
    SetRuntimeData('CartIndex', '');
  end;
end;

begin
end.


In die Log-Datei schreibe ich z. B.:
%T: %a - %b ... %R{CartIndex}

Damit erhalte ich eine Ausgabe wie

13.03.20 08:46:11: 10cc (Ten c.c.) - Life Is A Minestrone ... Es spielt Cartplayer 3

(Nicht wundern, was ich für einen Blödsinn auf der Cartmaschine liegen habe, es handelt sich hier um mein Testsystem.)

Was genau jetzt bei Dir nicht klappt, kann ich von hier aus nicht nachvollziehen. Sorry. :slightly_frowning_face:


Verifizierte Grüße

TSD

Ok, danke dir erst mal, ich werde das zeitnah mal ausprobieren und dann eine Rückmeldung geben.