Hi,
ja das liebe geld und dann braucht man auch noch zeit und die richtige resourcen, überall das selbe problem.
Danke für die Antwort, die Trigger Funktion hab ich mir auch mal in der Doku durchgelesen, die geht aber anscheint nur mit iTunes. Ich wollte mir für verschiedene Sourcen Steuerscripts erstellen, also auch TV und DVD, da wirds damit leider nix.
Hab deswegen gerade etwas Applescript gehackt.
Wenn Ihr in eurer AppleScript Command Function noch das Result zurückgeben würdet und eine Art ECHO Funktion erstellt, dann könnte man die Logik komplett über AppleScript erschlagen.
tell application "MyHGUI" of machine "eppc://192.168....."
set mmhResult to Command "<SYS><HELLO></SYS>"
if mmhResult contains "gmbh" then
Command "<SYS><ECHO=TRUE></SYS>"
end if
end tell
Im iViewer würde ich dann auf TRUE matchen können.
Was hälst du davon?
Ich weis Ihr habt noch andere wichtigere Dinge in der Pipe, wäre aber ein nettes Feature!
VG Macrauder
Ankündigung
Einklappen
Keine Ankündigung bisher.
[mmh] CommandServer
Einklappen
X
-
Ein Gast antworteteJa, die Logik Engine... *traum*... dann brauchten wir ja bald keinen HS oder ahnliches mehr.... ;-)
... eines Tages!! Aber vorerst müssen wir uns um andere Dinge kümmern. Wir sind letztendlich nur eine kleine Bude und arbeiten schon grenzlastig. Wir würden gern weitere Entwickler hinzunehmen, aber das kostet halt alles Geld...
In der Tat führen wir aber "Gesprache" und würden bei erfolgreichen Abschluss auch notwendigen "Schub" bekommen, um eben "Projekte" wie Logik, Konfigurator, uvm. antriggern zu können. In erster Linie sind wir also dazu "verdammt" Anforderungen aus den jeweiligen Projekten mit höherer Prioritat anzufassen. Wenn wir könnten, wie wir wollten, oha... ;-)
Nun aber zu Deinem Anliegen:
Der EventServer kann Dir evtl. weiterhelfen. Wir senden ja jede Änderung des iTunes Status auf dem Broadcast Port 1038. Auf diesen kann man auch entsprechend "lauschen" und auswerten. Der iViewer stellt hierfür leider keinerlei Funktionen zur Verfügung. Kurzum, der iViewer ist und bleibt "dumm".
Ich hatte zB die Anforderung zu erkennen, wenn iTunes über "Remote" angesprochen wird um eben automatisch die Audioanlage einzuschalten. Da wir nun nicht zwischen die Kommunikation von iTunes und "Remote" kommen, haben wir den EventServer entsprechend erweitert. Hier kann auf den BC Port gelauscht und es können Meldungen ausgewertet werden. Entsprechend können auch Aktionen ausgeführt werden !!!
Beispiel:
[CONFIG];;
TRIGGERIP;192.168.50.55;
TRIGGERPORT;1038;
TRIGGERMODE;ASCII;
[TRIGGERS];;
<ITUNES>GETPLAYERSTATE=\*|;iTunesRemoteEvent.myh;O NCHANGE
lauscht auf den BC Port und führt bei Änderung des PLAYERSTATE entsprechendes Script aus. Dies ist quasi gleichzusetzen mit der Bedingung "IF=GETPLAYERSTATE="
Nun kommt der Trick...
Wie Du ja mittlerweile weißt, wird der "Match" automatisch als Argument dem Scriptaufruf angehangen... Angenommen GETPLAYERSTATE andert sich auf "PLAYING"... dann würde in diesem Fall der Scriptaufruf wie folgt ausgeführt...
<SCRIPT><RUN=iTunesRemoteEvent.myh><ARG=PLAYING> </SCRIPT>
Nun betrachten wir mal den Inhalt des Scriptes iTunesRemoteEvent.myh:
<SCRIPT><RUN=iTunesRemoteEvent_[ARG].myh></SCRIPT>
Wie Du siehst hange ich das Argument einem erneuten Scriptaufruf an. Über das Argument baue ich quasi einen neuen Namen zusammen... um final das Script:
<SCRIPT><RUN=iTunesRemoteEvent_PLAYING.myh></SCRIPT>
aufzurufen, welches die Bedingung "GETPLAYERSTATE=PLAYING" entsprechen würde.
Du kannst somit auf alle Playerstatis gezielt Aktionen ausführen.
Vermutlich kann die Vorgehensweise auch vereinfacht werden, habe ich allerdings noch nicht getestet. Wenn Du folgendes in der EventServer Definition eintragst:
[TRIGGERS];;
<ITUNES>GETPLAYERSTATE=\*|;iTunesRemoteEvent_\#.my h;ONCHANGE
könnte/sollte sich der Zwischenschritt über das iTunesRemoteEvent.myh Script entfallen...
LG
Einen Kommentar schreiben:
-
Hi,
kann man dem <script><run=... command mitteilen das er die returncodes der im script ausgeführten commands optional mit zurückliefert?
Beispiel ist ein script welches verschiedene itunes funktionen aufruft und unter anderem auch den player status abfragt. Aktuell bekomme ich nur RUN=SUCCESS zurück, ich möchte aber den player status auch noch im iViewer auswerten können.
Was mir auch fehlt sind ein paar logik Bausteine wie:
<if PLAYING="<itunes><getplayerstate><itunes>">
<sys><returnvalue="Player läuft"></sys>
<else>
<sys><returnvalue="Player läuft nicht"></sys>
</else>
</if>
Wie macht Ihr so etwas?
VG Macrauder
Einen Kommentar schreiben:
-
[mmh] CommandServer
Alle Fragen und Infos zum Thema CommandServerStichworte: -


Einen Kommentar schreiben: