SMS über UMTS Stick an Fritzbox versenden

Begonnen von FotoFieber, 01 September 2013, 11:34:12

Vorheriges Thema - Nächstes Thema

FotoFieber

Einfaches Script zum versenden von SMS über einen UMTS Stick an der Fritzbox

Szenario:
Fritzbox mit UMTS Stick unter 192.168.92.1
fhem auf Raspberry Pi

1. UMTS Device Freigeben auf Fritzbox

In /var/flash/debug.cfg eintragen


/usr/bin/nc -l -l -p 10069 -e /bin/dd of=/var/gsm/ttyDATA &


2. SMS Scrtipt für FHEM einspielen, Nummern anpassen, 192.168.92.1 anpassen mit IP der Fritzbox.:


#!/bin/bash
BASENAME="$(basename $0)"
DST=$1
TYP=$2
ARG=$3
case $DST in
  PAPI)
    RCP="+4176nnnnnnn"
    ;;
  MAMI)
    RCP="+4176nnnnnnn"
    ;;
  *)
    ;;
esac
case $TYP in
  CALLBACK)
    TXT="FHEM bittet um Rueckruf: ${ARG}"
    ;;
  *)
    TXT="FHEM: ${ARG}"
    ;;
esac

echo -e "AT+CMGF=1\r"  | nc 192.168.92.1 10069
echo -e "AT+CSCS=\"GSM\"\r" | nc 192.168.92.1 10069
echo -e "AT+CMGS=\"${RCP}\"\r" | nc 192.168.92.1 10069
echo -e "${TXT}\032" | nc 192.168.92.1 10069

exit 0


3.  Ereignis definieren in fhem. Das sieht dann bei mir so aus.


define WBTN_1_on notify X10_O_8:*on { \
`/opt/fhem/bin/fhem2sms PAPI CALLBACK "Test"&`;;\
}


4. Script verbessern und wieder hier posten. :)
- aufteilen bei langen SMS
- Sonderzeichen richtig codieren

Viel Spass
Markus

oniT

Hallo Marco,
und alle mitlesenden,

funktioniert dies auch mit einer FritzBox LTE? Hat schon einmal irgend jemand auf diese oder ähnliche Art SMS versendet wo nicht der Raspi den UMTS Stick hat sondern wo der Router eine entsprechende SIM Card bereits enthalten hat? Zum Beispiel die FritzBoxen LTE?

Danke,
Gruß
Tino
BBB - debian weezy - FHEM 5.7
HMLAN - HM-LC-Bl1-FM, HM-ES-PMSw1-PI, HM-LC-Sw1-FM, HM-TC-IT-WM-W-EU, HM-WDS40-TH-I, HM-Sen-Wa-Od, HM-Sec-RHS
Dimplex Wärmepumpe / Dimplex ZL 300 - Modbus TCP
SDM630M - Modbus TCP
SolarLog 200 / SMA SonnyBoy 1.5/2.5 - Modbus TCP

thedude

Hallo

gibt es für die neue Firmware eine Möglichkeit, das UMTS Device freizugeben? debug.cfg existiert nicht mehr.

Falls jemand das Skript erweitert hat, um längere SMS zu verschicken wäre ich ebenfalls dankbar.

VG, Thomas

thedude

So, das einfache zerlegen des Textes geht so:


SMS=0
while [ -n "$TXT" ]
do
   echo -e "AT+CMGF=1\r"  | nc 127.0.0.1 10069
   echo -e "AT+CSCS=\"GSM\"\r" | nc 127.0.0.1 10069
   echo -e "AT+CMGS=\"${RCP}\"\r" | nc 127.0.0.1 10069
   echo -e "${TXT:0:160}\032" | nc 127.0.0.1 10069
   TXT=${TXT:160}
   SMS=$((SMS+1))
done
echo Es wurden $SMS SMS versendet.


Es gibt aber auch noch Concatenated SMS

https://en.wikipedia.org/wiki/Concatenated_SMS
https://hiteshagja.wordpress.com/2010/04/04/send-long-sms/

Evtl. mal was für später...

Grüße, Thomas