Jump to content

Text an TCP Port 8000 senden


Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Empfohlene Beiträge

Hallo an alle,

 

ich hoffe, dass mir hier jemand weiterhelfen kann. Ich habe ne Menge halbfertiger und halbpassende Infos im Internet gefunden. Leider hat mich keine davon näher an mein Ziel gebacht.

 

Gegeben:

- Mobotix IP-Kamera mit 2x Input und 2x Output

- NAS-Server

- Windows PC (Betriebssystem egal, da können wir alles einsetzen was uns hilft)

 

Wenn die Kamera ein Bild auf einem speziellen Ordner auf dem NAS speichert, wird durch ein Windows Tool (z.B. Directory Monitor o.ä.) eine Aktion ausgelöst. In dieser Aktion kann man z.B. eine .bat .cmd .exe o.ä ausführen.

 

Durch diese Datei soll ein Befehl an die Kamera gesendet werden, damit diese Ihren Output1 schaltet um eine Kontrollleuchte zu aktivieren.

 

Es gibt zwei mögliche Befehle auf die die Kamera reagiert:

1. Netzwerkmeldung:

Empfänger: 192.168.1.206

Port: 8000

Text: cam1-ok

 

 

Mein Problem ist, dass ich es nicht hinbekommen habe von einem Windows PC eine passende Nachricht z.B. per Eingabe im cmd Fenster zu senden.

 

 

alternative:

2. Http-request (wenn ich im Browser folgendes eingebe schaltet die Kamera wie gewünscht)

 

http://192.168.1.206/control/rcontrol?action=sigout&name=Out1

 

 

Mein Problem hier ist, dass ich es nicht hinbekomme diesen Befehl zu verschicken, ohne ein Browserfenster zu öffnen.

 

Hierbei habe ich auch schon eine Batch Datei erstellt in der ich die Url im Browser öffne und den Browser dann auch "kille", aber das Problem ist, dass später im fertigen System bis zu 20 Kameras gleichzeitig überwacht werden sollen und in diesem Fall wird es auf jedenfall zu Kollisionen kommen.

 

 

 

Ziel:

Entweder

- eine Batch o.ä. mit dem Text als TCP

 

oder

- die Url ohne eine Browserfenster (bzw. ein eigenes Fenster welches sich schließt, ohne ggf. andere offene Fenster mit zu schließen)

 

 

Ich hoffe, dass es eine Lösung gibt und bedanke mich bereits jetzt für die Unterstützung.

 

Gruß

Tibbs

Link zu diesem Kommentar

@zahni: Danke für die Links. Ich werde mir diese heute noch mal ansehen und testen.

 

@Mobbyaushb: Die Mobotix kann aber kein Ereignis auslösen, wenn das Bild erfolgreich gespeichert wurde. Somit benötige ich einen Trigger für die Kamera. Anschließend arbeitet die Kamera selbstständig weiter.

Ich bin der Norbert und Nobbyaushb ist mein Username hier ;)

 

Du kannst doch gleichzeitig mit dem Speichern des Bildes eine Aktion / Trigger auf der Mobitx auslösen?

 

Welche der Modelle hast du?

 

;)

Link zu diesem Kommentar

das Modell steht noch nicht ganz fest, ist aber eigentlich auch egal, da alle die gleichen Möglichkeiten bieten. Wenn alles passt wird es eine c25.

 

Das ich das Speichern und den Output gleichzeitig antriggern kann ist klar, aber dann weiß ich nur, dass die Kamera das Bild zum speichern rausschickt, aber noch nicht, ob das Bild auf dem Server auch angekommen ist. Normalerweise übernimmt das die Speicherausfallüberwachung. In diesem Fall (FTP) funktioniert diese Funktion aber leider nicht.

Link zu diesem Kommentar

Dann nehme eine Monitoring-Lösung, die Kamera und den share überwacht.

 

Machen wir on-top mit dem prtg von Paessler.

 

Bis 100 Sensoren kostenlos.

 

wink.gif

 

Ach, nochwas - die Mobotix kannst du zusätzlich mit SD-Karte ausstatten, so werden da Bilder zwischengespeichert, falls der FTP offline ist.

 

Ggf. ist auch die Speicherung als Motion-JPEG (Format von Mobitx) besser, so sieht man Bewegungen flüssiger.

 

Wollt ihr als Software das Controlcenter verwenden?

bearbeitet von Nobbyaushb
Link zu diesem Kommentar

