Giter Site home page Giter Site logo

huawei-data-plan-monitor's Introduction

Huawei Data Plan Monitor

System tray icon showing your current data plan usage with NASM/GoLink

Display a system tray icon and report available traffic from your dataplan by making API queries to your Huawei modem. Setup your data plan inside your Huawei web administration panel:

http://[your modem ip]/html/statistic.html

The program will fetch the month current download and upload statistics along with the monthly data plan and display the usage percentage on the icon.

The value will be refreshed every 5 minutes.

The purpose of this project was that I needed a way to check easily my data plan usage without login into my modem administration panel each time. It's an annoying surprise to discover you reached the end of your data plan and have no more internet access.

After quickly looking into the communication between my browser and the modem itself I noticed I could make direct API calls and get the information I needed without being logged in. It was also a nice little project to practice assembly and using the Win32 API.

This program works with a Huawei E5220 device using Software Version 21.143.11.00.784 and Web UI Version 13.100.02.00.784. If you are using another model, software and/or web ui version it would be great if you could report it.

Features:

  • Show current data plan usage (percentage)
  • Tooltip showing monthly current upload and download usage
  • Refresh percentage value every 5 minutes
  • Reconnect attempt after failing to retrieve value
  • Relatively small (around 6KB)

This is a Windows project, Makefile and code have been created for NASM/GoLink.

Screenshot:

Data Plan Monitor

Data Plan Monitor

Data Plan Monitor

Could be nice:

  • Making another version as a Windows Service
  • Adding configuration file support to easily change the IP and Port of the modem

Reference:

Winsock Reference

Shell_NotifyIcon function

Working With Big Numbers Using x86 Instructions

x86 Instruction Listings

x86 Disassembly

Intel Pentium Instruction Set Reference (Basic Architecture Overview)

NASM

GoLink

huawei-data-plan-monitor's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.