SMS FoxBox GUIDE - User Manual (ENGLISH VERSION)

The Latest Manual version can be found on FOXBOX dedicated website at: http://www.smsfoxbox.it

 


This is a short User Manual (ENGLISH version) to guide you in SMS FoxBox software configuration and functions.
Please for the installation refer to the sms foxbox getting started, available here: smsfoxbox_getting_started_eng_v110.pdf
The PDF version is available for download here http://www.kdev.it/smsfox_en_manual2a.pdf

The italian version is available here: SMS foxbox Manuale Utente

 When you encounter this symbol, means that there is an updated example on this website, follow the link to open it


 

 

 

USER GUIDE

SMS FoxBOX

Version 2.0a ENGLISH


 

INDEX

1.0 INTRODUCTION
1.1 How to connect to SMS foxbox

2.0 Control Functions

2.1 Control Panel
        2.1.1 Status
            SMS engine
            SMS gateway
            Modem
            Buzzer
            Signal Quality
        2.1.2 Utilities
            Dial e Multiparty
            SMSC Switch
            Black/White list
            Backup e Restore

3.0 SMS Messages Management

3.1 Incoming Messages
3.2 Sent Messages
3.3 Outgoing messages
3.4 failed Messages
3.5 Send a new message
3.6 Polls
3.7 Address Book
    3.7.1 Distribution lists and multiple sends

4.0 System Management

4.1 Users management
4.2 Configuration
        4.2.1 Configure the forward SMS to E-mail
        4.2.2 Template configuration
        4.2.3 Configure INBOX for  E-mail to SMS forwarding
       SMS Queue direct access
4.3 Event Handler
    4.3.1 Control a  LED for a visual alarm
    4.3.2 How to enable a application
    4.3.3 How to enable the XML format
    4.3.4 How to enable gateway SMS
    4.3.5 How to enable MySMS module
4.4 Custom applications
    4.4.1 Example of contest via SMS
4.5 MySMS module
4.6 Network configuration
4.7 Date and Time
4.8 System and Logs
4.9 SMS file format ( The SMS File format)
5.0 How to con figure the SMS engine
    5.0.1 LOG level (verbosity)
    5.0.2 Message Autosplit
    5.0.3 How to enable Black/White list
5.0.4 How to setup PIN
6.0 Software draft (  Software functions draft)

Extra:

 

 

1.0 INTRODUCTION


SMS FoxBox is a compact and low cost solution to send and receive SMS messages using a normal SIM card. It includes a GSM quad band modem, a SD/MMC memory card to store the messages (up to 2 millions with the default 1GByte card) and a Linux systems to manage the SMS queue by means of an easy to use Web interface.

SMS FoxBox can also operate as an SMS to TCP/IP gateway to integrate a wide range of network and desktop applications with the SMS messaging.

 


1.1. How to connect to SMS foxbox


SMS FoxBox is fully Web Based. This means that you have to use  a Web Browser to interact with it. The interface is visibile using a browser capable of XSL transformations.
Supported browsers are:
- Mozilla Firefox
- Mozilla
- Netscape
- Opera
- Internet Explorer 6

For a better experience we suggest you Mozilla Firefox, available for download at http://www.mozilla.com

The default IP address is 192.168.0.98. Type it on the address bar of the browser and once you are connected, log into the system with:
Username: Admin
Password: GsmBox2006!
The system is case-sensitive, and it checks capital letters.


 

2.0 Control Functions




