RE: Receiving and processing MMS messages
"Paul Keogh" <[email protected]>
| Newsgroups | gmane.comp.mobile.kannel.devel |
|---|---|
| Message-ID | <[email protected]> |
> Kannel can capture the MMS notification SMS(es) and route them > to an application via the SMS Box sms service interface. * Is there any info anywhere about how the message is handed from smsbox off to the application? Yes. Look at the SMS services documentation. The smsbox will need to be configured with an SMS service to hand over the message to your application. > Fetch the MMS message identified by the Content-Location MMS > header (this can be either a native HTTP operation or a WAP operation. If WAP, you need a WAP client stack) * Does this mean it's my choice as to whether I want to use normal HTTP or WAP as a transport, or are there certain instances where I'll be forced to use WAP as a transport? Also, when I do an HTTP operation to pull down the content, can I do it over the public internet or would I have to do it through the GPRS connection? HTTP would be by far the easiest. You could do it via WAP, and then you'd need to go through a WAP gateway to translate to a HTTP request. I'm assuming that the MMS is hosted by some kind of HTTP addressable server. You may only need to get into GPRS/WAP if thats the only type of access you have. HTTP over public IP would be the easiest way to go, if permitted. > So you'll have to write some code. All the functionality is there in the > Kannel and MBuni libraries. * If anyone can point me to any useful places in the API where I'll need to reassemble and decode the pdus, pull down WAP content, etc, it would be much appreciated :) In Mbuni, look at mmlib/mms_msg.[ch] and mms_strings.[ch,def] for MMS encode and decode functions. In Kannel, look at gw/wap-appl.c for the WAP to HTTP mapping. Also look references in the Kannel code for sms.udhdata to glean some information about how concatenation UDH works and how you might reverse engineer it into reassembly. Also look at the Kannel gwlib/http.[ch] modules for HTTP client APIs.