"Altes" ONAIR-Script funktioniert nur noch teilweise

Mich würden ein paar Hintergründe zum Script interessieren. Sehe ich das richtig, es setzt ein Bildschirmobjekt (Text) je nach Status des Encoders?

ONAIRPRG ist der Name Deines Bildschirmobjektes?

Würde sowas mit einem Button und einem Weiteren Status auch funktionieren?
Mit dem Button möchte ich die Encoder Verbindung ein oder aus schalten können.

Ich würde also folgende stati abfragen wollen:
Encoder aktiv (Also ist der Haken vor dem jeweiligen Eintrag gesetzt oder nicht)
Sendung läuft (Für die Encoder, die auch scharf geschaltet sind)

@Anna_On_Air hatte da mal sowas in der Richtung gebaut, finde ich nur gerade nicht wieder.

EDIT: Ich habe das mal probiert und lande in einem Syntax Error:

procedure OnLoad;
    begin
		EnableTimer(100);
    end;

procedure OnTimer;
    begin

		if (Encoder.GetConnections.GetItem(0).GetState = ecsConnected) then begin

			if Encoder.GetConnections.GetItem(0).GetState = ecsConnected then
				ExecuteCommand(‘ONAIRPRG TEXT ON AIR’);
				ExecuteCommand(‘ONAIRPRG BACKGROUNDCOLOR #FF0000’)
				ExecuteCommand(‘ONAIRPRG FONTCOLOR #FFFFFF’)
			end

			else begin

			ExecuteCommand(‘ONAIRPRG BACKGROUNDCOLOR #00FF00’)
			ExecuteCommand(‘ONAIRPRG FONTCOLOR #000000’)
			ExecuteCommand(‘ONAIRPRG TEXT KEINE SENDUNG!’)

		if (Encoder.GetConnections.GetItem(0).GetState = ecsConnecting) then begin

			ExecuteCommand(‘ONAIRPRG TEXT !OFF AIR!’)
			ExecuteCommand(‘ONAIRPRG FONTCOLOR #FFFFFF’)
			ExecuteCommand(‘ONAIRPRG BACKGROUNDCOLOR #FF0000’)
			Sleep(1000);

			end;

		ExecuteCommand(‘ONAIRPRG BACKGROUNDCOLOR #00FF00’)
		ExecuteCommand(‘ONAIRPRG FONTCOLOR #000000’)
		ExecuteCommand(‘ONAIRPRG TEXT KEINE SENDUNG!’);

		end;

   end;

begin
end.

Habe das mal versucht etwas anders zu formatieren.