2.1. CONTROL PANEL
From this window you can control the status and get access to the core of the system. A set of utilities for diagnostic is available on the bottom of the page.
The console is organized in 2 stages:
2.1.1 STATUS
•    SMS engine: This button is used to control the main SMS ENGINE. This one is enabled by default and gives to the system the power of “send messages” and “receive messages”. Stopping the engine machine will immediately hangs, all processes of sending and receiving will be halted.
•    SMS gateway: This button controls the E-mail to SMS gateway engine (procmail + fetchmail)
•    Modem: Power on and shutdown of the GSM/GPRS internal modem, this control automatically stops and start the SMS engine.
•    Buzzer: Acustic beep on incoming message.
•    Signal quality: This is the air carrier signal indicator. It can be in one of this 4 positions:
-    No signal: There is no signal, please check your antenna.
-    Low: The signal is low, if it is possibile try to move your GSM antenna in a better position.
-    Good: The signal is good, the Antenna is in a good position and the box operations are normal
-    Very Good: Congratulations! The signal is excellent.
By clicking on SMS engine, SMS gateway is possibile to get access to diagnostic and configuration details of each area..
•    SMS engine: In this area, the details of the actual engine configuration are displayed. Every settings modified on this  configuration requires that the engine will be restarted to take effect. (stop-start). (rif. 5.0 SMS engine configuration)
•    SMS gateway: configuration of the E-Mail to SMS gateway and SMS to E-mail gateway . (Rif. 4.2 Configuration)
•    Modem: From this layout you can send AT commands to the internal modem and view the output. This is really usefull for country code settings and internal configuration. You can also start a voice call with ATDXXXPHONE where XXXPHONE is the number you like to DIAL. For a complete reference of TELIT GM862-quad commands look at: http://www.acmesystems.it/articles/00003/1vv0300691_GM862-QUAD_Software_User_Guide_issue0.pdf

2.1.2 UTILITIES
•    Dial and Multiparty: This function allows you to start a conference call between the numbers specified on the Address Book under the group “DIAL”, this feature is offered by the AIR carrier, check if your carrier can offer this service. (Rif 3.7 Address book)
•    SMSC Switch: With this feature you can alter the SSMC when the defined limit is reached. A list of SMSC has to be defined in the Address Book under the group SMSC. Each SMSC should be named SMSC1, SMSC2 … SMSCN. (Rif 3.7 Address Book) The SMSC List is available on the website of your air carrier. To enable the switch you have to set the value limit to a number greater than 0. The deafult SMSC of your SIM can be displayed  by typing  AT+CSCA? In the Modem layout available in the Control Panel
•    BLACK/WHITE list: In the provided text fileds you can specify
-    Blacklist: Phone numbers listed here are “banned” and sending SMS will be disabled. All numbers should be entered followed by a carriage return. To enable this feature you have to remove the sharp symbol # from the line “#blacklist=/mnt/flash/…” in the SMS engine configuration “SMS engine”. (Rif 5.0.3 how to enable BLACK/WHITE list)
-    Whitelist: This features gives you the ability to allow SMS sending only to number specified in the list. To enable this feature you have to remove the sharp symbol # from the line # “#whitelist=/mnt/flash/…” in the SMS engine configuration “SMS engine”. (Rif 5.0.3 how to enable BLACK/WHITE list)

SMS engine restart is needed only on first activation, numbers will be listed and de-listed on the fly (Rif 5.0.3 How to enable BLACK/WHITE list)
•    Backup/Restore: This utility was designed to allow you to backup the whole content of the appliance (DB and Configuration) in a copressed format. The restore process will push all contents to their original locations. This allows an easy settings migration from a device to another.


 

3.0 Messages Management




3.1 Incoming Messages
In this page are listed all incoming messages for the user queue (Rif. 4.1 Users management)

Each SMS message is indexed by the system for easy search capabilities, and provides you:
•    From: the SMS sender.
•    From_SMSC: the (SMSC) short message service center
•    Sent: Date and time of the SMS message.
•    Received: Date and time the message was received by the system.
•    Subject: Logical name of the modem device receiving the message (GSM1 is internal GM862-quad)
•    Alphabet: is the Alphabet used to encode the message
•    Text of the SMS message
The system wil receive messages in background, the number of new received messages is notificated trough a counter displayed on the right menu. For “how to disable SMS receiving” refer to the SMS engine configuration (Rif 5.0 SMS engine advanced configuration).
The main queue linked to users level Operator and Viewer is named default, if you would like to link users to different queues look to the Users Management (Rif 4.1 users Management), the Admin users works on the queue “history”.

3.2 Sent Messages
In this page are listed all sent SMS messages.

3.3 Outgoing Messages
In this page are listed all messages in queue, during the “sending phase” but not already charged by the modem.

3.4 Failed Messages
In this page are listed all SMS messaged skipped for errors after 3 send attempts.

3.5 New message
From here you can send new SMS messages.
You have to insert the required data filling the form:
- From: by default the user logged in the web interface
- To: Receivers phone number in international format without the leading +. for example 39XXXXXXXXX, or select a contact or a list of contact from the Address book (Rif 3.7 Address Book).
- Message: Type the text of the message, if autosplit (default) is enabled, you can send at least 1836 characters as concatenated SMS (Rif  5.0.2 Autosplit).
- Flash: the message appears directly on the phones display. Most phones support this feature, but not all.

