Tick what you want to see and
order it. This is yours alone — it does not change what anybody
else sees.
Fuel stations
A refuel is matched to the nearest
station within its own radius, and the match is written onto the event so
a station renamed later does not rewrite last month’s report.
Approving is your own decision, for your own fleet — the 164
imported from OpenStreetMap start unapproved because knowing a forecourt
exists is not the same as agreeing your drivers should fill there.
Approving one here does not change what any other company sees, and a
decision reaches the fleets beneath you unless they say otherwise. A fill
that matches nothing reads “Away from a known station”, which
is a question rather than an accusation.
Fuel-card statement
Upload the card statement as CSV
or Excel — a date, a vehicle, and litres or an amount. Nothing is
written until you press Import, and re-importing the same month is safe.
Do not calibrate the fuel counter from this file: if the scale
comes from a statement that already contains the theft, the gap closes
to zero and the platform reports that nothing is wrong. Calibrate from a
fill somebody watched.
Add one OpenStreetMap does not haveMost often a yard’s own tank.
It is approved immediately — you named it.
Station
Brand
Coordinates
Radius
Status
Fuel prices
A price change reprices nothing
historical and everything from its date onward, which is what makes an old
report still defensible. Give the day the pumps changed, not today
— somebody notices on Thursday that the price moved on Monday, and
those three days must cost what they actually cost.
Grade
Octane
Price now
In force since
Change it
API keys
Keys let another system read this account’s data
through the API at /api/v1. They are read-only,
belong to one account, and can be narrowed to particular vehicles.
A key is shown once when it is created — only a hash of it is
stored, so it cannot be shown again.
New key
Leave the expiry blank for a key that does not expire.
That is allowed, but it should be a decision rather than the default
nobody chose — an integrator who leaves should not still have a
working key in 2030.
Copy this key now — it cannot be shown again.
Only a hash is stored. If it is
lost, revoke this key and create another.
Name
Key
Account
Scopes
Rate
Expires
Last used
Status
Relaying
Positions this platform sends on to another system —
a customer’s existing Wialon account, a city platform, an ERP. An
endpoint is configured once and any number of vehicles attached to it.
Nothing is relayed until a vehicle is attached.
Endpoint
Destination
Format
Account
Vehicles
Auto‑add
Credentials
New endpoint
One format for now. Wialon IPS and EGTS are socket
protocols and need their own senders — an endpoint saved with a
format this build cannot send is refused rather than accepted and
silently ignored.
An endpoint that has been down for a week comes back to
a week of history. Sending it replays last Tuesday into a live screen
and delivers the vehicle’s real position last, so anything older
than this is skipped — and counted as skipped, which is not the
same as failed.
Counted over the last 24 hours. Skipped is data
deliberately not sent — positions older than this endpoint’s
backlog window, which is what stops an outage replaying a week of
history into a live screen. It is not data that failed to send.
Vehicle
External ID
Identified by
Last sent
Events
What the vehicles themselves reported.
Harsh braking and cornering are worked out from GPS rather than reported,
so they stay on the History tab beside the track they were derived
from.
When
Severity
Event
Vehicle
Account
Drivers
Preview
Name
Employee ID
iButton / RFID
Phone
Group
Licence
Licence expiry
Vehicles
Devices
Saved reports
A saved report keeps its
columns and a RELATIVE period — "last month" means a different
month each time it runs, which is what makes it worth scheduling.
Report setup
Typing in either box switches to a custom range, so
what is on screen is always what will run.
A folder covers every vehicle in it, including ones
added later.
Columns, and the order they print in
Order matters: the KOC form wants Date, Location,
Recorded Overspeed, Heading — in that order, on a page
somebody signs.
Sorting, and this report’s own options
Blanks sort last either way.
PDF is laid out landscape with the header repeated on
every page. Excel keeps real numbers and dates, so the columns sort
— a CSV of the same report sorts 101 before 83, as text.
Audit trail
Every change to accounts, users, vehicles, zones, alert rules and saved
reports, with what it looked like before. Click a row to see the fields
that changed. The log is append-only — nothing here can be edited
or removed, including by an administrator.
When
Who
What
Rules
A rule watches some vehicles
for one kind of event and raises an alert. Alerts always appear in the
bell; channels are how they also reach you elsewhere.
Channels
Where alerts are sent.
Email and Telegram need the server configured for them; a webhook
needs only a URL.
Local time. The 29th, 30th and 31st are not offered:
they do not exist in every month, and a schedule that silently fires on
a different date is worse than one that cannot be set.
Email only. A report is a file, and email is the only
transport here that carries one.
New rule
By ROLE, not by one vehicle's sensor — the fuel
probe on each van is a different row, and on some it is inherited from
the model rather than existing as a row at all. A vehicle with no
sensor in this role is skipped, not an error.
Thresholds come from the sensor itself, so the alert
and the sensor panel cannot disagree.
Leave this empty for a door, external power, or a
sensor calibrated into states like Empty / Low / Full — those
change rarely and every change matters. A plain number moves on every
packet, so one is required there: without it the rule would be forty
alerts an hour describing a needle wobbling, and the worker refuses it
rather than sending them.
One alert per outage, however long it lasts — and
another one if the vehicle returns and falls silent again. Every
tracker here goes quiet when a vehicle is parked, so this is a longer
threshold than the map's offline marker, not the same one.
A folder covers every vehicle in it, including ones added
later. Pick vehicles, folders, or both.
For a rule that is about the fleet rather than about
particular vehicles — a border alarm, say. Reaches this company
and the accounts beneath it, and nothing outside them. With this on,
the vehicles and folders above are ignored.
Leave the times empty for a rule that is always awake.
A start LATER than the end is an overnight window — 20:00 to 06:00
is one shift, and an alert at 01:00 belongs to the night it started.
A van shunting across a boundary six times while
manoeuvring is six real crossings and, at 900, one alert. Use
0 to be told about every one.
New channel
New zone
Details
Vehicles
An empty limit means this zone does not police that at
all — which is not the same as a limit of zero.
Heavy and light corridors are drawn separately over the
same roads, so a zone set to one class is not measured against the other
at all. A vehicle with no class set is only measured against
“All vehicles” zones — that gap is how an unclassified
vehicle shows itself.
Box 1 — how brief is too brief to count. At 5, going
over for four seconds is not recorded. At 0, everything is
recorded, however brief. Box 2 — when a second burst is a second event. At
60, dipping back under the limit for less than a minute and going
over again is still the same event.
Worked example — limit 80. The vehicle
does 85 for 30s, drops to 78 for 20s, then does 84 for 30s.
• Boxes at 5 and 60: one event, peak 85, 60
seconds over.
• Box 2 at 0: two events, because the dip separates
them.
• Box 1 at 45: no event — neither burst lasted
45 seconds.
New Device
General
Vehicle
Fuel
Driver
Extra Parameters
Sensors
Photos
Video
Shown as its own column on the Live list. This is the
sentence, not the code — the customer’s own identifier goes in
Asset ID under Extra Parameters.
The GPS unit fitted to the vehicle — not the vehicle’s own make/model, which is under Vehicle Info below.
Get this wrong and the command drives the wrong relay, or
drives the right one the wrong way. A normally-closed relay cuts on
LOW — the safer wiring, because a dead tracker then leaves the
vehicle drivable. Check the installation rather than assuming: on this
fleet DOUT1 reads HIGH on vehicles that are driving perfectly well.
Teltonika hardware only for now.
How many cameras this recorder has. Until something
says otherwise the Video tab opens channel 1 only, so setting it here
saves finding out later.
The timezone configured on the tracker itself — not where the vehicle drives. JT/T 808 units send a bare timestamp with no timezone in it, so the platform cannot work this out on its own: set it wrong and every trip lands at the wrong time of day. Leave at UTC unless you have checked the device’s own settings.
For plant billed by the hour — an excavator, a
generator, a crane. The equipment reports multiply this by the hours
the machine actually ran, in this company’s own currency. Leave
it empty on anything that is simply driven: the reports then show its
hours with no money against them.
Type is what shape the vehicle is; Class is the
regulatory band a site cares about. A van can be either, so it is asked
rather than worked out — and left unset until somebody knows.
These figures produce an ESTIMATE, not a
measurement. Mileage times a rate somebody typed is a defensible
number and a useful one — it is not a reading from a tank, and no
report will add the two together or let one stand in for the other.
Machine hours are counted separately from idling. A
crane or a compressor running static is doing the job, not wasting
fuel, and folding it into idling would report the work as waste.
Only for vehicles reporting the CAN fuel-used
counter (io.107). Leave blank until it is measured — the
report then shows the raw counter rather than a guess. To measure
it, take the fuel-card litres for this vehicle over a month and run
tools/calibrate_fuel_counter.py.
No year, because they recur. The rate is chosen from
the date of the driving, so a report over a season boundary uses both.
Fuel is read from the vehicle’s own sensors. What
this vehicle is actually sending is listed below — the mapping
itself lives on the Sensors tab, because that is where every
other signal is mapped and a second place to do it would be a second
place to get it wrong.
Who has driven this vehicle, and
when. A tag presented to the reader beats the office record —
when a relief driver takes a vehicle for a day, the assignment still
names the regular driver and the reports must not. Assign a driver to a
vehicle on the Drivers page; this is the record of what has been true.
Changing this closes the
current record and opens a new one. The previous driver keeps
every trip up to now — reports over past months do not
change.
This server has not been restarted onto the update that stores these
fields yet, so they are read-only for now. Nothing typed here would be
saved — which is why they are disabled rather than silently
discarded.
Contract and KOC details for this vehicle. Every field is
free text you can type over at any time; nothing here is filled in
automatically, and nothing is required. These are the fields the KOC
reports will quote back.
The box itself is painted by
your browser in ITS locale — that is an operating-system control
and the page cannot change it — so the date is repeated beside it
as dd/mm/yyyy, which is what the KOC paperwork uses. Stored as a
real date either way, so “expiring within 30 days” can
actually be asked of it later.
Video
Starting live video sends the device a request to stream; footage arrives
on the server and appears below once recorded. Every request is logged
against your account.
Sensors
Sources: io.239 (Teltonika element),
bit.alarm.1 (bit of an attribute),
attr.ignition, pos.speed.
Values are read from this vehicle’s most recent position.
The function says what the value is — reports and
alerts look for “the fuel sensor”, never for a name or a
source, so a sensor left as Other is invisible to them.
Photos
Vehicle Photo
No photo
Driver Photo
No photo
Oversized images are resized automatically. Location data is stripped from every upload.
A default admin login was created for this company. Copy these now —
the password won't be shown again.
Change password
New Account
Everything underneath this company moves with it.
Unticking this STOPS TRACKING this company
and every company beneath it. Positions that arrive while it is off are
discarded, not stored later.
Logo
Modules
Switching a module off on a partner takes it from every
company underneath, whether or not their own box stays ticked.
Invoice
Pro-rated by the days each vehicle was on
the platform. Blocked vehicles are not charged.
Balance & Ledger
Correct IMEI
The vehicle keeps its name, history, sensors and
alerts — only the identity the tracker reports under changes.
Positions arriving under the old IMEI will stop matching this vehicle.
New Driver
The tracker reports this when the driver logs in. Fill it
in and the platform can say who was driving, not just which vehicle.
Or type a new one below to create it.
Photo
PNG, JPEG or WebP, up to 200 kB.
Vehicles
Leave blank for now. A date here applies to vehicles you
are adding, so reports over that period name this driver. It is refused
if another driver is already recorded on the vehicle for those days.