Via Telnet command an Fhem schicken (Bash script)

Begonnen von Fixel2012, 30 November 2017, 19:51:43

Vorheriges Thema - Nächstes Thema

Fixel2012

Hi,

versuche seit einer halben Stunde mit eine Telegramm Nachricht remot von Fhem an mich zu senden.

Dazu nutze ich auf einem zweiten Pi Telnet um mich mit Fhem zu verbinden. Das ganze soll aus einem bash script aufgerufen werden.

Leider will das ganze nicht so...

Mein Script ist recht simple und sieht so aus:


#!/bin/sh

sleep 2

telnet 192.168.1.8 7072

sleep 2

set teleBot message Test

sleep2


Die sleeps habe ich einfach zum testen eingebaut.

Wenn ich es ausführe verbindet er sich via telnet aber nichts passiert. In einer normale Telnet Session sieht dies erstmal genauso aus, aber nach drücken von enter funktioniert es.

./sendPrintDoneMessagetoFhem.sh
Trying 192.168.1.8...
Connected to 192.168.1.8.
Escape character is '^]'.


Sieht da jemand auf den ersten Blick irgendwelche Laien haften Fehler?  ::)

Gruß,

Fixel
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

guhu

Das Skript dürfte beim Telnet hängen bleiben. Die nachfolgenden Befehle möchtest Du ja nicht auf Deinem Rechner ausführen, sondern auf dem remote-Rechner.

So aus dem Bauch: so dürfte das nicht gehen. Ich würde das mit ssh machen, einen login machen, der ohne user, passord auskommt und dann kannst Du in der ssh-Zeile remote einen Befehl absetzen (z. B. ein Script auf dem anderen Rechner).
FHEM 5.9 auf Synology DS918+ (in Docker), HM-CFG-USB2 mit hmlan, HM-CC-RT-DN, HM-SEC-SC-2, nanoCUL,a-culfw,deCONZ,Brennenstuhl-Steckdosen,-FB
Module:ENIGMA2,SONOS,FRITZBOX,FB_CALLLIST,WDT_TIMER,VCONTROL300,WITHINGS

Wernieman

es geht .. aber besser mit nc
echo"<Toller-FHEM-Code>" |  /bin/nc -w5 <fhem-server> 7072

Über telnet müsstest Du auch über stin gehen ...

p.s. wenn Du password bei telnet vergeben hast, dann kannst Du dieses auch übergeben:
echo -en "<passwort>\n<Toller-FHEM-Code>\nquit\n" |  /bin/nc -w5 <fhem-server> 7072

Hier ist übrigens "\n"="Enter".
- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

Fixel2012

Super, danke euch beiden!

Die Variante von Wernieman hat funktioniert!  :D
Fhem 5.8 auf Raspi 3, HMLAN und 868MHz CUL mit einigen Komponenten, Z-Wave Rollladenaktoren, Tablet UI, 433 MHz CUL mit Baumarktsteckdosen und Temp Sensoren, Amazon Echo, Echo Dot, 2x SONOS  play1, 1x SONOS Connect AMP,  presence, HUE, Lightify

Wernieman

- Bitte um Input für Output
- When there is a Shell, there is a Way
- Wann war Dein letztes Backup?

Wie man Fragen stellt: https://tty1.net/smart-questions_de.html

guhu

Ja, die Version von Werniemann gefällt mir auch besser  ;D
FHEM 5.9 auf Synology DS918+ (in Docker), HM-CFG-USB2 mit hmlan, HM-CC-RT-DN, HM-SEC-SC-2, nanoCUL,a-culfw,deCONZ,Brennenstuhl-Steckdosen,-FB
Module:ENIGMA2,SONOS,FRITZBOX,FB_CALLLIST,WDT_TIMER,VCONTROL300,WITHINGS