3.6 Polls
Polls are a simple way to obtain rapids and cutom statistics on SMS content of incoming messages. This function allows you to specify a list of patterns. Every time a SMS message contains one of this paterns, the counter for the poll is incremented and a graphic with percentage is displayed. To add/remove pattern subjects simply click on add or remove.

3.7 Address Book
List of contacts and groups for distribution lists (SMS letetrs)
From here you can choose between:
•    Add a new contact;
•    select single and multiple contacts;
•    delete a contact;
•    edit contact;
•    search.

For each entry you have the Name, the phone number , the GROUP* and the number of times that the message should be sent to the contact.

•    Name: contact name
•    Phone: phone number of the contact number in international format without the leading +. for example 39XXXXXXXXX
•    Group/notes: Used to identify a group for multiple sends and distribution lists
•    How many times: how many times every message will be sent to the contact
To add a contact to the Address Book select add from the menu.
To send a message to a single contact click on his name, automatically the phone number will populate the To: field of the send message form.
3.7.1 Distribution lists and multiple send *
For multiple send or Distribution lists you have to launch a search matching the group/notes fields*. After you have obtained the desired list, press on “send to all” to start message sending process. In the page “ Send new message, inside  To: field the  indicator [selected group] wil be displayed.

 

4.0 SYSTEM MANAGEMENT


4.1 Users management
SMS FoxBox is a multi-users system with access privileges.
Using “Users management” you can configure users and grant to each one a dedicated incoming message queue. The Admin user is a “power user”, it can perform every settings of the box and create other users. There are other 2 user levels: The operator (with no setup capabilities)  and the viewer (can only view incoming messages and perform base operations).
For each user the Admin user should specify a different incoming queue, here the new users will work on a dedicated environment without interfer with other users, or link it to the default queue shared by other users. Only the Admin can access historycal queue, (a queue where all incoming messages are stored).
Users attributes are:
•    Nane: Username used for login
•    Password: access password
•    Type: Level of the user (Admin, operator, viewer)
•    Queue: Queue space definition.
The users access level (privileges) are:

•    Operator: The Operator can handle incoming and outgoing messages, send new messages but cannot change configurations.
•    Viewer: The viewer is a “read-only” user and can only view incoming messages and send messages as defined in black/white lists.

If you have defined a custom queue for a user and you delete it you will delete also the associated Database, only the default and the historical queues cannot be deleted.

4.2 Configuration
This layout gives you the full control on the GraphicTemplate, language selection and on Gateway E-Mail to SMS and SMS to E-Mail function.

•    4.2.1 Configure the SMS to E-mail forward: From here you can specify the SMTP server for SMS forwarding to a Mailbox.

-    Insert seder domain: Specify the domain from where messages should be sent, for example if you mailbox is This e-mail address is being protected from spam bots, you need JavaScript enabled to view it the domain is the text portion after the @, your domain will be gmail.com.
-    SMTP server for outgoing mails: insert the IP or the fully qualified domain name of your SMTP server.
-    Insert an e-mail address for your SMS FoxBox: This will be the e-mail address from where SMS foxbox will send messages.
-    E-mail recipient: Insert the email address where the SMS message should be forwarded. If you need to send it to more than one mailbox, insert it separated by a comma.
-    E-mail subject: Insert the subject of the e-mail that will be sent to you example. New SMS for you.
To enable this feature you have to remove the sharp # in the Event Handler (Rif 4.3.4 How to enable the SMS to E-mail gateway ).
•    4.2.2 Template configuration: From here you can customize the theme of your box, change the language, apply your logo and company name.
-    Company logo (80x50): Upload an image in jpeg format, this will substitute the SMS foxbox logo. The image should be sized 80 pixel x 50pixel
-    Template: Choose the theme of you foxbox from the popup
-    Language: choose the interface language.
•    4.2.3 How to setup the E-mail to SMS forward: The function “forwarding” of E-mail to SMS offers you the opportunity to divert all incoming e-mail messages of a defined mailbox to a the phone number specified in the from, in the body or in the subject of the email, look at http://www.kdev.it/joomla/SMS_FoxBox/Tutorials/Email_to_SMS_custom_scripts_2007082269.html for customization tips.
-    Specify Server to poll :Specify the fully qualified domain name or the IP of the server where the mailbox is hosted.
-    Specify protocol: Select wich protocol should be used POP3 or IMAP
-    Insert username: type here the username used to log into the mailbox
-    Password: type here the password used to log into the mailbox
-    If you check “Leave a copy of the messages of the server”, all your messages will not be deleted from the mailserver when diverted .
TO enable this function you have to Start the “gateway engine” from Control Panel. (Rif 2.1.1 SMS gateway engine)

