I've looked through the AT commands of a couple of gsm modems and none of them support this AT+CMMS. Only the Nokia phones do and you can't conceivably run a commercial service on a consumer piece of hardware :/ very frustrating.
I found an updated firmware for my modem:- http://embedded-inet.com/download/index.htm but sadly this update doesn't include cmms. So from the looks of it using AT+CNMI without sim-buffering or keepalive and a decent gsm modem is the best way forward. I looked at the siemens manual for CNMI I was wondering why mode 1 is used :- <mode> 0 Buffer unsolicited result codes in the TA. If TA result code buffer is full, indications can be buffered in some other place or the oldest indications may be discarded and replaced with the new received indications. 1 Discard indication and reject new received message unsolicited result codes when TA-TE link is reserved (e.g. in on-line data mode). Otherwise forward them directly to the TE. 2 Buffer unsolicited result codes in the TA when TA-TE link is reserved (e.g. in on-line data mode) and flush them to the TE after reservation. Otherwise forward them directly to the TE. 3 Forward unsolicited result codes directly to the TE. TA-TE link specific inband technique used to embed result codes and data when TA is in on-line data mode. Thanks for all your help guys, now I just need to find a hosting that will allow me to put a gsm modem in. I might have to do a full "co-location" where you put your own server in. G.