PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : HS IP-Telegramme empfangen + Befehle auslösen



T.Schüring
17.12.03, 22:11
Hallo zusammen,

ich möchte über ein Programm welches Funksignale empfängt und in der Lage ist bei Empfang eines bestimmten Signals ein Programm auszuführen (z.B. eine Wave-Datei abspielen oder eine Batch-Datei ausführen) Befehle vom HS ausführen lassen.

Dieses könnte bei Empfang eines bestimmten Funksignals zum Beispiel das einfache einschalten einer Lampe sein.

Da der mein HS 2.0 Net mit einer neuen Boot-CD ausgerüstet ist und der HS-Experte 2.0.3 den Empfang von IP-Telegrammen ermöglicht war meine Idee das ganze so zu lösen.

Leider habe ich keine Ahnung von Batch-Dateien o.ä. die bei Empfang des passenden Funksignals ein Telegramm an den HS schickt und ausserdem bin ich mir nicht sicher ob sich meine Idee so überhaupt realisieren lässt.

Zusammengefasst: Mein Empfangsprogramm ist in der Lage bei Eingang des passenden Funksignals alle mögliche Dateien auszuführen. Wenn so ein Signal empfangen wird möchte ich einfach nur eine Lampe über den HS schalten.

Wer eine Idee hat, kann sich ja hier mal auslassen...

Herzlichen Dank im vorraus.
Thorsten

AScherff
17.12.03, 22:53
Hallo,

falls Dein Rechner eine Windows-Kiste ist, kann ich Dir ein solches Programm schreiben.

Willst Du die Parameter per DDE, ASCII oder als Commandline an das Programm übergeben ?

Nach Deiner Beschreibung sowas wie IPTELE.EXE C1 C2 C3

- sende IP-Telegramm 1,2 und 3 -

z.Bsp.

Licht ein, Jalousie runter, Heizung aus....

Sag mir kuz bescheid oder sende mir eine Mail...

Gruß

A. Scherff

AScherff
17.12.03, 23:27
kleines Proggi in V-Basic

sendet String (statisches Telegramm) an HS

IP Adresse des HS Angeben
Port des HS angeben

Telegrammbezeichnung

und ab


übernimmt auch das statisches Telegramm als Parameter...


zum ausprobieren....

Viel Spass

Anregungen, Kritik u.s.w......

hier

A. Scherff

AScherff
17.12.03, 23:29
ups...

aber hier

maxi
18.12.03, 09:06
könntest du zu dem VB-Programm auch den Source-Code beistellen?

Danke

T.Schüring
18.12.03, 17:01
Hallo AScherff,

danke für dein tolles Programm.
Die Aktionen werden so ausgeführt wie ich es mir vorgestellt habe.

Leider nur noch ein kleines Problem:

Wenn ich meinem Empfangsprogramm sage, dass es HSIP ausführen soll, so wird dein Programm auch gestartet, aber es sitzt natürlich keiner vor dem Rechner der nun auch auf "SENDE" drückt. Kann man dieses noch irgendwie automatisieren??

VG Thorsten

MarkusS
18.12.03, 17:18
Wäre ganz schnuckelig wenn man das Programm per Kommandozeile steuern konnte, mit HS-IP und HS-Port un zu sendendem String als Parameter.

Gruss
Markus

smarteib
18.12.03, 18:02
Hatte vor zwei Wochen mein Programm IPsend hier schon mal vorgestellt. erfüllt genau euere Wünsche. Kann auch über parameter gesteuert werden und Sprachmeldungen an HS2Wav versenden.

Gruß Bruno

AScherff
18.12.03, 19:29
Schön, das mein Mini-Programm euch gefällt...

@maxi

Sende Dir die Sourcen per e-mail.

@T.Schüring, MarkusS

Die IP-Parameter werden in der Reg gespeichert. Also nur einmal aufrufen , eingeben und das wars. Über die Kommandozeile brauchen die nicht wieder eingegeben zu werden.

Der Befehl kann auch per Kommandozeile übergeben werden z. Bsp.:

C:\HSIP\HSIP.EXE test

test ist hierbei der zu sendende String

@ smarteib

auch nettes Proggi - Konkurenz belebt das Geschäft :D :p

so long

A. Scherff

P.S Wünsche, Programmänderungen, Erweiterungen z.Bsp. Einbindung von ISDN, MFWV-Töne, oder anderes - Gerne hier :cool:

smarteib
18.12.03, 22:27
@ A. Scherff

da Du mehrere Komandos durch Komma getrennt eingeben kannst, kann man kein Befehl an Hs2Wav der Form "1,Text" übergeben.

Gruß Bruno