When the configuration is finished, you can try the divert following this example:

You would like to send the text “test divert to the phone number “349000111222”.
Open up your favourite e-mail client and format the message as follows:
Fill the “to:” field with the e-mail address defined for divert. Please, check that the e.mail format is configured as TEXT and NOT as HTML.

In the e-mail subject type: TOsms
In the body of the a-mail:

From: your name
To: 39349000111222


test divert to the phone number

and then send the e-mail.
In a few seconds the message will be sent to the desired number.
This feature is really usefull for those who wants to give to their diagnostic systems e-mail based a notification trough SMS.
The configuration file for procmail is located in /etc/.procmailrc feel free to modify to fit your needs.

4.3 Event Handler

The event handler is one of the powerfull features of SMS foxbox. From here, you have full control on all actions that SMS Fox Box perform for receiving or sending a message. You can assign different meanings to LEDS, disable incoming messages or disable outgoing messages and a lot of other process.

To activate or deactivate functionalities you need only to uncomment or comment the little blocks enclosed between (# sharp symbol)

Take a look to the block that calls custom scripts on incoming messages, uncommenting it as shown below you will activate the custom form of the case 1:
As you can see, in this if clause the RECEIVED event is selected. The events you can select are: SENT, RECEIVED, FAILED or REPORT
You have to keep in mind, that you need to pass arguments to the script you want to run:

Arguments you can pass are:

    * $1 Is the event identification and should be SENT, RECEIVED, FAILED or REPORT
    * $2 Is the full path to the SMS file
    * $3 is the message id of the SENT message, it is only used if you sent a message successfully with status report enabled.

With the word “event” we identify an action, the available events are  Incoming Message “RECEIVED”, Sent Message “SENT”, e Failed Message “FAILED”.
The form allows you to edit the script following BASH syntax, removing # from a block you activate the function, or adding a script you can customize the SMS foxbox.
In the script you can access some variables that comes directly from the engine:

•    $1 Event type. This variable should be:
-    SENT sent message
-    RECEIVED incoming message
-    FAILED sending message failed
-    REPORT status report notification
•    $2 Path to the file containing the SMS handled by the event in $1
•    $3 message-id of the status REPORT

Each time that a event occured the event handler is invocked and all vatiables ($1,$2) passed to this script that will execute the action define in the if clauses.

Predefined eventhandler blocks :

4.3.1 Control a  LED for a visual alarm

# TURN ON LED OG29 ON RECEIVED MESSAGE
#if [ "$1" = "RECEIVED" ]; then
# #/etc/sms/scripts/led29
#fi
#
If you enable this block, for each incoming message you’ll obtain a blink of the LED OG29 (Rif  Hardware reference)

# TURN ON OG 29 ON SENT MESSAGE
#if [ "$1" = "SENT" ]; then  
#/etc/sms/scripts/led29
#fi
#
If you enable this block, for each outgoing message you’ll obtain a blink of the LED OG29 (Rif  Hardware reference)


4.3.2 How to enable a application

#Enable this to activate custom events
#This is the custom script written by user for RX action
#
#if [ "$1" = "RECEIVED" ]; then
#/mnt/flash/root/source/custom/custom_rx "$2"
#fi
#
#This is the custom script written by user for TX action
#if [ "$1" = "SENT" ]; then  
#/mnt/flash/root/source/custom/custom_tx "$2"                          
#fi
This block contains the call to the scripts handled by Custom Application for RX (incoming) messages
 (Rif 4.4 Custom Application).

4.3.3 How to enable XML format

#Save messages in XML format
#if [ "$1" = "RECEIVED" ]; then
#/etc/sms/scripts/sms2xml $1 $2 $3
#fi
#
With the activation of the block all incoming messages will be exported in XML format and saved in the defined folder.

BASE functions for incoming and outgoing messages DEFAULT
#NEVER DISABLE THE FOLLOWING SCRIPT FOR MESSAGE RECEIVING
if [ "$1" = "RECEIVED" ]; then                                         
/etc/sms/scripts/parser.php
fi  
#
This block should always be active, if you disable it, incoming messages will not be visibles from the web interface.

#                                                                      
#NEVER DISABLE THE FOLLOWING SCRIPT FOR MESSAGE OUTGOING                 
if [ "$1" = "SENT" ]; then                                             
#
#/etc/sms/scripts/out.php                                                
/etc/smsc_ctl $2
fi                                                                         
#
This block should always be active, if you disable it, outgoing messages will not be visibles from the web interface.

#Event on failed message
if [ "$1" = "FAILED" ]; then                                                                                                                            
/etc/sms_fail $2                                             
fi
This block should always be active, if you disable it, failed messages will not be visibles from the web interface.

4.3.4 How to enable the SMS gateway functions (SMS  to E-mail)

#SMS TO EMAIL
#
#/etc/mailsend/smstomail "$2" "$1"
#fi
#
#Event on sent message
#if [ "$1" = "SENT" ]; then                                                                                                                                    
#/etc/mailsend/smstomail "$2" "$1"                                                                                                                                    
#fi
#
#Event on failed message
#if [ "$1" = "FAILED" ]; then                                                      
#this send the failed message to a mail address                                                                       
#/etc/mailsend/smsfailmail "$2" "$1"                                               
#fi         
#

This block enables the SMS forward to e-mail functionality, for INCOMING. OUTGOING and FAILED  messages as declared in the varibale $1 (RIF 4.2.1 How to configure the forward SMS to E-mail)

4.3.5 How to enable MySMS module (automatic Mysql insert)
#this is the database mysql backend
#if [ "$1" = "RECEIVED" ]; then
#/etc/sms/scripts/mysmsd "$1" "$2" "$3"
#fi
This block enables the MySQL module as described in (Rif 4.5 MySMS Module)


4.4 Custom Applications

 Custom application forms and eventhandler

 How to join SMS to your server environment

From this panel you can extend SMS foxbox functions with your own applications.
In the 2 proposed text fileds you can link your program to INCOMING messages
 (Rif 4.3 Event Handler) RECEIVED and to  SENT messages.
By default the system is configured for executing a BASH script in shell #!/bin/sh. If you would like to use PHP scripting simply change the header declaration with #!/bin/php . Obvously you can also write C or C++ applications and run it from here, for a complete guide to write applications for fox board look at http://www.acmesystems.it where the SDK and a WebCompiler are available.

4.4.1 Example of contest via SMS

 Example of SMS foxbox application

Now is time to proceed with a practical example, we would like to create a game, a little example of Lottery.

We would like that people send SMS messages to the number of SMS FoxBox typing in the text a CODE,and we want to answer to the winner with a SMS notification.

Analysis of the problem:

To create this application we need to control the text of each incoming message,in case of the message with the winning code we need to extract the phone number of the winner and send
a SMS with the notification to the From number extracted.

This is a shell script that perform all this actions:

#!/bin/sh
#
#This is a sample script for custom RX action
#PURPOSE: The script search a code inside a incoming message and if the code is matched reply
#with the messahe "You WIN!"
#
#Search the code 1223456 inside the SMS message
#
#CODE that we want to search
SEARCH="123456"
#
#Text message that we want to send
TEXT="You WIN!"
#
#
CODE=`/bin/cat $1 | grep "$SEARCH"`
#
#if code is not empty reply with the message "You WIN!"
if [ "$CODE" == "$SEARCH" ]; then
        #I need to extract the phone number to send the reply
        #
        NUMB=`/bin/cat $1 | /bin/grep "From:" | awk '{print $2}'`
        #
        #Now I generate the file for outgoing queue
        FILE=`/bin/mktemp /mnt/flash/spool/outgoing/send_XXXXXX`
        echo "To: $NUMB" >> $FILE
        echo "" >> $FILE
        echo "$TEXT" >> $FILE
fi

To try this script, copy it and paste it inside the form "Custom application applied to received items".

Then send a message with this CODE: 123456 and you will WIN! :-)

