Ankündigung
Einklappen
Keine Ankündigung bisher.
TCP/IP Befehl über Icon von Windows Desktop schicken
Einklappen
X
-
ein simples Calimero Programm dazu könnte z.B. so aussehen:
der obige Quellcode sendet einen ON Befehl auf das IP-Interface 192.168.2.1 mit dem Standardport 3671 und gibt anschließend eine Messagebox aus.PHP-Code:import org.eclipse.swt.SWT;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell;
import tuwien.auto.calimero.GroupAddress;
import tuwien.auto.calimero.exception.KNXException;
import tuwien.auto.calimero.link.KNXLinkClosedException;
import tuwien.auto.calimero.link.KNXNetworkLink;
import tuwien.auto.calimero.link.KNXNetworkLinkIP;
import tuwien.auto.calimero.link.medium.TPSettings;
import tuwien.auto.calimero.process.ProcessCommunicator;
import tuwien.auto.calimero.process.ProcessCommunicatorImpl;
public class SimpleSwitch {
final static String LINK_CLOSED = "Keine Verbindung zum Bus";
final static String KNX_EXCEPTION = "Ein unerwarteter Fehler ist aufgetreten!";
final static String KNX_SUCCESS = "Befehl erfolgreich";
public static void main(String[] args) {
KNXNetworkLink link;
String msg="";
try{
link = new KNXNetworkLinkIP("192.168.1", TPSettings.TP1);
ProcessCommunicator pc = new ProcessCommunicatorImpl(link);
pc.write(new GroupAddress("1/1/3"), ProcessCommunicator.BOOL_ON);
msg=KNX_SUCCESS;
link.close();
}
catch(KNXLinkClosedException knxLinkClosedEx){
msg = LINK_CLOSED;
}
catch (KNXException knxEx){
msg = KNX_EXCEPTION;
}
int icon;
if(msg.equals(KNX_SUCCESS))
icon = SWT.ICON_INFORMATION;
else
icon = SWT.ICON_ERROR;
Display display = new Display();
Shell shell = new Shell(display);
MessageBox messageBox =
new MessageBox(shell,
SWT.OK|
icon);
messageBox.setMessage(msg);
messageBox.open();
}
}
Das ganze könnte man jetzt noch weiter ausbauen, so dass z.B. Parameter als Argumente übergeben werden können usw.
Einen Kommentar schreiben:
-
hallo,
ich möchte mit diesem befehl einfach einen schranken öffnen. dieser hängt am eib. ein hs ist auch vorhanden.
danke
Einen Kommentar schreiben:
-
Was willst du denn überhaupt schalten? Willst du den Schaltbefehl an einen KNX Busteilnehmer schicken?
Wenn dem so sein sollte kannst du dir auch ein kleines Programm in C# oder Java schreiben. Evtl. hast du ja schon eibd im einsatz. Dazu gibt es in der BCU-SDK auch passende client librarys für C# (.NET) und Java. Dann gibt es noch die Java Projekt calimero.
Wenn du was anderes über TCP/IP ansprechen möchtest gibt es fast unendliche viele Möglichkeiten.
Einen Kommentar schreiben:
-
netcat
google mal nach netcat für windows.
Wenn Du netcat installierst kannst du
mit
netcat -u -w1 192.168.9.11 2011 Test
Das Datenpaket Test auf Port 2011 als UDP Pakte senden
Einen Kommentar schreiben:
-
Einen Kommentar schreiben:
-
Hm,
ich würde ein Skript schreiben (wahrscheinlich in Perl), was die gewünschte Aktion ausführt und auf dem Desktop einfach eine Verknüpfung zum Skript erstellen. Ist unter Linux und Windows machbar.
Gruß,
thoern
Einen Kommentar schreiben:
-
Hi
Das würde mich auch interessieren.
Aber unter Linux - um zb beim Auslesen eines 1-Wire Temp. Sensores eine GA auf einen bestimmten Wert zu setzten und mir damit die Webabfragen des HS zu verringern.
mfg, Lons
Einen Kommentar schreiben:
-
TCP/IP Befehl über Icon von Windows Desktop schicken
Hallo,
ich stelle mir folgendes vor:
ich möchte einen schaltbefehl von meiner windowsoberfläche ausführen. da hätte ich gerne ein icon, wo ich einen doppelklick draufmache und dann wird der schaltbefehl ausgeführt. ein pop ab wäre noch super, das anzeigt, daß der befehl ausgelöst wurde. muß aber nicht die wirkliche rückmeldung sein.
weiß wer ob und wie so was möglich ist?
danke
klausStichworte: -


Einen Kommentar schreiben: