pmarti / python-messaging

Pure python SMS/MMS encoder/decoder
Other
225 stars 115 forks source link

TypeError: int() can't convert non-string with explicit base #16

Closed pdiveris closed 13 years ago

pdiveris commented 13 years ago

Hi

I am getting this error when decoding a PDU:

File "/usr/lib/python2.5/site-packages/python_messaging-0.5.10-py2.5.egg/messaging/utils.py", line 55, in to_array return array('B', [int(pdu[i:i + 2], 16) for i in range(0, len(pdu), 2)])

Any ideas?

Cheers

pmarti commented 13 years ago

Can you provide the PDU so we can create a unittest and see what the problem is?

pdiveris commented 13 years ago

Hi,

I am going to have to close things and sorry to bother you. I am running this on a Nokia N900 with dbus sms handler. It appears that the pdu parameter that the dbus provides isn't a string after all - only found just now.

What the pdu looks like in the handler is this:

dbus.Array([dbus.Byte(4), dbus.Byte(12), dbus.Byte(145), dbus.Byte(68), dbus.Byte(119), dbus.Byte(23), dbus.Byte(6), dbus.Byte(104), dbus.Byte(113), dbus.Byte(0), dbus.Byte(0), dbus.Byte(17), dbus.Byte(144), dbus.Byte(32), dbus.Byte(113), dbus.Byte(132), dbus.Byte(2), dbus.Byte(64), dbus.Byte(4), dbus.Byte(203), dbus.Byte(240), dbus.Byte(58), dbus.Byte(12)], signature=dbus.Signature('y'))

I am trying to understand where the string is. Meanwhile, I'll close this as it's not related to your code. Apologies ;o)

andrewbird commented 13 years ago

looks like it's an array of bytes. if you print as hex and concatenate you get 040c9144771706687100001190207184024004cbf03a0c which looks like a PDU to me