As you can see in this example, we have created a little parser using `/bin/cat $1 | grep "$SEARCH"` this means

list the content of $1 (that is the full path to the received message) and match if it contains the pattern $SEARCH (the winner code).

Then we extract the phone number of the winner with:

`/bin/cat $1 | /bin/grep "From:" | awk '{print $2}'`

this means list the content of $1 search the pattern "From:" and take the number using awk {print $2} (column 2).

At the end we proceed generating the notification message. The code below will create a file with this content, the destination To: (previous extracted number) a blank line and the the text of the notification.

FILE=`/bin/mktemp /mnt/flash/spool/outgoing/send_XXXXXX`
echo "To: $NUMB" >> $FILE
echo "" >> $FILE
echo "$TEXT" >> $FILE

The variable $1 contains the full PATH to the message, and what is the format of the message in this file? Is simply this !

From: Kanta
To: 491721234567
Alphabet: ISO
Text of the message:

Please refer to (Rif 4.3.2 Enable custom applications).

4.5. MySMS module

 How to put SMS on Mysql


The SMS Fox Box internal database is SQLite. This engine offers really good performance and supports databases up to 2 terabytes in size.
You would say: "really good but my system is based on MySQL!", this is not a matter with MySMS module!



The main purpose of this module is grant you the capability to automatically divert all your message to your favourite database.

