| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273 |
- #!/bin/bash
- # Interface from Asterisk to fhem
- # this file is called from /etc/asterisk/extensions.conf
- # Martin Haas 071214
- # if you want to use the english spoken espeak then change "espeak -v de" to "espeak"
- FHEM=localhost # if not localhost then set the port inside of FHEM to global
- FHEMport=7072
- location=/var/tmp/voip2fhem # later the owner must be asterisk.asterisk!
- [[ ! -d $location ]] && mkdir $location
- ####################################################
- ##
- providesound()
- {
- lvoice="$location/$(echo $voice | sed -e 's/-//g' -e 's/[ .:]/_/g').gsm"
- echo $lvoice
- if [ ! -f $lvoice ]
- then
- espeak -v de -s 120 -w /tmp/asterisk.wav "$voice"
- sox /tmp/asterisk.wav -r 8000 -c 1 $lvoice resample -ql
- fi
- cp $lvoice /tmp/asterisk$type.gsm
- }
- ###################################
- ##
- case "$3" in
- ######################################
- KS300)
- temperature=$(echo "list $1" | netcat -w1 $FHEM $FHEMport | grep temperature | awk '{print $4}')
- [[ ${temperature:0:1} == - ]] && temperature="minus $temperature" ## negativ temperature
- voice=$2; type=1; providesound "$voice" $type
- voice=$temperature; type=2; providesound "$voice" $type
- ;;
- ######################################
- FHT)
- temperature=$(echo "list $1" | netcat -w1 $FHEM $FHEMport | grep measured-temp | awk '{print $4}')
- voice=$2; type=1; providesound "$voice" $type
- voice=$temperature; type=2; providesound "$voice" $type
- ;;
- ######################################
- FS20STATE)
- state=$(echo "list $1" | netcat -w1 $FHEM $FHEMport | grep STATE | awk '{print $2}')
- voice=$2; type=1; providesound "$voice" $type
- voice=$state; type=2; providesound "$voice" $type
- ;;
- #####################################
- HMS100)
- temperature=$(echo "list $1" | netcat -w1 $FHEM $FHEMport | grep STATE | awk '{print $3}')
- voice=$2; type=1; providesound "$voice" $type
- voice=$temperature; type=2; providesound "$voice" $type
- ;;
- ######################################
- FS20)
- echo "set $1 toggle" | netcat -w1 $FHEM $FHEMport
- voice=$2; type=1; providesound "$voice" $type
- ;;
- esac
|