PUTTY BATCH zum Auslesen von SMS
Hallo,
ich möchte unter Windows7 von einem USB-Stick (Fonic Surf Stick) eingegangene SMS auslesen und auf dem PC speichern. Der Zugriff erfolgt mittels AT-Befehlen über PuTTY. Bei entsprechender Konfiguration der Putty-Konsole (unter read_sms gespeichert) und Eingabe der AT-Befehle funktioniert das Auslesen und Speichern einwandfrei.
Ich komme nicht weiter bei dem Versuch, die Befehlsfolge von einer Batch-Datei aufzurufen, wobei statt PuTTy jetzt plink genutzt wird. Die Windows-Konsole wird geöffnet, per Hand eingegebene AT-Befehler werden abgearbeitet. Es wird nichts gespeichert.
"read_sms": In Putty als Session gespeicherte Einstellungen.
Batch-Datei "sms.bat":
cd "c:\Program Files (x86)\PuTTY"
plink -load "read_sms"
plink -m "c:\Program Files (x86)\PuTTY\commands_plink.txt"
commands_plink.txt:
ATZ
at+cmgf=1
at+cmgl="all"
Es wäre nett, wenn jemand helfen könnte.
ich möchte unter Windows7 von einem USB-Stick (Fonic Surf Stick) eingegangene SMS auslesen und auf dem PC speichern. Der Zugriff erfolgt mittels AT-Befehlen über PuTTY. Bei entsprechender Konfiguration der Putty-Konsole (unter read_sms gespeichert) und Eingabe der AT-Befehle funktioniert das Auslesen und Speichern einwandfrei.
Ich komme nicht weiter bei dem Versuch, die Befehlsfolge von einer Batch-Datei aufzurufen, wobei statt PuTTy jetzt plink genutzt wird. Die Windows-Konsole wird geöffnet, per Hand eingegebene AT-Befehler werden abgearbeitet. Es wird nichts gespeichert.
"read_sms": In Putty als Session gespeicherte Einstellungen.
Batch-Datei "sms.bat":
cd "c:\Program Files (x86)\PuTTY"
plink -load "read_sms"
plink -m "c:\Program Files (x86)\PuTTY\commands_plink.txt"
commands_plink.txt:
ATZ
at+cmgf=1
at+cmgl="all"
Es wäre nett, wenn jemand helfen könnte.
Please also mark the comments that contributed to the solution of the article
Content-Key: 238649
Url: https://administrator.de/contentid/238649
Printed on: April 25, 2024 at 11:04 o'clock
4 Comments
Latest comment
Hallo bertram99,
der Parameter -m gilt leider nur für SSH-Sessions und nicht für serielle Kommunikation wie die Hilfe auch bestätigt, und wenn dann hättest du diese Befehl in einer Zeile zusammenfassen müssen. Alternativ, wenn es dir hilft, kannst du es mit einem passenden Powershell-Script erledigen (Dateipfad für die Ausgabe, und COM-Port anpassen):
Grüße Uwe
der Parameter -m gilt leider nur für SSH-Sessions und nicht für serielle Kommunikation wie die Hilfe auch bestätigt, und wenn dann hättest du diese Befehl in einer Zeile zusammenfassen müssen. Alternativ, wenn es dir hilft, kannst du es mit einem passenden Powershell-Script erledigen (Dateipfad für die Ausgabe, und COM-Port anpassen):
$fileResult = "sms.txt"
$PORT = "COM6"
$com = new-Object System.IO.Ports.SerialPort $port,115200,None,8,1
$Error.Clear()
try{
$com.Open()
if($com.IsOpen){
$com.Write("ATZ`r`n")
sleep -Milliseconds 50
$com.Write("AT+CMGF=1`r`n")
sleep -Milliseconds 50
$com.Write("AT+CMGL=""ALL""`r`n")
sleep -Milliseconds 500
$response = $com.ReadExisting()
write-host $response
Set-Content $fileResult $response
}else{
write-host "Konnte COM-Port: '$PORT' nicht öffnen!" -ForegroundColor Red
}
}catch{
write-host $Error -ForegroundColor Red
}
finally{
$com.Close()
}