Linuxfree debian

Подивимося, як отримати баланс і вивести його стандартним повідомленням Убунту (а ще було б непогано зберігати історію витрат). Цей пост використовує інформацію з Хабра.

1. Поїхали!

Встановлюємо gnokii і засіб посилки повідомлень (якщо ще не встановлено):

sudo apt-get install gnokii libnotify-bin

Потім створюємо файл config по шляху:

/.config/gnokii (хоча на Хабре написано, що потрібно створити .gnokiirc в домашньому каталозі, у мене це не спрацювало).

Заповнюємо створений конфігураційний файл таким вмістом:

[Global]
port = / dev / ttyUSB1
model = AT-HW
initlength = default
connection = serial
use_locking = yes
serial_baudrate = 115200
handshake = hardware

Після цього створюємо основний файл скрипта, який будемо використовувати для отримання балансу (наприклад,

/balance.sh) з таким вмістом:

#! / Bin / bash
# PIN-код
PIN = 1234

notify-send "Модем" "Запит балансу."
echo "$ PIN" | gnokii --entersecuritycode PIN
gnokii --deletesms SM 0 end
echo "0" | gnokii --sendsms 000100
sleep 2
gnokii --getsms SM 0 5 -F

/.3g-balance.txt
sed -ie 's / ^ M / # 92; n / g'

# ^ M скопіювати не вийде, для краси повідомлень бажано її ввести за допомогою
notify-send "Модем" "` grep 'Баланс. * руб # 92 ;.' .3g-balance.txt` "

Замість змінної PIN необхідно вставити свій PIN-код. Важливо зауважити, що даний скрипт працює з модемами фірми "Мегафон". Для інших операторів потрібні свої дані: СМС з яким текстом і на який номер відсилати (в прикладі надсилається СМС з текстом "0" на номер 000100). Для мого яєчного оператора потрібно відсилати "11" на номер 111. Вся інформація повинна бути на сайті оператора.

Крім того, у кожного оператора своя рядок виведення балансу. У мого це "Ваш баланс:", тому замість grep 'Баланс. * Руб # 92 ;.' я встановив значення grep 'баланс:'

2. Зберігаємо значення балансу

Якщо нам важливо знати витрати, то можна додати кілька рядків у кінець скрипта, які будуть зберігати поточний баланс і час запиту:

date + ..% m.% Y-% H:% M >> balance-history
grep 'баланс:' .3g-balance.txt >> balance-history
echo >> balance-history
tail balance-history

Історія запитів буде зберігатися в файлі balance-history в форматі Дата-час, перенесення рядка, результат запиту, порожній рядок-роздільник.

3. Додаємо на панель

Не забудьте додати скрипту прав на виконання. Вже зараз все повинно працювати: після запуску файлу повинна з'явитися перше повідомлення про запит, ще через кілька секунд має з'явитися наступного повідомлення з самим балансом.

Щоб було зручно отримувати інформацію і без терміналу, можна додати невелику кнопку на панель: перетягуємо значок скрипта на панель, додаємо назву і іконку.

Linuxfree debian

Схожі статті