As all other processes also this one is controlled by the main event handler.
The code below is the call to the module from event handler and it is a portion of it

.....
#this is the database mysql backend
#if [ "$1" = "RECEIVED" ]; then
#/etc/sms/scripts/mysmsd "$1" "$2" "$3"
#fi
....

To activate de-activate the module you have always to remember to remove/add the # sharp character as described in the Event Handler how to.

The configuration is fully web based, and you can access it by clicking on MySMS button
below is listed all what you need to complete setup:
- A MySQL socket listening on default port on your server with permission setted up to accept incoming connection from the IP of SMS FoxBox [more info...]
- The IP/hostname of your MySQL Server
- The Username to access the table with enough permission to perform (SELECT, INSERT).
- The password you setted up for the user, remember to verify password style. [more info...]
- The name of database where we have to perform the INSERT query.
- You can choose to store messages only on MySQL or on both database (internal SQLite and Mysql).



After you finished filling up required fields choose Save Configuration to apply changes.

Your MySQL Database should contain a table named "messages" with the following fields times,froms,tos,subject,sent,texts.

The insert will populate this fields with Time when the message was received by SMS FoxBox, Sender phone number, Receivers phone number, The logical name of the modem that received the message, Time when message was sent and the TEXT of the message.

The INSERT is called by a script that "parse" the SMS File for extract values and pass it as argument at a binary file that perform the real insert.
The parser is located in /etc/sms/scripts/mysmsd and the code is reported below:


DATE=`date +"%Y-%m-%d %H:%M:%S"`
#Extract data from the SMS file
FROM=`/etc/procmail/formail -zx From: < $2 | sed 's/"//g'`
TO=`/etc/procmail/formail -zx To: < $2`
SUBJECT=`/etc/procmail/formail -zx Subject: < $2`
SENT=`/etc/procmail/formail -zx Sent: < $2`
#Text is not used but could be used
TEXT=`/etc/procmail/formail -I "" <$2`
#CALL the binary
/etc/sms/mysms "$DATE" "$FROM" "$TO" "$SUBJECT" "$SENT" "$TEXT"

For the SMS processing we used a PROCMAIL utility called FORMAIL more info are available on their website.Attenzione, per abilitare il modulo è richiesto l’abilitazione dalla gestione eventi (VEDI 4.3.5 Abilitare il modulo MySMS)

4.6 Network

From this screen you can edit TCP/IP settings of the SMS foxbox.

Available fileds are:
• IP address;
• SUBNET MASK;
• BROADCAST address (ex. 192.168.7.255);
• GATEWAY IP for internet access, this should be enabled for the use of SMS forwarding and other network functions (Rif. 4.2 Configuration);
• DNS servers Domain Name Server.

After you have saved the new config you have to reboot the appliance for the changes to take effect..

4.7  Date & Time

SMS handling needs that date and time are correclty setted up, due to the indexing of the messages inside the Database.
You can choose to set Date & Time manually or use a network time server with your local time settings.

4.8 System and logs

