Начало
Centos EMail to SMS мегафон модем E1550
[root@mng ~]# cat /etc/smsd.conf devices = GSM1 incoming=/var/spool/sms/incoming outgoing=/var/spool/sms/outgoing checked=/var/spool/sms/checked sent=/var/spool/sms/sent logfile = /var/log/smsd/smsd.log loglevel = 7 #debug = 7 smart_logging = yes [GSM1] device = /dev/ttyUSB1 baudrate = 115200 rtscts = no init = at+cpms="sm","sm","" incoming = yes incoming = high eventhandler = /usr/local/sbin/smshandler eventhandler_ussd = /usr/local/sbin/smshandler [root@mng ~]#
[root@mng ~]# touch /usr/local/sbin/smshandler [root@mng ~]# chmod 755 /usr/local/sbin/smshandler [root@mng ~]# /etc/init.d/sms3 restart Starting SMS Daemon: smsd. [root@mng ~]# echo "Проверка" | sendsms +7965XXXXXXX [root@mng ~]# cat /usr/local/sbin/smshandler #!/bin/bash # Зададим глобальные переменные. ADMINPHONE="7965XXXXXXX" ADMINMAIL="admin@iamroot.ru" # Обработаем только входящие звонки и SMS-сообщения. # Разделим данные на заголовок и тело сообщения. if [[ "$1" =~ (CALL|RECEIVED) ]]; then MESSAGE=$(cat "$2") FROM=$(echo "${MESSAGE}"|grep -e '^From\:'|cut -d' ' -f2) DATE=$(echo "${MESSAGE}"|grep -e '^Received\:'|cut -d' ' -f2,3) BODY=$(echo "${MESSAGE}"|sed -e '1,/^$/d') fi case "$1" in # События при входящем звонке. CALL) # Проверка номера входящего звонка. if [ "${FROM}" == "${ADMINPHONE}" ]; then # Действие при звонке cat 111 >> /var/log/smsd/zvonki.log fi ;; # События при получении ответа на USSD-запрос. USSD) ;; # События при поступлении SMS-сообщения. RECEIVED) # Проверка номера и тела входящего SMS-сообщения. # Если номер совпадает с содержанием переменной ADMINPHONE и тело # SMS-сообщения совпадает со словом "REBOOT", то выполняется перезагрузка. if [[ "${FROM}" == "${ADMINPHONE}" && "$BODY" == "REBOOT" ]]; then # Не забудьте задать следующую строку в файле /etc/sudoers # # sms ALL= NOPASSWD: /sbin/reboot # sudo /sbin/reboot exit fi # Перенаправление остальных SMS-сообщений на почтовый ящик. echo -e "From: ${FROM}\nDate: ${DATE}\n\n${BODY}" | \ /usr/bin/mail -s "SMS Received" ${ADMINMAIL} >/dev/null ;; # События при отправке SMS-сообщения. SENT) ;; # Прочие события, не определенные выше. *) echo "$*" >>/var/log/smsd/others.log ;; esac [root@mng ~]#
С изменениями и дополнениями взято http://mrcat.ru/sms-send-receive