Matthias Schmidt
19.12.03, 00:03
Hallo Bruno,

mein HS2Wav braucht nicht zwingend ein Komma nach dem Telegrammty, jedes andere Zeichen tut es auch. Habe das Komma nur zur Verdeutlichung in der Beschreibung gewählt.

Also 1xText wird genau so behandelt wie 1,Text.

AScherff
19.12.03, 20:00
Hallo,

neue Version mit folgenden Ergänzungen:

Die Eingabezeile kann mehrere Kommandos aufnehmen.

Als Parameterbefehle dienen:

/I: - IP Adresse z.Bsp. /I:192.168.123.123
/P: - Port Adresse z.Bsp. /P:7000
/A: - Art UDP oder TCP -- /A:0 = UDP /A:1 = TCP
/W: - Wait in msec. z.Bsp. /W:1000

alle anderen Eingaben werden gesendet

Beispiel:

/I:192.168.123.123 /P:7000 /A:0 hallo /W:1000 hallo1 /A:1 hallo2

Stellt IP, Port, und UDP ein, sendet "hallo", wartet 1 Sekunde, sendet "hallo1", stellt IP ein, sendet "hallo2"


Die Eingabe kann auch als Kommandozeile übergeben werden.

Die Parameter IP-Adresse, Port Adresse, Art werden jeweils gespeichert und müssen nicht ständig mit angegeben werden, dabei gilt der letzte Wert.

Viel Spass

A. Scherff

viceversa
29.08.04, 14:35
Wollte mir gerade eine Funktion mit hsip einrichten, aber ich bekomme es nicht zum Laufen.

Benutze ich UDP, dann funktioniert das Schalten eines Verbrauchers, jedoch wird das Programm mit der Fehlermeldung: Run-time error 126 abgebrochen

Benutze ich TCP, dann schaltet der Verbraucher manchmal nur einmal und es kommt die Fehlermeldung : Run-time error 10048 (Adress in use)

Bei wem funktioniert das Programm?

AScherff
29.08.04, 14:48
Bei wem funktioniert das Programm?

Bei mir :D

Nutze das Programm auch um c-move zu testen, ich gebe als Adresse einfach "localhost" ein und schon kann ich "c-move" simmulieren.

Wenn Du UDP nuzt, wann genau kommt der Error 126?

Was genau machst Du?

Gruß

Alfred

viceversa
29.08.04, 15:03
Die Fehlermeldungen kommen genau dann, wenn ich die gültigen Daten für die IP und die Portadresse des HS eingebe und sende.

Wenn ich eine andere IP verwende oder eine nicht im HS vereinbarte Portadresse, dann kommt auch keine Fehlermeldung, weder bei UDP, noch bei TCP. Natürlich passiert dann auch nichts.

Nochmal zur Sicherheit: Als Portadresse gebe ich die Portadresse ein, die ich unter IP-Telegramme (Empfang) im HS vereinbart habe, also standardmäßig 7000. Nicht die Portadresse mit der ich den HS über das Netzwerk programmiere.

Wenn ich das Programm einmal zum Laufen bekomme, möchte ich damit gern einen HS Client-PC überwachen, ob er läuft oder nicht. Ich suche dann noch nach einem Weg, das IP-Telegramm zyklisch auf dem Client PC zu generieren.

AScherff
31.08.04, 10:31
Hallo,

habe mir das nochmal angesehen und kann leider keinen Grund finden, warum ein Fehler gemeldet wird (zu wenig Informationen).


Ich suche dann noch nach einem Weg, das IP-Telegramm zyklisch auf dem Client PC zu generieren.

Willst Du eine Art "Watchdog" machen und was machst Du, wenn das Telegramm nicht mehr vom PC gesendet wird?

Alfred

viceversa
31.08.04, 17:42
Habe das Programm gerade noch mal von einem anderen Rechner probiert. Leider mit dem gleichen Problem.
Vielleicht liegt es an meinem Router, aber dort waren für den Test alle Firewalls und Filter ausgeschaltet. Was benötigst Du denn für Informationen? Screenshots, Rechnerausstattung? Das Betriebssystem ist Windows 98SE.

Ja genau, ein Watchdog soll es sein. Das Problem ist, das mein Client PC in relativ langen Zeitabständen abstürzt, besser gesagt einfriert. Da man solche Fehler natürlich lieber sucht, als deren Wirkung wegzubasteln, habe ich schon alle möglichen Dinge getan. Wechsel von RAM, Netzteil, BIOS Batterie, verbesserte Kühlung von Prozessor und Netzteil. Aber es hat alles nichts gebracht und ich habe es nach langer Suche nun aufgegeben.
(Es sei denn es hat noch jemand einen Tip.)

