Commit Graph

6 Commits

Author SHA1 Message Date
Pau Espin 58f9395711 sms: Fix sms send for qmi modems not returning TP-MR
Gobi 2000 doesn't provide the QMI_WMS_RESULT_MESSAGE_ID field. As a
result, delivery is resolved as failed and it tries to retransmit it
again and again. From user point of view, a message is sent but the
message is received 4 times.

ofonod[6370]: drivers/qmimodem/qmibridge.c:ask_qmi() READ: QMI QMUX:
QMI   length  = 19
QMI   flags   = 0x80
QMI   service = "wms"
QMI   client  = 1
QMI QMI:
QMI   flags       = "response"
QMI   transaction = 293
QMI   tlv_length  = 7
QMI   message     = "Raw Send" (0x0020)
QMI TLV:
QMI   type       = "Result" (0x02)
QMI   length     = 4
QMI   value      = 00:00:00:00
QMI   translated = SUCCESS
2018-02-23 13:45:41 +01:00
Jonas Bonn 35636752ad qmi: support SMS receive on Quectel EC21
The Quectel EC21 does not provide the SMS PDU on the message event
notification.

This patch adds a call to 'raw read' on the message ID from the event
notification if the event notification does not already contain the
message data.

The message data begins with the SMSC length, type, and address so
the TPDU length is adjusted accordingly in the raw_read callback.  This
differs from the way the raw message data is handled in the case
that it is included in the event notification itself.  As I don't have
access to any other QMI modem at this time, I'm can not confirm that
this difference is reasonable.
2017-10-17 09:35:02 -05:00
Alexander Couzens fb17995721 qmi/sms: require WMS version >= 1.2 for bearer calls
I've never seen a major 0 service. The gobi2000 comes with
WMS 1.0 and doesn't support the bearer command. Guessing
it's 1.2 required.
2017-08-22 10:38:14 -05:00
Alexander Couzens 417af0eaf2 qmimodem/sms: don't check for free ME space on receive
If the ME storage is full, the modem will reject new messages
with a SMPP RP-Error 'Protocol error, unspecific'.
It seems the qmimodem is first checking the ME storage for
free space, then deliver the SMS via QMI and not saving it
to the ME anyway.
Using QMI_WMS_STORAGE_TYPE_NONE it doesn't check for free space.

Tested-on: Quectel EC20
2017-05-30 17:31:25 -05:00
Marcel Holtmann dd3db6f6bd qmimodem: Avoid shadowing length parameter 2012-07-15 20:16:59 -03:00
Marcel Holtmann 8c590a85c2 qmimodem: Add support for SMS handling 2012-06-22 13:20:11 -07:00