This is a summary of your system overall status.
From here you can show:
• Used RAM memory;
• Used Flash memory;
• System details ;
• Handle Sqlite databases using the internal SQLITE manager (as PHP my Admin but for SQLITE)
• View logs of procmail, sms engine. (Rif 5.0.1  LOG level and verbosity)

4.9 SMS file format

The SMS file format is a text file composed of two parts:

- The header
- The message


This two parts are separated by a carriage return.

An easy SMS example is:

From: SMSFoxBox
To: 3934947XXX
Alphabet: ISO

Text of the short message


Each Header line has a meaning as shown in the table below:

GENERIC HEADERS

From    Sender identification, usefull for logged in user identification (outgoing messages)
To     Receivers phone number, the number should be specified in international format without the +.
Flash     If you set this value to yes, the message will appear directly on the phone display without asking for open it up (if supported by mobile phone)
Alphabet     Specify the character SET used in the SMS text:

ISO LATIN ANSI: 8 Bit character set, MAX 160 Characters with autosplit *DEFAULT VALUE
GSM: 7 bit character set refer to GSM specification MAX 160 Characters with autosplit
UCS: UCS2 character set MAX 70 Characters with autosplit
BINARY: 8 bit binary data, no text (ringtones and data trasmission)

SMSC     Phone number of the SMSC
Report     Control if a status report is requested for the message, boolean value (yes/no) DEFAULT is NO
Autosplit     Control how to split messages usefull only for text messages, binary split is NOT

SUPPORTED:

0 disabled
1 enabled, no part-numbers
2 enabled, text numbers

RECEIVED SMS MESSAGES (Incoming)

From     Sender phone number
From_SMSC     The SMSC that sent the message
Subject     The logical name of the modem that received the message (DEFAULT GSM1)
Sent     Time when message was sent
Received     Time when the message was received by SMS FoxBox


You can use custom header lines for your applications. If the Software finds unknown headers will simply skip it.
An example of received message is:


From: 3934947032XX
From_SMSC: 39565258552585
Sent: 06-10-04 23:26:23
Received: 06-10-04 23:26:29
Subject: GSM1
Alphabet: ISO

This is an incoming text message.



An example of outgoing SMS is:

From: SMSFoxBox
To: 3934947XXX
Alphabet: ISO

Text of the short message

5.0 SMS engine configuration


As shown in  (Rif2.1.1 Control Panel), by clicking  on “SMS engine” you’ll get access to the configuration panel of the core engine for incoming/outgoing SMS.
Here you can configure some priority settings:

incoming= <n> Enables the SMS receiving capability
0 Disabled
1 Enabled
2 Enabled with Maximum priority to incoming messages

5.0.1 LOG LEVEL (Verbosity)
loglevel = <value>
This gives you control to the log verbosity, the supported range is from 0 till 7 the defualt verbosity is 5.

5.0.2 Messages Autosplit
Autosplit=<value>  the range supported is 0,1,2 o 3 it controls how messages longer then 160 char are splitted
0    disabled
1    enabled, no part-number
2    enabled, text numbers
3    enabled, concatenated format (not supported by some phones)

Blocktime=<seconds>
If the modem hags, it sleep fo the time specified

errorsleeptime =<seconds>
If a ERORR occured, the modem sleep for the time specified.

5.0.3 How to enable WHITE/BLACK list
Blacklist= <PATH TO THE LIST>
Whitelist=<PATH TO THE LIST>
This enables Whitelists and blacklists. Please remove comments as described in Rif. #.  WHITELISTe BLACKLIST (2.1.2 Utilities)

5.0.4 Setup of the PIN code of the SIM
#pin = 0000 remove the sharp  # and put you SIM PIN to enable the security code check (this can slow down receiving speed).

6.0 Software functions draft


  Software functions draft

SMS foxbox function draft

SMS foxbox software consists on two main contests:
1-    Core engine
2-    Interface

1- il Core engine

This contest is the BASE system that handles all background processes, event handler and interaction between the OS with the MODEM.
The core engine uses GSM 07.05 (=ETSI TS 300 585) and GSM 03.38 (=ETSI TS 100 900) specifications.

2- Interface

The User interface is completely WEB BASED, as described in the fitrst chapter you have to use a browser with XSL parsing capabilities, for a correct use we suggest you Mozilla Firefox available on http://www.mozilla.com