ok, so Kannel does not support "string table" creation in the OTA compiler
module. The string table defines specific "own tokens" that are not pre-defined
from any specs, but create a sort of "shortcode" for literal strings.

See attached a sample XML, then the corresponding WBXML output of libwxml's
xml2wbxml WITH string table crating, WITHOUT string table creation and Kannel's
test_ota output.

In addition hexdump -C output of all 3 variants are included.

What we see is that Kannel's OTA compiler produces a 919 byte block, the
libwbxml creates 710 bytes even with no string table usage, and 601 bytes with
string table use.

So this is a 30% gap between the best and worst :/

We need to do something here. Anyone willing to pick up the item and go into the
deeps of the gw/ota_compiler.c module for it?

Stipe

-- 
-------------------------------------------------------------------
Kölner Landstrasse 419
40589 Düsseldorf, NRW, Germany

tolj.org system architecture      Kannel Software Foundation (KSF)
http://www.tolj.org/              http://www.kannel.org/

mailto:st_{at}_tolj.org           mailto:stolj_{at}_kannel.org
-------------------------------------------------------------------
00000000  03 0b 6a 52 57 4c 41 4e  00 50 52 4f 56 00 73 69  |..jRWLAN.PROV.si|
00000010  70 72 65 66 00 43 4f 44  45 43 00 4d 45 44 49 41  |pref.CODEC.MEDIA|
00000020  53 55 42 54 59 50 45 00  50 52 49 4f 52 49 54 59  |SUBTYPE.PRIORITY|
00000030  49 4e 44 45 58 00 61 75  74 68 6e 61 6d 65 00 61  |INDEX.authname.a|
00000040  75 74 68 73 65 63 72 65  74 00 66 6f 6f 2e 62 61  |uthsecret.foo.ba|
00000050  72 2e 63 6f 6d 00 c5 45  03 31 2e 31 00 01 c6 55  |r.com..E.1.1...U|
00000060  01 87 07 06 03 41 50 00  01 87 11 06 03 41 50 00  |.....AP......AP.|
00000070  01 87 00 01 38 00 00 06  03 41 50 00 01 87 10 06  |....8....AP.....|
00000080  83 00 01 c6 50 83 00 01  87 05 03 50 52 49 2d 53  |....P......PRI-S|
00000090  53 49 44 00 06 03 41 50  00 01 87 05 03 4e 45 54  |SID...AP.....NET|
000000a0  4d 4f 44 45 00 06 03 49  4e 46 52 41 00 01 01 01  |MODE...INFRA....|
000000b0  c6 00 01 55 01 87 36 00  00 06 03 77 39 30 31 33  |...U..6....w9013|
000000c0  00 01 87 00 01 38 00 00  06 83 05 01 87 07 06 83  |.....8..........|
000000d0  05 01 87 05 03 54 4f 2d  41 50 50 52 45 46 00 06  |.....TO-APPREF..|
000000e0  83 0a 01 87 05 03 55 41  48 53 54 52 49 4e 47 00  |......UAHSTRING.|
000000f0  06 03 48 65 6c 6c 6f 21  00 01 c6 50 83 11 01 87  |..Hello!...P....|
00000100  05 83 17 06 03 33 00 01  87 05 83 24 06 03 30 00  |.....3.....$..0.|
00000110  01 01 c6 50 83 11 01 87  05 83 17 06 03 30 00 01  |...P.........0..|
00000120  87 05 83 24 06 03 31 00  01 01 c6 50 83 11 01 87  |...$..1....P....|
00000130  05 83 17 06 03 34 00 01  87 05 83 24 06 03 32 00  |.....4.....$..2.|
00000140  01 01 01 c6 00 01 55 01  87 36 00 00 06 03 77 39  |......U..6....w9|
00000150  30 31 30 00 01 87 07 06  03 53 6f 6d 65 20 4e 61  |010......Some Na|
00000160  6e 65 00 01 87 05 03 41  50 50 52 45 46 00 06 83  |ne.....APPREF...|
00000170  0a 01 87 00 01 38 00 00  06 83 0a 01 87 05 03 50  |.....8.........P|
00000180  54 59 50 45 00 06 03 49  45 54 46 00 01 87 05 03  |TYPE...IETF.....|
00000190  50 55 49 44 00 06 03 78  78 78 78 78 78 78 78 78  |PUID...xxxxxxxxx|
000001a0  78 20 61 74 20 00 83 46  01 87 22 06 03 41 50 00  |x at ..F.."..AP.|
000001b0  01 87 00 01 37 00 00 06  03 55 44 50 00 01 c6 00  |....7....UDP....|
000001c0  01 56 01 87 34 00 00 06  03 73 69 70 3a 31 30 2e  |.V..4....sip:10.|
000001d0  31 30 2e 31 30 2e 31 00  01 c6 53 01 87 23 06 03  |10.10.1...S..#..|
000001e0  35 30 36 30 00 01 01 01  c6 00 01 57 01 87 31 00  |5060.......W..1.|
000001f0  00 06 83 32 01 87 00 01  32 00 00 06 83 3b 01 87  |...2....2....;..|
00000200  00 01 2f 00 00 06 83 46  01 01 c6 00 01 59 01 87  |../....F.....Y..|
00000210  3a 00 00 06 03 73 69 70  3a 31 30 2e 31 30 2e 31  |:....sip:10.10.1|
00000220  30 2e 31 3a 35 30 36 30  3b 74 72 61 6e 73 70 6f  |0.1:5060;transpo|
00000230  72 74 3d 55 44 50 00 01  87 00 01 31 00 00 06 83  |rt=UDP.....1....|
00000240  32 01 87 00 01 32 00 00  06 83 3b 01 87 00 01 2f  |2....2....;..../|
00000250  00 00 06 83 46 01 01 01  01                       |....F....|
00000259