Hallo Zahni:

kannst du mir evtl. etwas detailierter helfen. Irgendwie habe ich hier glaube ich Verständnissprobleme.

Es fängt irgendwie schon damit an, dass ich nicht kapiere welche Grundlagen ich für die o.g. Anleitungen brauche.

Schreibe ich die Befehle einfach in eine Datei die ich dann ausführe, welche Dateiendung benötige ich, muss ich zusatzsoftware installieren, usw. ?

 

Ich kann mir irgendwie nicht vorstellen, dass es so schwer sein soll ein einzelnes Wort ins Netzwerk an eine bestimmte IPAdresse zu senden.

 

Mir wurde gesagt, dass es evtl. auch mit dem "net send" Befehl funktionieren kann, aber auf diesem Weg kam ich leider auch nicht zum Erfolg.

 

@Nobbyaushb:

Dann würde ich aber auch nur Rückmeldungen an z.b. den Administrator bekommen, wenn es einen Fehler gibt. Die Arbeiten die die Kamera würden dann aber weiter gehen und nicht dokumentiert werden.

Wir benötigen definitiv eine Bestätigungsmeldung wenn das Bild erfolgreich gespeichert wurde, denn erst dann kann der Arbeitsschritt abgeschlossen werden und der nächste beginnen.

Link zu diesem Kommentar

Danke für den Hinweis... nciht mit dem googlen sondern mit Powershell... irgendwie war ich noch bei vbs bzw. batch :D

 

Mit Powershell hatte ich noch nichts zu tun, aber das Rad wurde ja nicht neu erfunden, von daher denke ist, dass ich mit den Grundlagen zurecht kommen werde.

 

Falls ich detailfragen zu dem Script habe werde ich mich hier wieder melden.

 

Danke noch mal an zahni und Nobbyaushb für die Unterstützung bis hier her.

Link zu diesem Kommentar

Hm,

 

einen Dreizeiler  in Powershell ist so ein Problem?

 

Z.B.

 

$client = new-object System.Net.WebClient

$client.UseDefaultCredentials = "true"  (oder false, oder was auch  immer, Doku  lesen)

$client.DownloadFile( "http://myserver/wichtigeurl","Antwort vom server.html" )

irgendwie verstehe ich nicht so richtig was du mir mit dieser Aussage mitteilen willst. Ich will ja nichts runterladen. Ich will ja lediglich einen String bzw. ein http-request senden

 

Ich dachte mir jetzt ich könnte evtl. mit

 

Invoke-WebRequest -Uri http://192.168.1.206/control/rcontrol?action=sigout"&"name=Out1

 

Denn das ist die URL die die gewünschte Funktion über den Browser ausführt.

Aber irgendwie habe ich die Befürchtung, dass ich mir das zu einfach vorgestellt habe.

 

Den Link mit dem telnet habe ich mir auch noch mal angesehen, glaube aber, dass es mir nicht wirklich etwas bringt, da die Kamera kein telnet unterstützt.

bearbeitet von Tibbs
Link zu diesem Kommentar

ich komme mir grad wieder wie ein blutiger Anfänger vor  :schreck:

 

irgendwie stehe ich komplett auf dem Schlauch oder ich habe irgendwelche Grundlagen überlesen oder nicht verstanden. 

 

ich habe deinen Lösungsvorschlag probiert und meine Url eingefügt. 

 

$client = new-object System.Net.WebClient
$client.UseDefaultCredentials = "true"
 
So funktioniert es auf jeden Fall nicht.
 
Ich hänge mich auch etwas an dem Befehl $client.DownloadFile auf.
bearbeitet von Tibbs
Link zu diesem Kommentar

Lies Dir doch mal die Doku von system.net.webclient durch oder schaue mal hier:

 

http://learn-powershell.net/2011/02/11/using-powershell-to-query-web-site-information/

 

Meinen Kommentar bei $client.UseDefaultCredentials = "true" hast Du gelesen? Hier versucht der Client eine SSO-Anmeldung, was bei Deiner CAM vermutlich eher nicht geht.

bearbeitet von zahni
Link zu diesem Kommentar
Der letzte Beitrag zu diesem Thema ist mehr als 180 Tage alt. Bitte erstelle einen neuen Beitrag zu Deiner Anfrage!

Schreibe einen Kommentar

Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung jetzt entfernen

  Only 75 emoji are allowed.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor-Fenster leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

×
×
  • Neu erstellen...