SMSCON

Contents

DESCRIPTION

SMSCON is a n900 complete control utility by sending sms messages to it. This is handy in case you can't find your phone (it's lost or stolen).

SMSCON is a two part Python script running in CLI; smscon & smscon_daemon. SMSCON is the CLI control part and smscon_daemon is the "running in the background" part. The configuration file for all the user settings is smscon_config.

Functionality

SMSCON can:

   * autoload at boot (when set);
     when device reboots it loads smscon_daemon in the background.
   * creates a log file (on the device)
   * detect SIM card change and sends new phonenumber and IMSI code (returns SMS) to other known mobile number;
     if somebody has stolen your phone and put his/hers own SIM card in it.
   * send current GPS location coordinates (returns SMS).
   * reboot the phone;
     only works if your SIM card hasn't a lock code.
   * shutdown the phone.
   * open a reverse ssh connection to your own server (GPRS connection);
     control the device at CLI level from your own home.
   * email a frontcam picture to your email address (GPRS connection); to see where your phone is or who is using it.
   * send the current remaining battery charge (returns SMS).
   * make the phone call you;
     you can listen where your phone is (returns phonecall)


Installation

SMSCON needs the following packages installed on your device to install and run:

apt-get install maemo-python-device-env
apt-get install python-location
apt-get install pexpect
apt-get install gstreamer-tools
apt-get install openssh

The three files (smscon, smscon_daemon & smscon_config) are placed in the /usr/bin directory.

Also you need a fixed IP address on your remote server for the reverse-ssh (port 22) connection, if you want to use the 'Remoteon' / 'Remoteoff' command.

Usage

SMSCON is triggered by a SMS message with a predefined known command and then will execute the task in the background. If so it will send a reply SMS with the information.

The default commands are:

Nokia-N900:~# smscon -sms
Check
Reboot
Poweroff
Power
Location
Remoteon
Remoteoff
Camera
Call

These commands can be altered in smscon_config file.

Options for smscon are:

Nokia-N900:~# smscon
== smscon v0.3.0 - Nokia N900 remote control utility ==
 Options:
  -init    : create smscon_config
  -start   : start smscon_daemon
  -stop    : stop smscon_daemon
  -status  : get smscon_daemon status
  -log     : show the log file
  -clear   : erase the log file
  -sms     : show sms commands
  -help    : this help menu
 Special options:
  -boot    : start smscon_daemon at device boot
  -unboot  : remove start of smscon_daemon at device boot
  -reset   : factory default
  -imsi    : show imsi code file
  -delete  : delete imsi code file


Remote SSH Connection

When the (reverse-)SSH connection is made (default command 'Remoteon') you can from the server side (your own server) connect to your Nokia device with the following command:

ssh -p 8080 localhost -l root

First Time Usage

The first time start SMSCON with the following command (smscon -init); it creates a new config file (usr/bin/smscon_config) which you must edit to your own needs (change all "xxxxxxx"'s). I use Putty / WinSCP on Windows for this. Don't use a Windows editor! The second time you start smscon (smscon -start) it loads the configured user settings file and is now active. It then stores your valid IMSI code in a file (smscon_code) if the file doesn't exists. When later a new SIM card is inserted the new IMSI code is verified with the code in the stored file. This is the "SIM card change detect".


Nokia-N900:~# smscon -init
creating new user config file in "/usr/bin/smscon_config".
WARNING: first edit smscon_config before using smscon!

Nokia-N900:~# smscon -start
smscon_daemon started.

Nokia-N900~# smscon -log
(Thu Sep  2 22:10:24 2010) SMSCON: smscon_daemon active
(Thu Sep  2 22:10:25 2010) DAEMON: user settings succesfully loaded from "smscon_config" file
(Thu Sep  2 22:10:25 2010) DAEMON INIT: initalizing new IMSI file with current valid IMSI code
(Thu Sep  2 22:10:25 2010) DAEMON: current valid IMSI code (XXXXXXXXXXXXXXX) saved to file
(Thu Sep  2 22:10:25 2010) DAEMON: authorized IMSI code found
(Thu Sep  2 22:10:25 2010) DAEMON WARNING: smscon doesn't autoload at boot
(Thu Sep  2 22:10:25 2010) DAEMON: no test arguments passed for daemon

Testers Needed

SMSCON is intended for people who have Python programming / Linux experience so you can adjust the script to your own needs.

We'd like to hear if it works for you. We could only could test it with few SIM cards and want to know if it also works with other cards & networks in other countries.

Current Version: v0.3.0

   * bug fixes, bug fixes, bug fixes in data connection handling.
   * at the moment smscon can only connect to a smtp server (for sending the email) without secure authentication. (will be solved in the future).

Changes from version v0.2.4:

   * now email sending & ssh connection -only works- through GPRS connection because GPRS is always available. (a random WLAN access only works if preconfigured)
   * when you install smscon package there is no more 'smscon_config' template file installed; the first time you start smscon,
     it creates a new config file at /usr/bin/smscon_config which you must edit. The next time you start smscon is loads
     this edited config file and is then active. (see also [First Time Usage])
   * when installing future updates of smscon settings file is not deleted.
   * command smscon -reset resets your complete configuration to the state after your smscon package installation.
     (deleting boot, config, code & log file)
   * smscon_daemon will stop if no SIM card is found. (smscon has no use then)
   * For smscon to work properly set in Nokia menu Settings --> Internet connection to 'Any connection'.


Future Development

   * smscon will be set to load at boot at installation of smscon;
     this can later be undone with the -unboot option if needed.
   * new commands: "Trackon" / "Trackoff"; smscon will continually send (after x time) a sms with current gps coordinates.
   * smscon will lock the device after first valid sms command is received (user configurable).
   * rewriting connection handeling by smscon.
   * storing all smscon_config user variables in gconf database.
   * saving the phone number where you send your sms messages
     from in smscon_config (in VALIDSENDERNUMBER). At the
     moment it is lost after reboot and uses the initial number stored
     in VALIDSENDERNUMBER.

DISCLAMER:

If this software does harmfull/unwanted things (not to be expected) to your device in any way the developers can't be responsible for this.

Software N900