39 of SMS message. If it is a Class 0 SMS message, the NBS watcher passes the |
39 of SMS message. If it is a Class 0 SMS message, the NBS watcher passes the |
40 message to the Class 0 plug-in. The Class 0 plug-in immediately notifies a |
40 message to the Class 0 plug-in. The Class 0 plug-in immediately notifies a |
41 UI notifier plug-in which displays the content of the Class 0 SMS message |
41 UI notifier plug-in which displays the content of the Class 0 SMS message |
42 on the UI without storing it in the message store (SMS service Inbox). </p> <fig id="GUID-9768EB50-2605-5181-AB53-7376A4B82272"> |
42 on the UI without storing it in the message store (SMS service Inbox). </p> <fig id="GUID-9768EB50-2605-5181-AB53-7376A4B82272"> |
43 <title> Architecture of the Class 0 plug-in </title> |
43 <title> Architecture of the Class 0 plug-in </title> |
44 <image href="GUID-EC6C21FB-16E1-57FA-B995-8B0F34B6588A_d0e477912_href.png" placement="inline"/> |
44 <image href="GUID-EC6C21FB-16E1-57FA-B995-8B0F34B6588A_d0e498958_href.png" placement="inline"/> |
45 </fig> <dl> |
45 </fig> <dl> |
46 <dlentry> |
46 <dlentry> |
47 <dt>SMS stack</dt> |
47 <dt>SMS stack</dt> |
48 <dd><p>SMS Stack sends and receives SMS on GSM networks. </p> </dd> |
48 <dd><p>SMS Stack sends and receives SMS on GSM networks. </p> </dd> |
49 </dlentry> |
49 </dlentry> |
62 includes a default implementation of the <codeph>CSmsClass0Base</codeph> plug-in |
62 includes a default implementation of the <codeph>CSmsClass0Base</codeph> plug-in |
63 which can be found in the <filepath>class0sms.dll</filepath> file. </p> <p>However, |
63 which can be found in the <filepath>class0sms.dll</filepath> file. </p> <p>However, |
64 licensees can override it by writing a new ECom plug-in using the <xref href="GUID-93BFA177-A165-3955-A5BC-D7D35C5EFE49.dita"><apiname>CSmsClass0Base</apiname></xref> exported |
64 licensees can override it by writing a new ECom plug-in using the <xref href="GUID-93BFA177-A165-3955-A5BC-D7D35C5EFE49.dita"><apiname>CSmsClass0Base</apiname></xref> exported |
65 class. For instructions on writing a new ECom plug-in, see the <xref href="GUID-9E92EE30-F2E2-5F28-BB2A-391C09EC69D2.dita">ECom</xref> guide. </p> <fig id="GUID-89F37A8E-78B2-5BEE-A066-90A186687FCA"> |
65 class. For instructions on writing a new ECom plug-in, see the <xref href="GUID-9E92EE30-F2E2-5F28-BB2A-391C09EC69D2.dita">ECom</xref> guide. </p> <fig id="GUID-89F37A8E-78B2-5BEE-A066-90A186687FCA"> |
66 <title> Class diagram </title> |
66 <title> Class diagram </title> |
67 <image href="GUID-B479BE8B-5CAD-57C2-9E21-DEB9E64E25EE_d0e477987_href.png" placement="inline"/> |
67 <image href="GUID-B479BE8B-5CAD-57C2-9E21-DEB9E64E25EE_d0e499033_href.png" placement="inline"/> |
68 </fig> <p> <codeph>void CClass0Sms::DisplayMessageHandler(TDesC8& aSmsMessage, |
68 </fig> <p> <codeph>void CClass0Sms::DisplayMessageHandler(TDesC8& aSmsMessage, |
69 TBool aIsCompleteMsg)</codeph> </p> <table id="GUID-F3506200-AB0D-56EB-9C18-70E83B818ABA"> |
69 TBool aIsCompleteMsg)</codeph> </p> <table id="GUID-F3506200-AB0D-56EB-9C18-70E83B818ABA"> |
70 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
70 <tgroup cols="2"><colspec colname="col0"/><colspec colname="col1"/> |
71 <tbody> |
71 <tbody> |
72 <row> |
72 <row> |
146 and the Class 0 SMS message in the <xref href="GUID-FB97E0A3-352A-316F-97C6-69E4741A8120.dita"><apiname>TDesC8</apiname></xref> descriptor to |
146 and the Class 0 SMS message in the <xref href="GUID-FB97E0A3-352A-316F-97C6-69E4741A8120.dita"><apiname>TDesC8</apiname></xref> descriptor to |
147 the UI. The <xref href="GUID-FB97E0A3-352A-316F-97C6-69E4741A8120.dita"><apiname>TDesC8</apiname></xref> descriptor must be read at the UI side |
147 the UI. The <xref href="GUID-FB97E0A3-352A-316F-97C6-69E4741A8120.dita"><apiname>TDesC8</apiname></xref> descriptor must be read at the UI side |
148 in the same order; that is, <codeph>TInt aStartPos</codeph>, <codeph>TInt |
148 in the same order; that is, <codeph>TInt aStartPos</codeph>, <codeph>TInt |
149 endPos</codeph>, <xref href="GUID-4B942C06-1BAC-3A21-B3B1-89FB5C51ADA0.dita"><apiname>TBool</apiname></xref> <codeph> aIsLastMessage</codeph>, |
149 endPos</codeph>, <xref href="GUID-4B942C06-1BAC-3A21-B3B1-89FB5C51ADA0.dita"><apiname>TBool</apiname></xref> <codeph> aIsLastMessage</codeph>, |
150 and <xref href="GUID-EA7DEFA4-D4D9-3B2B-86A3-C3FB1A682E61.dita"><apiname>TPtr</apiname></xref> <codeph> aSmsData</codeph>. </p> </section> |
150 and <xref href="GUID-EA7DEFA4-D4D9-3B2B-86A3-C3FB1A682E61.dita"><apiname>TPtr</apiname></xref> <codeph> aSmsData</codeph>. </p> </section> |
151 <section id="GUID-EBBDB3ED-B5BD-580C-8869-BA35DBA64F1F-GENID-1-7-1-17-1-1-6-1-6-1-4-1-2-7"><title>Example</title> <p>The |
151 <section id="GUID-EBBDB3ED-B5BD-580C-8869-BA35DBA64F1F-GENID-1-10-1-18-1-1-6-1-6-1-4-1-2-7"><title>Example</title> <p>The |
152 following example code shows how to write a UI notifier and extract the Class |
152 following example code shows how to write a UI notifier and extract the Class |
153 0 SMS message: </p> <p><b>class0smsUInotifier.h</b> </p> <codeblock id="GUID-88CC9E44-3C8C-522B-83D3-658EEEEE928D" xml:space="preserve">// class0smsUInotifier.h |
153 0 SMS message: </p> <p><b>class0smsUInotifier.h</b> </p> <codeblock id="GUID-88CC9E44-3C8C-522B-83D3-658EEEEE928D" xml:space="preserve">// class0smsUInotifier.h |
154 // |
154 // |
155 // Copyright ©) Symbian Software Ltd 2007. All rights reserved. |
155 // Copyright ©) Symbian Software Ltd 2007. All rights reserved. |
156 // |
156 // |