Event durch andere Events aus- und wieder einschalten lassen

Hallo zusammen,

wer kann mir Scripting Tipps geben, wie ich über einen Scriptbefehl ein Event deaktivieren und aktivieren kann?

Ziel: wir haben Events, die uns von Montag bis Freitag um 8 Uhr einen zusätzlichen Encoder für die Monring Show ein- und um 12 Uhr wieder ausschalten. Klappt prima.

Jetzt brauche ich eine Lösung für zum Beispiel den Feiertag 1.5., denn genau da soll das nicht passieren.

Idee war ein Event zu haben, welches genau 1x zum Beispiel am 1.5. um 6 Uhr das Morning Show Ein- und das Auschaltevent deaktiviert und ein wieteren Event, welches genau 1x am 1.5. um 13 Uhr beides wieder aktiviert, indem es genau dann ein Script auslöst, wölches das jeweils macht.

Gibt es dafür einen Sciptbefehl? Oder habt Ihr andere Ideen, auf die ich einfach nicht selbst komme?

Ich danke Euch im Vorraus für Eure Hilfe.

Viele Grüße
Martin

Und das einmalig manuell zu machen ist keine Option?

Sportlich, das Skript für den Maifeiertag am Vorabend um sieben anzufragen. Meine Empfehlung: Richte Dich nach @ssnoopy .

Für morgen mach ich das manuell. Der 1.5. hat mich jetzt aber auf die Herausforderung gebracht. Es geht um alle weiteren Feiertage - alle im Jahr - die unter der Woche sind und an denen ich es nicht manuell machen kann.

Hallo zusammen, ich habe das Forum weiter durchsucht und hilfreichen Input gefunden.

Gelöst habe ich es nun mit zwei Scripten, die ich mit je einem “Einmal”-Event starte. Das kann ich vorab komplett einrichten und damit alle Feiertage in der Zukunft abdecken, an denen ich die anderen Events nicht selbst deaktivieren und wieder aktivieren kann.

Mein Scipte deaktivieren und aktivieren je drei Events. Das kann man nach Bedarf anpassen.

Script zum Deaktivieren:

var
  i: integer;

begin
  for i := 0 to IPlayoutInstance(Instance).GetEventList.GetCount - 1 do
    if (IPlayoutInstance(Instance).GetEventList.GetItem(i).GetDescription = 'Beschreibung Event 1')
    or (IPlayoutInstance(Instance).GetEventList.GetItem(i).GetDescription = 'Beschreibung Event 2')
    or (IPlayoutInstance(Instance).GetEventList.GetItem(i).GetDescription = 'Beschreibung Event 3') then
       IPlayoutInstance(Instance).GetEventList.GetItem(i).SetEnabled(false);
end.

Script zum Aktivieren:

var
  i: integer;

begin
  for i := 0 to IPlayoutInstance(Instance).GetEventList.GetCount - 1 do
    if (IPlayoutInstance(Instance).GetEventList.GetItem(i).GetDescription = 'Beschreibung Event 1')
    or (IPlayoutInstance(Instance).GetEventList.GetItem(i).GetDescription = 'Beschreibung Event 2')
    or (IPlayoutInstance(Instance).GetEventList.GetItem(i).GetDescription = 'Beschreibung Event 3') then
       IPlayoutInstance(Instance).GetEventList.GetItem(i).SetEnabled(true);
end.

Danke für euren Input.

Viele Grüße
Martin

1 Like