Attachment: voip.wbxml
Description: Binary data

<?xml version="1.0"?>
<!DOCTYPE wap-provisioningdoc PUBLIC "-//WAPFORUM//DTD PROV 1.0//EN" "
http://www.wapforum.org/DTD/prov.dtd";>
<wap-provisioningdoc version="1.1">

<!-- WLAN Access point settings -->
<characteristic type="NAPDEF">
  <parm name="NAME" value="AP"/>
  <parm name="NAPID" value="AP"/>
  <parm name="PROVIDER-ID" value="AP"/>
  <parm name="BEARER" value="WLAN"/>
  <characteristic type="WLAN">
   <parm name="PRI-SSID" value="AP"/>
   <parm name="NETMODE" value="INFRA"/>
  </characteristic>
 </characteristic>
<!-- WLAN Access point settings end -->

<!-- VoIP profile settings -->
<characteristic type="APPLICATION">
  <parm name="APPID" value="w9013"/>
  <parm name="PROVIDER-ID" value="PROV"/>
  <parm name="NAME" value="PROV"/>
  <parm name="TO-APPREF" value="sipref"/>
  <parm name="UAHSTRING" value="Hello!"/>
  <characteristic type="CODEC">
   <parm name="MEDIASUBTYPE" value="3"/>
   <parm name="PRIORITYINDEX" value="0"/>
  </characteristic>
  <characteristic type="CODEC">
   <parm name="MEDIASUBTYPE" value="0"/>
   <parm name="PRIORITYINDEX" value="1"/>
  </characteristic>
  <characteristic type="CODEC">
   <parm name="MEDIASUBTYPE" value="4"/>
   <parm name="PRIORITYINDEX" value="2"/>
  </characteristic>
 </characteristic>
<!-- VoIP profile settings end -->

<!-- SIP profile settings end -->
<characteristic type="APPLICATION">
  <parm name="APPID" value="w9010"/>
  <parm name="NAME" value="Some Nane"/>
  <parm name="APPREF" value="sipref"/>
  <parm name="PROVIDER-ID" value="sipref"/>
  <parm name="PTYPE" value="IETF"/>
  <parm name="PUID" value="xxxxxxxxxx at foo.bar.com"/>
  <parm name="TO-NAPID" value="AP"/>
  <parm name="APROTOCOL" value="UDP"/>
  <characteristic type="APPADDR">
   <parm name="ADDR" value="sip:10.10.10.1"/>
   <characteristic type="PORT">
    <parm name="PORTNBR" value="5060"/>
   </characteristic>
  </characteristic>
  <characteristic type="APPAUTH">
    <parm name="AAUTHNAME" value="authname"/>
    <parm name="AAUTHSECRET" value="authsecret"/>
    <parm name="AAUTHDATA" value="foo.bar.com"/>
  </characteristic>
  <characteristic type="RESOURCE">
    <parm name="URI" value="sip:10.10.10.1:5060;transport=UDP"/>
    <parm name="AAUTHNAME" value="authname"/>
    <parm name="AAUTHSECRET" value="authsecret"/>
    <parm name="AAUTHDATA" value="foo.bar.com"/>
  </characteristic>
 </characteristic>
