SMS Server Tools 3
This site is hosted by Kekekasvi.com
 Menu
Basic information:
Additional information:
Support:
Get SMS Server Tools 3:
Additional Options

 Sponsored links

 Search
Custom Search

 Visitor locations
 
 SMS Server Tools 3 Community
Welcome, Guest. Please login or register. Mon Sep 28, 2020 20:55
SMSTools3 Community » Help and support Bottom

Cannot decode PDU

Login and Post Reply

Page:  1

Author Post
Member
Registered:
May 2020
Location: Bandung, Indonesia
Operating system name and version: Window 10 64Bit
Version of smsd: 3.1.21
Smsd installed from: sources
Name and model of a modem / phone: EC200T Mini PCI-E
Interface:USB

I'm facing issue when read SMS using this modem, with the message below:

Error: Cannot decode PDU, see text part for details.
From:
From_TOA: 18 international, national
Received: 20-05-15 05:29:34
Subject: GSM1
Modem: GSM1
IMSI: 510101562507905
IMEI: 867881043595334
Report: no
Alphabet: ISO
Length: 479
UDH: no
PDU: 06912618014000040d91261823602316f000000250515082548204c820f309
Pos: ....-....*....-.^^~here(17)

First tried with PDU mode new (with CSA):
PDU ERROR: Position 17,2: Invalid sender address length: "0d"

Next tried with PDU mode old (without CSA):
PDU ERROR: Position 7,2: Missing bit 7 in recipient address type: "18"

No success. This PDU cannot be decoded. There is something wrong

Could you help this problem?

This is log info


Any help greatly apreciated.

Thanks

Administrator
Registered:
May 2009
Location: Jyväskylä, Finland
Please apply this patch:

Edit the pdu.c and search for "memory reading".

Add those three highlighted lines as shown:

  char tmp_udh_type[SIZE_UDH_TYPE] = {};
  char *udh_data;
  char *udh_type;

  udh_data = (a_udh_data)? a_udh_data : tmp_udh_data;
  udh_type = (a_udh_type)? a_udh_type : tmp_udh_type;

  // Patch for modems which give hexadecimal with lowercase letters:
  for (i = 0; pdu[i]; i++)
    pdu[i] = toupper((int)pdu[i]);

  // Patch for Wavecom SR memory reading:
  if (strncmp(pdu, "000000FF00", 10) == 0)
  {
    strcpyo(pdu, pdu +8);
    while (strlen(pdu) < 52)
 
'c' Syntax Highlight powered by GeSHi


Then save, recompile and test.

Member
Registered:
May 2020
Location: Bandung, Indonesia
Topic owner
Hi keke...

It's done. Nice. :)

Thank you for your time and valuable feedback.

Login and Post Reply

Page:  1

SMSTools3 Community » Help and support Top

 
Time in this board is UTC.  

Privacy Policy   SMS Server Tools 3 Copyright © Keijo Kasvi.