Greetings all. 

I'm using a MultiTech MTCBA-C1, which hasn't worked with unmodified SMSLib 
3.5.2, and I want to discuss the changes I have made/will be making to 
support this model. Hopefully you can give me some feedback, and if my 
proposed changes are acceptable I will submit a patch when I'm done.

The MTCBA-C1 does not support the PDU protocol, nor does it support the 
command to change or query the protocol (AT+CMGF), which presented a 
problem for SMSLib. It also uses memory area "MT" instead of the default 
"MS". 

To get sending SMS working I introduced a new ATHandler 
implementation, ATHandler_MultiTech_MTCBA_C1. This handler basically 
provides a no-op implementation of setTextProtocol() and an implementation 
of setPduProtocol() that throws an Exception saying it is unsupported. It 
also changes the memory area to "MT". With this new ATHandler, a 
SerialModemGateway can be constructed with "MultiTech" and "MTCBA_C1" 
manufacturer and model parameters that can send SMS messages.

Receiving is a little trickier. The ModemGateway#readMessagesTEXT() 
implementation does not properly parse the AT+CMGL response. My plan is to 
introduce an abstraction for text protocol AT+CMGL parsing and to allow 
ATHandler implementations to provide their own parsers for the response to 
ATHandler#listMessages(). Alternatively, I may move the abstraction up 
slightly higher and take advantage of the AT+CMGR command in combination 
with the AT+CMGL command, since for my particular device I only get 
timestamps from AT+CMGR, not from AT+CMGL.

Any feedback is appreciated...

-- 
You received this message because you are subscribed to the Google Groups 
"SMSLib Discussion Group" group.
To view this discussion on the web visit 
https://groups.google.com/d/msg/smslib/-/-lWSUmTPNpIJ.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/smslib?hl=en.

Reply via email to