USSD запросы через мобильный широкополосный доступ
В основном я хочу проверить баланс моей предоплаченной SIM-карты, которая находится в 3G-модеме (USB).
Некоторая справочная информация:
- Провайдер моего 3G-интернета (так называемый Билайн) также предлагает услуги сотовой связи. Чтобы проверить баланс на любой SIM-карте, я могу просто набрать *102# на любом мобильном телефоне и получить уведомление о моем балансе. Так что всегда работает, чтобы вынуть SIM-карту из модема в мобильный телефон и проверить баланс, "позвонив" *102#
- Модем поставлялся с Windows-программой, в которой есть кнопка "Проверить баланс". Я не хочу пытаться эмулировать эту программу вином по разным причинам. И мне не нужно, потому что - спасибо Ubuntu- модем работает без проблем из коробки.
Я бы подумал: есть ли возможность делать эти USSD-запросы (которые, похоже, не являются проблемой для любого случайного телефона) через 3G-модем через Ubuntu?
1 ответ
Эти "хэш-тег-запрос" называются USSD. При поиске по этому ключевому слову вы найдете различные решения:
Gammu может отправить USSD-запрос и получить его обратно с помощью команды
gammu getussd *102#
, Как указывалось здесь, некоторые GSM-модемы могут потребовать довольно сложного преобразования USSD-кода. Убедитесь, что у вас есть права на чтение устройства/dev/ttyUSB0
(или похожие). Пример можно найти здесь.Gsm-ussd, кажется, проще в использовании, чем gammu для ussd, но в целом имеет меньше возможностей. Его нет в официальных репозиториях, скачайте отсюда и настройте его аналогично этому.
Prepaid-manager-applet имеет приятный графический интерфейс и находится в официальных репозиториях. Это, наверное, самое простое и определенно самое хорошее решение. Скорее всего, ваш провайдер уже указан в списке, поэтому вам не нужно ничего делать. Если это не так, добавьте USSD-номер в /usr/share/mobile-broadband-provider-info/serviceproviders.xml. Найдите раздел своей страны и провайдера и добавьте
<balance-check> <ussd>*102#</ussd> </balance-check>
в то время как
*102#
должен быть заменен USSD-кодом вашего провайдера. Это выглядит так изощренно, как это: