Command on Encoder connect/disconnect

Hi Torben,

hab gestern mit einem Kollegen gequatscht und er schlug vor ob mAirlist nicht ein Kommando ausfuehren kann sobald der Encoder sich verbunden hat. Szenario ist folgendes:

  1. Encoder steht auf Autoconnect
  2. Moderator kickt Playlist from Stream
  3. Darauf connected der mAirlist encoder
  4. Jetzt koennte automatisch der Showopener starten (getriggert durch einen bestimmten Befehlt - zB CARTWALL 21 PLAY)

Damit muss man nicht haendisch starten und hat kein unnoetiges Delay nachdem der Encoder connected hat.

http://forum.mairlist.com/index.php/topic,5320.0.html

Hmmm da wird nur ueber andere Loesungen gesprochen. Konkret meine ich: Gibt es eine Notificationfunction die gerufen wird wenn der/ein Encoder connected/disconnected. Und wenn nicht, steht sie auf meiner Wunschliste :wink:

Nein, die gibt es derzeit nicht. Du könntest allenfalls mit Polling arbeiten, OnTimer verwenden und alle paar hundert Millisekunden

Encoder.GetConnections.GetItem(0).GetState = ecsConnected

überprüfen. Ist zwar nicht so schön wie eine asynchrone Benachrichtigung, aber funktioniert schon heute.

An dem Beispiel siehst du auch schon, wo das Problem mit “wenn der Encoder verbunden” ist: es kann ja rein theoretisch mehrere Verbindungen geben. Soll die Funktion dann erst aufgerufen werden, wenn alle Verbindungen stehen? Oder schon bei der ersten?

Im Prinzip müsste die Funktion, die ich einbauen müsste, OnEncoderConnectionStatusChange heißen und für jede Verbindung einzeln aufgerufen werden.

ja genau - und wie beim Player eine “encoderId” damit man auch schoen unterscheiden kann.