--- Begin Message ---
Stone Zhang wrote:
> Hi,
>
> I had a problem when I tired to send a WAP push SI via Nokia premicell. I
> got the following message from bearerbox
>
> 2002-03-05 11:45:51 [14] DEBUG: boxc_receiver: got sms from wapbox
> 2002-03-05 11:45:52 [5] DEBUG: international starting with + (+447939751015)
> 2002-03-05 11:45:52 [5] DEBUG: TP-Validity-Period: 24.0 hours
> 2002-03-05 11:45:52 [5] DEBUG: AT2[/dev/ttyS1]: --> AT+CMGS=115^M
> 2002-03-05 11:45:52 [5] DEBUG: AT2[/dev/ttyS1]: <-- >
> 2002-03-05 11:45:52 [5] DEBUG: send command status: 1
> 2002-03-05 11:45:52 [5] DEBUG: AT2[/dev/ttyS1]: -->
> 51000C914497935701510008A7650605040B8423F0040617AE966C6F63616C686F73743A3830
> 383000AF808DC4B48002056A0045C60C033139322E3136382E392E342F6D6964702E776D6C00
> 110331406F6E65326F6E652E636F6D00080AC30620010225152010C304201012300103570001
> 01
> 2002-03-05 11:45:52 [5] DEBUG: AT2[/dev/ttyS1]: --> ^Z
> 2002-03-05 11:45:52 [5] DEBUG: AT2[/dev/ttyS1]: <-- >
> 2002-03-05 11:45:52 [5] DEBUG: AT2[/dev/ttyS1]: <-- ERROR
Looking at that PDU, I can see some problems right off the bat.
The DCS is set to 8, which is a UCS2 message -- it should be 4 or 245
for WDP.
Since it's a Unicode message, I think the premicell is expecting the
length field (101 here) to be divisible by 2, and is rejecting this
message because of the above DCS bug. It is also worth noting that at
least my Premicell corrupts Unicode messages badly, turning a '0061'
('a') into '0021' ('!') and a '@' into a NUL. (That last one can have
some fairly spectacular results when feed to software.) It is very
unlikely that the destination MS would be able to do much with the
message even if it were delivered.
For CIMD2, there is also the problem that "global-sender" MUST be set
for the PPG to work. Otherwise, it will try to set a source address of
(in my case) "0.0.0.0", which makes smsc_cimd2 complain and drop the
message. Something similar was needed for SMPP, too.
Should I send in a patch to address this? I've hacked my Kannel to set
DCS 4 on WDP/SMS messages and truncate invalid source addresses, which
actually works. It *might* even fix this problem, although the Premicell
is *very* buggy.
Any takers? And do later firmware revisions for the Premicell a) exist
and b) fix the problems?
David WHITE
CONNECT AUSTRIA
--- End Message ---