C# event variable changed

Hi,

die SOAP Schnittstelle von IPS ist klasse und so einfach zu verwenden.
Love it!:loveips:

Habe schon das ein oder andere damit für mich umgesetzt.
So habe ich z.B. ein Addin für mein Mediacenter geschrieben, das, sobald ein Video startet, die Lampe dimmt (Kinofeeling :p)

Jetzt suche ich aber ein Event, das bei Änderung einer Variablen triggert.
In der WSDL finde es nicht.

Bin ich blind?

Mic

schau dir mal in der SOAP Demo des SDKs den Message Reader an.

Edit:

räusper Oder TRIXI

Gruß,

Toni

Trixi hatte ich mal probiert, fand ich aber erstmal komplizierter als die SOAP Schnittstelle selbst.

Mit C# ist das ja recht einfach.

Die IPS SOAP Schnittstelle ist aber so mächtig, dass man im Zweifel nicht das findet, was man sucht, obwohl sie schon recht gut sortiert und sprechend benamt ist.

Also sooo kompliziert ist copy&paste nun auch nicht: Klick :smiley:

Das SDK ist in Pascal.
Wenn ich das Pascal einiegrmaßen richtig verstehe, werden hier auch keine Events genutzt, sondern der Messagesink permananet ausgelsen.
Dann können ich aber auch ein Timerevent machen, das sekündlich schaut, ob eine Variable geändert wurde, das will ich nicht.

Die einzige Demo mit c# nutzt auch keine events.

Ich frage mich langsam, ob das überhaupt so geht :confused:

Ich suche so ein Event:

WindowsFormsApplication2 - Microsoft Visual C# 2010 Express_2010-10-16_11-15-56.png

Doch, das ist event-getriggered. Der MessageReader kriegt nur per SOAP eine neue Nachricht, wenn in IPS was passiert. Ansonsten wartet er, bis was Neues kommt. Sieht man beim Debuggen schön.

Funktioniert wie bei Windows Messages. Wenn die Message über SOAP kommt löst du deine Aktion aus. Nichts einfacher als das. Dein Timer-Vorschlag hingegen ist sogenanntes Polling-Verfahren und sehr Rechenintensiv. Und zwar auch dann wenn nichts an den Variablen passiert.

Trixi gibt dir nen Callback wenn dir das lieber ist. Benutzt aber intern auch die resourcenschonende Messagesink.

Gruß,

Toni

OK, dann versteh ich nicht, wie ich’s machen muss. :frowning:

Bin gerade dran. Wenns klappt poste ich dann wieder im TRIXI-C# Thread den Code, dann kann man das sicher auch in VB.net oder so verwenden.

Doppelpost: C# jetzt mit Callbacks