ECMD Protocols: Unterschied zwischen den Versionen

Aus Ethersex_Wiki
Wechseln zu: Navigation, Suche
(ECMD via TCP)
(ECMD via UDP)
Zeile 15: Zeile 15:
 
Kann einfach in Unix shell scripts eingebunden werden. Ein Beispiel: (current
 
Kann einfach in Unix shell scripts eingebunden werden. Ein Beispiel: (current
 
timestamp on your Ethersex as a variable in your shell)
 
timestamp on your Ethersex as a variable in your shell)
 +
 +
* '''nc''' steht für '''netcat'''
 +
* nur '''"netcat-openbsd"''' kennt den Parameter '''"-q"'''
  
 
<pre>ECMD_DATE=`echo 'date' | nc -u ETHERSEX-IP ECMD-PORT`</pre>
 
<pre>ECMD_DATE=`echo 'date' | nc -u ETHERSEX-IP ECMD-PORT`</pre>
 
oder
 
oder
 
<pre>ECMD_DATE=`echo "date"|nc -u -q 1 ETHERSEX-IP ECMD-PORT`</pre>
 
<pre>ECMD_DATE=`echo "date"|nc -u -q 1 ETHERSEX-IP ECMD-PORT`</pre>
 
  
 
== ECMD via TCP ==
 
== ECMD via TCP ==

Version vom 19. Mai 2010, 12:16 Uhr

Unter Annahme, dass du ETHERSEX-IP, ECMD-PORT und ECMD-COMMAND entsprechend substituierst, kannst du unter folgenden Protokollen für die Übertragung von ecmd Befehlen wählen:

ECMD via HTTP

Muss in menuconfig eingeschaltet werden. Dann ist folgendes URL Schema möglich:

http://ETHERSEX-IP/ecmd?ECMD-COMMAND

ECMD via USART

Muss in menuconfig eingeschaltet werden. Baue zum Beispiel mit dem Programm screen eine Verbindung zu deinem ethersex auf. Etwa wie folgt:

screen /dev/ttyUSB0 115200

Nun kannst du ecmd Befehle eintippen und mit Enter bestätigen. Die Rückgabe des Kommandos erfolgt dann auf dem Terminal.

ECMD via UDP

Muss in menuconfig eingeschaltet werden. Standard Port ist 2701.

Kann einfach in Unix shell scripts eingebunden werden. Ein Beispiel: (current timestamp on your Ethersex as a variable in your shell)

  • nc steht für netcat
  • nur "netcat-openbsd" kennt den Parameter "-q"
ECMD_DATE=`echo 'date' | nc -u ETHERSEX-IP ECMD-PORT`

oder

ECMD_DATE=`echo "date"|nc -u -q 1 ETHERSEX-IP ECMD-PORT`

ECMD via TCP

Muss in menuconfig eingeschaltet werden. Standard Port ist 2701. Hier ist eine Authentifizierung mit PAM möglich.

Benutze ein Ausrufezeichen ! vor einem ecmd Kommando um die tcp Verbindung sofort nach der Übertraung wieder abzubauen.

Kann einfach in Unix shell scripts eingebunden werden. Ein Beispiel: (current timestamp on your Ethersex as a variable in your shell)

nc steht für netcat

nur "netcat-openbsd" kennt den Parameter "-q"

ECMD_DATE=`echo '!date' | nc ETHERSEX-IP ECMD-PORT`

oder

ECMD_DATE=`echo '!date' | nc -q 1 ETHERSEX-IP ECMD-PORT`

oder

ECMD_DATE=`echo '!date' | socat stdio tcp4:ETHERSEX-IP ECMD-PORT`

ECMD via USB

Muss in menuconfig eingeschaltet werden. Hierfür gibt es im contrib Ordner ein kleines C Programm um Befehle via USB zu versenden.

Siehe auch USB#ECMD_via_USB

ECMD via SMS

Hierzu muss in der menuconfig "SMS Support" unter I/O aktiviert werden, sowie "SMS" unter Protocols -> ECMD