Symbian3/PDK/Source/GUID-266B3FD6-A414-599D-BF31-FF67ADDD4E70.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Fri, 02 Jul 2010 12:51:36 +0100
changeset 11 5072524fcc79
parent 5 f345bda72bc4
child 14 578be2adaf3e
permissions -rw-r--r--
Fixing terminology

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept id="GUID-266B3FD6-A414-599D-BF31-FF67ADDD4E70" xml:lang="en"><title>SMS
Stack Configuration for Class 0 Messages</title><shortdesc>This section describes how Class 0 SMS messages are handled in
Symbian platform. </shortdesc><prolog><metadata><keywords/></metadata></prolog><conbody>

<section id="GUID-73942F43-66DA-5C58-837D-EBF75CF68254"><title>Introduction</title> <p>According
to the 3GPP specification TS 23.038, a mobile terminated Class 0 SMS message
should be displayed to the user immediately even if there is no memory available
in the Universal Subscriber Identity Module (U)SIM or the phone memory. </p> </section>
<section id="GUID-3E7EA24B-A540-5D98-A77B-53B8C5A6A93F"><title>Class 0 SMS</title> <p><b>Normal
condition </b> </p> <p>The SMS stack receives message segments from the network
through the telephony system plug-in (TSY). The received segments are acknowledged
and passed to the reassembly store to assemble all the received segments.
The message is then forwarded to the clients. The reassembly store is a permanent
file store and the message segments are stored as streams. </p> <p><b>Out of disk condition </b> </p> <p>When sufficient disk space is not available
the SMS stack is unable to reassemble the message segments and pass them to
the clients due to lack of memory. A pre-allocated memory, which can be configured,
is available for handling the class 0 SMS . </p> <p><b>Pre - allocated memory </b> </p> <p>When this feature is configured a
separate memory is available for handling the Class 0 SMS messages when sufficient
disk space is not available. This can be enabled by adding a <codeph>ReassemblyStore</codeph> section
in the <codeph>.esk</codeph> file. The pre-allocated memory is created during
the phone boot time and hence it is always created. </p> </section>
<section id="GUID-2F30F88B-1BBA-403E-8E29-21BFE729E6D5"><title>Configuring the SMS stack</title> <p>The <codeph>.esk</codeph> file
is used to customise the SMS stack to handle Class 0 SMS messages. The following
section should be added to allocate a separate memory for the Class 0 SMS
in out of disk situations. The reserve memory is allocated by the SMS stack. </p> <codeblock id="GUID-AA2A2F3A-6D49-5460-9591-B5AC548A6B88" xml:space="preserve">
[ReassemblyStore]

Class0=1

MaxClass0Messages= 10

NumberOfPDUsegments= 20

GuardTimeOut= 12
</codeblock> <p><b>ESK
configuration fields</b> </p> <p><b>Class0 </b> </p> <p>This field must be set to 1 to enable the SMS stack
to allocate reserve memory. When the Class 0 field is set to 0 or is not configured,
Class 0 SMS messages are handled as normal SMS by the SMS stack. </p> <p>When
Class0 is set to 1 and other fields are not configured the default values,
configured above, are used by the SMS stack. </p> <p> <i>Note: The following
fields are optional</i>. </p> <p><b>MaxClass0Messages </b> </p> <p>This field stores an integer value to specify
the maximum number of Class 0 messages to be stored. The default value is
10. </p> <p><b>NumberOfPDUSegments </b> </p> <p>This field stores an integer value to
specify the number of PDU segments that can be stored in the reserve memory.
The default value is 20. </p> <p><b>GuardTime </b> </p> <p>This field stores a value that specifies the time
that the SMS stack must wait for a message to be completely received before
forwarding the message to clients. The default value is 12 hours. If all the
segments of the SMS are received then the SMS is forwarded to the messaging
clients before the guard time expires. </p> </section>
<section id="GUID-0288C480-9EE4-4218-8B08-93B220883690"><title>SMS stack behaviour</title> <p>The SMS stack receives and
processes SMS messages from the TSY. If the received message is a Class 0
SMS and if sufficient memory is available the stack attempts to store the
message in the permanent store. If sufficient memory is not available, and
the stack is configured to handle Class 0 messages in out of disk conditions,
it uses the pre-allocated reserve memory to reassemble the segments. </p> <p><b>Maximum number of segments exceeded </b> </p> <p>The stack waits to receive
all segments of the Class 0 SMS. The maximum number of segments depends on
the value specified in the <codeph>NumberOfPDUSegments</codeph> field. If
the stack exceeds the maximum level it reassembles the partial message and
forwards it to the clients. If the maximum number of segments is not exceeded
then the stack waits for the duration of the guard period specified in the <filepath>.esk</filepath> file.
If the duration expires then a partial message is reassembled and forwarded
to the clients. </p> <p><b>Maximum number of messages exceeded </b> </p> <p>When the stack receives
a Class 0 SMS after it has reached the configured number of messages, it reassembles
the oldest incomplete message and forwards it to the client. </p> <p><b>Type 0 SMS </b> </p> <p>Type 0 messages are generally positively acknowledged
and discarded. Class 0 Type 0 message are handled as explained above both
in normal and out of disk conditions. All other Type 0 messages are handled
as non class 0 messages. </p> <p><b>WAP class 0 messages over SMS bearer </b> </p> <p>The Class 0 messages
that contain WAP datagram are handled as non class 0 messages. </p> </section>
</conbody></concept>