Как стать автором
Обновить
4
0

Пользователь

Отправить сообщение
У меня до боли похожая бяка работает уже почти год на работе.
Умеет отвечать на запросы balance, news и другие в связке с биллингом.
Написано, конечно, не совсем красиво, просьба не пинать…
По выходным веду что-то вроде радиокружка и изначально скрипт писался как пример для демонстрации отправки и обработки запросов по контролю 1-Wire устройств, подключенных к роутеру с GPRS модемом.

В используемых нами 3G USB свистках, тип памяти нужно указывать SM, а не IN как у автора топика.
Нумерация сообщений так-же у нас отличается и начинается с нуля.
При получении сообщения, скрипт обрабатывает его и сразу удаляет.
Так-же есть перевод заглавных букв, если такие попадутся, в прописные.
Ну и ведется простейший лог-фаил (не забудьте подправить путь к файлу на свой).

#!/bin/sh
#
# Created by ZigFisher
# 2011.09.11 v.0.1
#

CONFIG=/etc/gnokiirc
MEMTYPE=SM  # use ME, SM, IN, OU
INCOMING=$(gnokii --config $CONFIG --getsms $MEMTYPE 0 && gnokii --config $CONFIG --deletesms $MEMTYPE 0)
ABONENT=$(echo $INCOMING | awk '{print $10}' | grep '+')
REQUEST=$(echo $INCOMING | awk '{print $15}' | tr 'A-Z' 'a-z')
LOGFILE='/home/zig/gnokii.log'

echo "$ABONENT => $REQUEST" >>$LOGFILE

reply() {
    echo $2 | gnokii --config $CONFIG --sendsms $1
    echo "I send       => $2" >>$LOGFILE
}

if [ "$REQUEST" = "balance" ]; then
    reply $ABONENT "Ваш баланс..."
elif [ "$REQUEST" = "news" ]; then
    reply $ABONENT "Новости и акции..."
fi
12 ...
12

Информация

В рейтинге
Не участвует
Откуда
San Remo, Liguria - Imperia, Италия
Дата рождения
Зарегистрирован
Активность