Nun möchte ich, das der Client sich regelmäßig beim HS meldet und wenn er das nicht mehr tut, wird er durch An- und Abschalten der Spannungsversorgung (Aktor) neu gestartet. Nicht schön, aber wirksam.

AScherff
31.08.04, 22:39
@ viceversa

morgen im EIB-Chat können wir mal versuchen den Fehler einzugrenzen...

Ja, so kann ein "Watchdog" gehen... weil wenn der PC nicht mehr geht hilft nur noch der "Holzhammer"...

Das kann ich rel. schnell einbauen...


Alfred

AScherff
06.09.04, 20:57
Original geschrieben von viceversa

Ja genau, ein Watchdog soll es sein. Das Problem ist, das mein Client PC in relativ langen Zeitabständen abstürzt, besser gesagt einfriert. Da man solche Fehler natürlich lieber sucht, als deren Wirkung wegzubasteln, habe ich schon alle möglichen Dinge getan. Wechsel von RAM, Netzteil, BIOS Batterie, verbesserte Kühlung von Prozessor und Netzteil. Aber es hat alles nichts gebracht und ich habe es nach langer Suche nun aufgegeben.
(Es sei denn es hat noch jemand einen Tip.)

Nun möchte ich, das der Client sich regelmäßig beim HS meldet und wenn er das nicht mehr tut, wird er durch An- und Abschalten der Spannungsversorgung (Aktor) neu gestartet. Nicht schön, aber wirksam. [/B]

Anbei die Version 1.2 von HSIP

Hier ist es möglich ein Telegramm zyklisch (in n Minuten) senden zu lassen...

neu Parameter:
/Z:1 zyklisch ein
/Z:0 zyklisch aus
/T:5 alle 5 Minuten

oder aber im Dialog....

Ist der Paramter zyklisch ein, so wird HSIP nicht selbständig beendet! Die zuletzt eingestellten werte werden gespeichert.

Viel Spass

Alfred

viceversa
07.09.04, 18:24
super, Dankeschön.

wenn ich noch einen kleinen Wunsch äußern dürfte???

Wie bei c-move wäre es schön wenn man das Programm minimieren könnte und ein Icon im SysTray zu sehen wäre.

Danke!

AScherff
07.09.04, 20:34
Original geschrieben von viceversa
wenn ich noch einen kleinen Wunsch äußern dürfte???

Wie bei c-move wäre es schön wenn man das Programm minimieren könnte und ein Icon im SysTray zu sehen wäre.

Danke!

Jaja :D

wie war das mit dem kleinen Finger und dem ganzen Arm ? :D

nene, Spass gemacht....

Alfred :cool:

viceversa
08.09.04, 20:41
DANKE!

Einen Schönheitsfehler habe ich entdeckt. Mich stört er zwar nicht, aber ich verrate ihn trotzdem.
Wenn man mit dem Mauszeiger auf das Icon geht (minimierter Zustand), erscheint in dem kleinem Infofeld das Wort c-move.
Ist doch nicht c-move sondern hsip.;)

Trotzdem perfekt.

AScherff
08.09.04, 21:22
UPS !


ERWISCHT!

:D

Alfred:cool:

viceversa
12.09.04, 17:41
Leider mußte ich an hsip noch einen kleinen Bug feststellen. Habe viel probiert, aber nun weiß ich unter welchen Umständen der Fehler auftritt.

- hsip ist minimiert als Icon im Systray
- Rechtsklick auf das Icon öffnet Auswahlmenü
- Linksklick auf Ende beendet das Programm

Hat man das Programm auf diese Weise beendet, läßt es sich zwar wieder starten, aber es ist nun nicht mehr möglich das Fenster wiederherzustellen. Versucht man dies, erscheint zwar ein Feld in der Taskleiste, aber das Fenster bleibt für immer verschwunden. Man kann dann nur noch durch Löschen aller Einträge in der Registrierung hsip neu starten.

Kann man da noch was ändern, Alfred?

AScherff
12.09.04, 19:37
gut, dass ich mit diesen Dingen nicht mein Geld verdiene :D

Klar kann man was ändern, insbsondere, wenn ich so eine tolle Fehlerbeschreibung bekomme, so dass ich das nachvollziehen kann...

Die Korrekturversion 1.3.2

Download über

http://hsinfoman.de im Download-Bereich

viceversa
14.09.04, 19:58
Du siehst, ich nutze das Programm intensiv und Deine Mühe ist nicht umsonst. Vielleicht sollte ich mein Geld als Betatester verdienen. Am besten bei Microsoft.

Jetzt läuft hsip zu meiner Zufriedenheit, Danke!