Пещера программиста
20Янв/093

Программа проверки счета в биллинговой системе UTM. Год 2006

Предисловие.

Данный пост и программа писалась еще в середине 2006 года. Так что все события и данные актуальны именно на 2006—2007 год. Начало развития программы положено в теме на одном из местечковых форумов. В следующем посте глянем на эту программу в текущий момент.
Главная цель  - получить опыт написания программ на C++ с использованием WinApi, а так же получить полезную программу.

Ну а теперь суть.

UTM — одна из самых распространненых биллинговых систем в России. До 5 версии был в ней один минус ( а может и больше, но говорим мы об одном) — нельзя было узнать состояние счета не зайдя через браузер на сайт статистики, введя логин и пароль. А учитывая то, что сессия работы с сайтом закрывалась раз в минут 5 (примерно), то чтобы посмотреть счет в уже открытом окне сайта, нужно было снова вводить логин/пароль. С появлением 5 версии этой билинговой системы ситуация улучшилась. Появилась утилита для контроля счета. Windows версия и Linux версия (ссылки на официальном сайте не нашел, видимо программа распростарняется в комплекте с билинговой системой).

Все бы хорошо, но вот у провайдера стоит UTM 4 версии. И эта программа просто не подходит. Вот тогда то и возникла идея написать свою программу для проверки счета. Проект получил название UtmCheck.

UtmCheck

Назначение.
Программа для проверки счета для клиентов сети компании «Интерра», а также других компанний использующих UTM.

Принцип работы.
Программа сидит в трее ( значок латинской буквы «U») и с заданным промежутком времени проверяет счет. При получении счета над значком появляется надпись с текущем балансом счета. Надпись закрывается через 10 секунд. При ошибке (например связи) значок в трее становится красным. Если вы используете тариф с предоплаченым трафиком ( на странице статистики есть строчка «Предоплаченный входящий внешний...») то будет появляться надпись, подобная этой «Остаток руб./Mb 15 руб./24,5 Mb» , т.е. на вашем счету 15 руб и 24,5 мб не использованных предоплаченых мб.

Запуск.
utmsetting

При первом запуске появится окно для ввода настроек. Пароль и логин — данные для доступа в биллинговую систему. Период автообновления — время в минутах от 5 до 120 через которое программа сама проверит баланс счета.

tray
При правом щелчке мышки на значке в трее появится меню.

  • Проверить — проверка баланса
  • Настройки — окно настроек программы
  • Журнал — показывает журнал работы программы, в котором описаны все ошибки возникшие в ходе работы, а так же все данные, которые программа получила из билинга
  • Выход — выход из программы

При двойном щелчке левой кнопкой мыши по значку программы в трее, происходит проверка счета.

Настройки в Utm.ini

[Settings]
AutoUpdate=0 ; если 1 то включено автообновление
UpdateTime=0 ; период обновления в минутах, если он <5 то программа сама выставляет его равным 5
TimeShow=10 ; время в секундах, в течении которого будет показана надпись с текущим балансом
server=172.16.0.1 ;сервер статистики, если не указан или закоментирован то проверка происходит на bill.interra.ru
;balans="Баланс (у.е.)</TD><TD width=50% bgcolor=#FFFFFF>"

В связи с тем, что в разных районах города билинг немного отличался внутренним оформлением, пришлось ввести параметр  balans . В нем указывается html код страницы от слова «Баланс», до первой цифры этого баланса.

ВНИМАНИЕ.
Программа никуда не отсылает ваши данные кроме как на биллинговый сервер. В этом можно убедится посмотрев исходники программы, или собрав программу себе из исходников.

На текущий момент программа обладает примерно тем же функционалом что и официальная программа. В дальнейшем я планирую добавить различную функциональность. Например, для заядлых геймеров предусмотреть режим, когда сообщение с остаком денег на счете появлется поверх игры. Т.е. не простой MessageBox, выкидывающий из игры, а надпись на canvas игры (выражаясь языком delphi). Или пополнение счета через программу. Да и многое другое что предложат пользователи.

Ну и собственно файлы от программы.

UtmCheck0.9.2.zip (88.5 Кб, скачано: 87)  - текущий рабочий комплект
UtmCheck_src.zip (21.7 Кб, скачано: 93) - исходники на Visual C++ 2005 текущей версии

Список изменений.

0.9.2.0
испарвлена ошибка с периодом обновления
добавлена возможность выбора сервера статистики
работает с биллингом 8 микрорайона
добавлена возможность показа оставшегося предоплаченого трафика
0.9.0.5
исправлена ошибка с посылкой не правильных учетных данных

Комментарии (3) Пинги (2)
  1. Мдя... Ничто не вечно под луной...

    Вопчем теперь перед суммой в биллинге следующий код:

    Баланс основного счета

    Есть подозрение, что форма входа тоже поменялась, потому что данных прога так и не получила

    • Эмм, я же написал — все нижеперечисленное актуально для 2006—2007 года для 4 версии UTM. Сейчас уже выпущена 5 версия, и у нас как раз она. Для 5 версии надо кой чего менять, об этом планировал написать позже.


Оставить комментарий


Spam protection by WP Captcha-Free