Skip to content

Dashboard & Live Traffic

The Dashboard is the page you land on after signing in to the customer portal. It answers four questions at a glance:

  1. Am I connected right now? — live download/upload Mbps, refreshing every 3 seconds.
  2. How much data have I used today and this month? — two circular rings, GB used vs cap.
  3. How long until my plan expires? — countdown card with days remaining.
  4. Do I have any issues? — banners for expiring soon, FUP tier hit, balance low, parental block notices.

After login, the Dashboard is the default landing page. You can also reach it from:

  • The sidebar → top item (home icon)
  • Direct URL: /customer/dashboard (or simply /customer/)
  • Mobile app: bottom-bar Home tab

The Dashboard is organized into four sections, top to bottom:

SectionWhat it shows
Live traffic widgetBig number — current download Mbps + upload Mbps. Polled every 3 s.
Usage ringsTwo circular progress rings: daily used vs daily cap, monthly used vs monthly cap.
Plan cardService name, nominal speed, expiry countdown, balance.
BannersOptional alerts: “Plan expires in 3 days”, “Daily cap reached”, “FUP tier 2”, etc.

The big number is what your router is doing right now. The portal asks the operator’s MikroTik (via the API) every 3 seconds for the current PPPoE session’s tx-rate (download) and rx-rate (upload), converts bits/s to Mbps, and displays it.

StateWhat you see
Online (PPPoE session active)Live Mbps numbers, a green “Online” dot, current public IP, session uptime.
Offline (no active session)“Offline” indicator. Mbps numbers show 0.
NAS unreachable”Offline” indicator. The portal can’t reach your router right now; this is usually a brief blip.

The Mbps numbers are session-level traffic — all your devices added together. You can’t see a per-device breakdown from here (that’s the WiFi tab if you have a TR-069 router).

Two large circular rings show how much data you’ve consumed:

RingNumeratorDenominator
TodayBytes downloaded + uploaded since midnight (operator’s timezone).The daily quota from your service plan (0 = unlimited).
This MonthBytes downloaded + uploaded since the 1st of the month, plus any bonus GB you’ve bought.The monthly quota plus bonus GB purchased.

Each ring colors:

  • Green until 50% used
  • Orange between 50% and 80%
  • Red above 80%

When you hit the cap, your speed is reduced to the FUP (Fair Use Policy) speed — see the banner that appears at the top of the dashboard.

Your usage is the sum of:

  1. Past sessions today — bytes from radacct for sessions that started today.
  2. Current session — live bytes from the active PPPoE session, fetched from your router every 30 seconds by the operator’s QuotaSync.
  3. Adjustments — any FUP resets, bonus refills, or operator credits.

The numbers refresh every 30 seconds. Today’s number is always live; days in the past are snapshotted into daily_usage_history and don’t change.

The plan card shows everything about your subscription:

FieldMeaning
Service nameThe plan you’re on, e.g. "Fiber 10M / 100GB".
SpeedNominal download / upload — the speed at the start of your billing cycle.
Current speedWhat you’re actually getting right now — usually matches nominal, but drops if you hit FUP.
FUP tier0 = normal speed. 1, 2, 3 = progressive speed reductions because you crossed daily or monthly caps.
Days leftHow many days until your plan expires. Updates daily at midnight.
BalanceYour wallet balance — used for buying extra data and (optionally) plan upgrades.
StatusActive, Inactive, Expired, or Stopped.

When the days-left number drops below 7, the value turns red and a “renew soon” banner appears at the top.

Conditional alerts that appear above the dashboard when relevant:

BannerWhen you see it
”Your plan expires in N days”Days-left ≤ 7. Tap to contact your ISP or top up.
”Daily cap reached — speed reduced”Today’s usage crossed the daily quota. FUP tier in effect.
”Monthly cap reached — speed reduced”This month’s usage crossed the monthly quota plus any bonus.
”Balance: $X.XX — top up before renewal”Your balance is below the price of your next renewal.
”Maintenance window: 02:00–04:00 tomorrow”The operator scheduled downtime.

Each banner has a dismiss “X” — banners stay dismissed for 24 hours and then come back if the condition is still true.

A subscriber is shown Online when:

  1. Their subscribers.is_online flag is true (updated by the operator’s QuotaSync service every 30 seconds).
  2. There’s an active row in radacct with no stop time.
  3. The latest accounting update happened in the last 30 minutes.

If you see “Online” on the dashboard but your devices aren’t connecting, it’s usually a stale flag — the operator’s stale-session cleanup runs every 5 minutes and will correct it.

  1. Look at the live Mbps at the top — what are you actually getting right now?
  2. Compare to the Plan speed (e.g. 10 Mbps nominal).
  3. Check FUP tier on the plan card. If it’s 1, 2, or 3 — you’ve hit a usage cap and speed is reduced.
  4. Check the monthly ring. Above 80%? You’re close to (or past) the cap.
  5. If everything looks normal but speed is still slow, open a Support Ticket with category “Slow internet” — your operator can run a torch / ping diagnostic from their end.

”How much GB do I have left this month?”

Section titled “”How much GB do I have left this month?””
  1. Look at the Monthly ring on the dashboard.
  2. The number in the centre shows used / total — e.g. 45 / 100 GB.
  3. Subtract to see what’s left: 100 − 45 = 55 GB remaining.
  4. If you bought extra GB during the month, it’s already included in the “total”.
  5. Need more? Tap Buy Data to top up — see Buy Extra Data.
  1. Days left on the plan card.
  2. If it’s under 7, the number is red and a banner appears.
  3. The portal cannot renew on its own — contact your operator (or wait for them to auto-renew if that’s configured).
  4. While waiting, top up your wallet so the renewal can be charged from balance.
ElementRefresh interval
Live Mbps + IP + uptimeEvery 3 seconds (polls live from the router).
Usage ringsEvery 30 seconds (re-fetches subscriber row).
Plan card / bannersEvery 30 seconds.
On-tab visibility changeAll elements refresh immediately when you return to the tab.

If you close the tab and reopen it later, everything is recomputed on load — there’s no stale-cache problem.

The Dashboard has no permission gates — every customer who can log in can see it. What appears on it is scoped to the logged-in account:

Token claimEffect on Dashboard
customer_usernameAll queries filter by this username. You only see your own data.
(no other claims)There’s no admin / read-only mode for customers. One customer = one view.