<!-- SIP profile settings end -->

</wap-provisioningdoc>
00000000  03 0b 6a 00 c5 45 03 31  2e 31 00 01 c6 50 03 4e  |..j..E.1.1...P.N|
00000010  41 50 44 45 46 00 01 87  05 03 4e 41 4d 45 00 06  |APDEF.....NAME..|
00000020  03 41 50 00 01 87 05 03  4e 41 50 49 44 00 06 03  |.AP.....NAPID...|
00000030  41 50 00 01 87 05 03 50  52 4f 56 49 44 45 52 2d  |AP.....PROVIDER-|
00000040  49 44 00 06 03 41 50 00  01 87 05 03 42 45 41 52  |ID...AP.....BEAR|
00000050  45 52 00 06 03 57 4c 41  4e 00 01 c6 50 03 57 4c  |ER...WLAN...P.WL|
00000060  41 4e 00 01 87 05 03 50  52 49 2d 53 53 49 44 00  |AN.....PRI-SSID.|
00000070  06 03 41 50 00 01 87 05  03 4e 45 54 4d 4f 44 45  |..AP.....NETMODE|
00000080  00 06 03 49 4e 46 52 41  00 01 01 01 c6 50 03 41  |...INFRA.....P.A|
00000090  50 50 4c 49 43 41 54 49  4f 4e 00 01 87 05 03 41  |PPLICATION.....A|
000000a0  50 50 49 44 00 06 03 77  39 30 31 33 00 01 87 05  |PPID...w9013....|
000000b0  03 50 52 4f 56 49 44 45  52 2d 49 44 00 06 03 50  |.PROVIDER-ID...P|
000000c0  52 4f 56 00 01 87 05 03  4e 41 4d 45 00 06 03 50  |ROV.....NAME...P|
000000d0  52 4f 56 00 01 87 05 03  54 4f 2d 41 50 50 52 45  |ROV.....TO-APPRE|
000000e0  46 00 06 03 73 69 70 72  65 66 00 01 87 05 03 55  |F...sipref.....U|
000000f0  41 48 53 54 52 49 4e 47  00 06 03 48 65 6c 6c 6f  |AHSTRING...Hello|
00000100  21 00 01 c6 50 03 43 4f  44 45 43 00 01 87 05 03  |!...P.CODEC.....|
00000110  4d 45 44 49 41 53 55 42  54 59 50 45 00 06 03 33  |MEDIASUBTYPE...3|
00000120  00 01 87 05 03 50 52 49  4f 52 49 54 59 49 4e 44  |.....PRIORITYIND|
00000130  45 58 00 06 03 30 00 01  01 c6 50 03 43 4f 44 45  |EX...0....P.CODE|
00000140  43 00 01 87 05 03 4d 45  44 49 41 53 55 42 54 59  |C.....MEDIASUBTY|
00000150  50 45 00 06 03 30 00 01  87 05 03 50 52 49 4f 52  |PE...0.....PRIOR|
00000160  49 54 59 49 4e 44 45 58  00 06 03 31 00 01 01 c6  |ITYINDEX...1....|
00000170  50 03 43 4f 44 45 43 00  01 87 05 03 4d 45 44 49  |P.CODEC.....MEDI|
00000180  41 53 55 42 54 59 50 45  00 06 03 34 00 01 87 05  |ASUBTYPE...4....|
00000190  03 50 52 49 4f 52 49 54  59 49 4e 44 45 58 00 06  |.PRIORITYINDEX..|
000001a0  03 32 00 01 01 01 c6 50  03 41 50 50 4c 49 43 41  |.2.....P.APPLICA|
000001b0  54 49 4f 4e 00 01 87 05  03 41 50 50 49 44 00 06  |TION.....APPID..|
000001c0  03 77 39 30 31 30 00 01  87 05 03 4e 41 4d 45 00  |.w9010.....NAME.|
000001d0  06 03 53 6f 6d 65 20 4e  61 6e 65 00 01 87 05 03  |..Some Nane.....|
000001e0  41 50 50 52 45 46 00 06  03 73 69 70 72 65 66 00  |APPREF...sipref.|
000001f0  01 87 05 03 50 52 4f 56  49 44 45 52 2d 49 44 00  |....PROVIDER-ID.|
00000200  06 03 73 69 70 72 65 66  00 01 87 05 03 50 54 59  |..sipref.....PTY|
00000210  50 45 00 06 03 49 45 54  46 00 01 87 05 03 50 55  |PE...IETF.....PU|
00000220  49 44 00 06 03 78 78 78  78 78 78 78 78 78 78 20  |ID...xxxxxxxxxx |
00000230  61 74 20 66 6f 6f 2e 62  61 72 2e 63 6f 6d 00 01  |at foo.bar.com..|
00000240  87 05 03 54 4f 2d 4e 41  50 49 44 00 06 03 41 50  |...TO-NAPID...AP|
00000250  00 01 87 05 03 41 50 52  4f 54 4f 43 4f 4c 00 06  |.....APROTOCOL..|
00000260  03 55 44 50 00 01 c6 50  03 41 50 50 41 44 44 52  |.UDP...P.APPADDR|
00000270  00 01 87 05 03 41 44 44  52 00 06 03 73 69 70 3a  |.....ADDR...sip:|
00000280  31 30 2e 31 30 2e 31 30  2e 31 00 01 c6 50 03 50  |10.10.10.1...P.P|
00000290  4f 52 54 00 01 87 05 03  50 4f 52 54 4e 42 52 00  |ORT.....PORTNBR.|
000002a0  06 03 35 30 36 30 00 01  01 01 c6 50 03 41 50 50  |..5060.....P.APP|
000002b0  41 55 54 48 00 01 87 05  03 41 41 55 54 48 4e 41  |AUTH.....AAUTHNA|
000002c0  4d 45 00 06 03 61 75 74  68 6e 61 6d 65 00 01 87  |ME...authname...|
000002d0  05 03 41 41 55 54 48 53  45 43 52 45 54 00 06 03  |..AAUTHSECRET...|
000002e0  61 75 74 68 73 65 63 72  65 74 00 01 87 05 03 41  |authsecret.....A|
000002f0  41 55 54 48 44 41 54 41  00 06 03 66 6f 6f 2e 62  |AUTHDATA...foo.b|
00000300  61 72 2e 63 6f 6d 00 01  01 c6 50 03 52 45 53 4f  |ar.com....P.RESO|
00000310  55 52 43 45 00 01 87 05  03 55 52 49 00 06 03 73  |URCE.....URI...s|
00000320  69 70 3a 31 30 2e 31 30  2e 31 30 2e 31 3a 35 30  |ip:10.10.10.1:50|
00000330  36 30 3b 74 72 61 6e 73  70 6f 72 74 3d 55 44 50  |60;transport=UDP|
00000340  00 01 87 05 03 41 41 55  54 48 4e 41 4d 45 00 06  |.....AAUTHNAME..|
00000350  03 61 75 74 68 6e 61 6d  65 00 01 87 05 03 41 41  |.authname.....AA|
00000360  55 54 48 53 45 43 52 45  54 00 06 03 61 75 74 68  |UTHSECRET...auth|
00000370  73 65 63 72 65 74 00 01  87 05 03 41 41 55 54 48  |secret.....AAUTH|
00000380  44 41 54 41 00 06 03 66  6f 6f 2e 62 61 72 2e 63  |DATA...foo.bar.c|
00000390  6f 6d 00 01 01 01 01                              |om.....|
00000397

