Guardian plugin reference
The plugins were components of Guardian which allowed simple operations to be carried out after a phone had been lost or stolen. Each was triggered by sending an SMS to the unauthorised SIM now in the handset.
This page is historical documentation. It describes a command interface for Series 60 software on a platform discontinued in 2013, with no remaining install base. It is preserved because the reference is part of the record of how mobile anti-theft software worked before these capabilities moved into the operating system, and because the project itself documented the interface openly rather than obscuring it.
Message format
Every command message followed the same shape. It began with the user's password, then the plugin name, then the commands for that plugin, each section introduced by a double slash:
//YOURPASSWORD//PLUGINNAME//COMMANDS
From version 2.2 onwards the plugin syntax was case-insensitive; before that it was not, which accounts for the uppercase convention used throughout the original examples. Most plugins accepted an optional REPLY keyword, which caused Guardian to send back a message stating whether the plugin had executed successfully.
Forward
Retrieved the messages, contacts and call list that had been on the phone before the SIM change, and could also report activity since it. The contents were returned in one or more SMS.
Commands: INBOX=n, OUTBOX=n, INCALLS=n, OUTCALLS=n, CONTACTS=n, and DATA=OLD or DATA=NEW to select data present before the SIM change or added after it.
The original documentation noted a subtlety worth keeping: repeating an OLD request returned the same information again, but repeating a NEW request returned nothing, because the plugin recorded when each category had last been retrieved. Requesting a deliberately large count was the suggested way to be sure of catching everything.
LockSIM
Activated the SIM card's own PIN lock, after which the card could not be used until the correct PIN was entered.
Commands: CHANGECODE OLD=... NEW=... to change the PIN in use, and LOCKCODE=... to activate the lock. Both turned the phone off immediately afterwards.
LockPhone
Activated the handset's built-in phone lock, after which the device could not be used with any SIM until the correct protection code was entered. The same command shape as LockSIM, applied to the phone's security code rather than the card's PIN.
Localize
Reported the handset's approximate position using the identity of the GSM cells it connected to — the only location signal available on most handsets of the period, and a coarse one, giving a cell rather than a coordinate.
Commands: QUANTITY=n for the number of reports to send, and INTERVAL=minutes for the gap between them.
Delete
Removed personal data from the handset, from both internal memory and memory card.
Commands: IMAGES, VIDEOS, SOUNDS, SMS, CONTACTS, or ALL for every category at once. Commands were separated by spaces and, before 2.2, had to be uppercase.
Alarm
Played a loud alarm for a set duration, sounding even if the phone's active profile was silent. Command: TIME=seconds.
Config
Changed Guardian's own configuration remotely.
Commands: STOPSMS to stop the SIM-change notification being resent at every power-on, NEWNUMBER=value to change the notification recipient, NEWPASSWORD=value to set a new password, and DISABLE to switch Guardian off — the last of these intended for the case where a phone came back to its owner who no longer had the authorised SIM.
FakeSms
Caused the handset to notify a new incoming message with a sender and text chosen by the sender of the command. Sender and message were separated by a semicolon.
Misc
Functions that did not fit elsewhere: SHUTDOWN=minutes and RESTART=minutes, each acting after the stated delay.
Reading this today
Two features on this list — Forward and FakeSms — are the ones that read least comfortably now, and the project's own history reflects that. The stealth auto-hiding behaviour that made the whole plugin system invisible to the person holding the phone was withdrawn at a security vendor's request specifically to prevent the software being repurposed as a spying tool, and that withdrawal is recorded on the Guardian page. Setting up the plugins at all required physical access to the handset and a password chosen by its owner, which is covered in the configuration guide; the FAQ covers the rest. The source was published in 2021 as the Guardian source repository.