Attachment: voip-kannel.wbxml
Description: Binary data

00000000  03 0b 6a 00 c5 45 03 31  2e 31 00 01 c6 55 01 87  |..j..E.1.1...U..|
00000010  07 06 03 41 50 00 01 87  11 06 03 41 50 00 01 87  |...AP......AP...|
00000020  00 01 38 00 00 06 03 41  50 00 01 87 10 06 03 57  |..8....AP......W|
00000030  4c 41 4e 00 01 c6 50 03  57 4c 41 4e 00 01 87 05  |LAN...P.WLAN....|
00000040  03 50 52 49 2d 53 53 49  44 00 06 03 41 50 00 01  |.PRI-SSID...AP..|
00000050  87 05 03 4e 45 54 4d 4f  44 45 00 06 03 49 4e 46  |...NETMODE...INF|
00000060  52 41 00 01 01 01 c6 00  01 55 01 87 36 00 00 06  |RA.......U..6...|
00000070  03 77 39 30 31 33 00 01  87 00 01 38 00 00 06 03  |.w9013.....8....|
00000080  50 52 4f 56 00 01 87 07  06 03 50 52 4f 56 00 01  |PROV......PROV..|
00000090  87 05 03 54 4f 2d 41 50  50 52 45 46 00 06 03 73  |...TO-APPREF...s|
000000a0  69 70 72 65 66 00 01 87  05 03 55 41 48 53 54 52  |ipref.....UAHSTR|
000000b0  49 4e 47 00 06 03 48 65  6c 6c 6f 21 00 01 c6 50  |ING...Hello!...P|
000000c0  03 43 4f 44 45 43 00 01  87 05 03 4d 45 44 49 41  |.CODEC.....MEDIA|
000000d0  53 55 42 54 59 50 45 00  06 03 33 00 01 87 05 03  |SUBTYPE...3.....|
000000e0  50 52 49 4f 52 49 54 59  49 4e 44 45 58 00 06 03  |PRIORITYINDEX...|
000000f0  30 00 01 01 c6 50 03 43  4f 44 45 43 00 01 87 05  |0....P.CODEC....|
00000100  03 4d 45 44 49 41 53 55  42 54 59 50 45 00 06 03  |.MEDIASUBTYPE...|
00000110  30 00 01 87 05 03 50 52  49 4f 52 49 54 59 49 4e  |0.....PRIORITYIN|
00000120  44 45 58 00 06 03 31 00  01 01 c6 50 03 43 4f 44  |DEX...1....P.COD|
00000130  45 43 00 01 87 05 03 4d  45 44 49 41 53 55 42 54  |EC.....MEDIASUBT|
00000140  59 50 45 00 06 03 34 00  01 87 05 03 50 52 49 4f  |YPE...4.....PRIO|
00000150  52 49 54 59 49 4e 44 45  58 00 06 03 32 00 01 01  |RITYINDEX...2...|
00000160  01 c6 00 01 55 01 87 36  00 00 06 03 77 39 30 31  |....U..6....w901|
00000170  30 00 01 87 07 06 03 53  6f 6d 65 20 4e 61 6e 65  |0......Some Nane|
00000180  00 01 87 05 03 41 50 50  52 45 46 00 06 03 73 69  |.....APPREF...si|
00000190  70 72 65 66 00 01 87 00  01 38 00 00 06 03 73 69  |pref.....8....si|
000001a0  70 72 65 66 00 01 87 05  03 50 54 59 50 45 00 06  |pref.....PTYPE..|
000001b0  03 49 45 54 46 00 01 87  05 03 50 55 49 44 00 06  |.IETF.....PUID..|
000001c0  03 78 78 78 78 78 78 78  78 78 78 20 61 74 20 66  |.xxxxxxxxxx at f|
000001d0  6f 6f 2e 62 61 72 2e 63  6f 6d 00 01 87 22 06 03  |oo.bar.com..."..|
000001e0  41 50 00 01 87 00 01 37  00 00 06 03 55 44 50 00  |AP.....7....UDP.|
000001f0  01 c6 00 01 56 01 87 34  00 00 06 03 73 69 70 3a  |....V..4....sip:|
00000200  31 30 2e 31 30 2e 31 30  2e 31 00 01 c6 53 01 87  |10.10.10.1...S..|
00000210  23 06 03 35 30 36 30 00  01 01 01 c6 00 01 57 01  |#..5060.......W.|
00000220  87 31 00 00 06 03 61 75  74 68 6e 61 6d 65 00 01  |.1....authname..|
00000230  87 00 01 32 00 00 06 03  61 75 74 68 73 65 63 72  |...2....authsecr|
00000240  65 74 00 01 87 00 01 2f  00 00 06 03 66 6f 6f 2e  |et...../....foo.|
00000250  62 61 72 2e 63 6f 6d 00  01 01 c6 00 01 59 01 87  |bar.com......Y..|
00000260  3a 00 00 06 03 73 69 70  3a 31 30 2e 31 30 2e 31  |:....sip:10.10.1|
00000270  30 2e 31 3a 35 30 36 30  3b 74 72 61 6e 73 70 6f  |0.1:5060;transpo|
00000280  72 74 3d 55 44 50 00 01  87 00 01 31 00 00 06 03  |rt=UDP.....1....|
00000290  61 75 74 68 6e 61 6d 65  00 01 87 00 01 32 00 00  |authname.....2..|
000002a0  06 03 61 75 74 68 73 65  63 72 65 74 00 01 87 00  |..authsecret....|
000002b0  01 2f 00 00 06 03 66 6f  6f 2e 62 61 72 2e 63 6f  |./....foo.bar.co|
000002c0  6d 00 01 01 01 01                                 |m.....|
000002c6

Attachment: voip-no-st.wbxml
Description: Binary data

Reply via email to