Hacker News new | past | comments | ask | show | jobs | submit login

Great post. I used to work with SMS for a living, and still remember the first time I visited a customer's data center and watched one of their engineers send an SMS... by telnetting directly into the SMSC and punching out a command in raw EMI:

https://en.wikipedia.org/wiki/EMI_(protocol)

And an old blog post of mine on why MMS failed but still managed to delay actual mobile internet by 10 years:

https://gyrovague.com/2014/06/27/how-sms-set-back-the-mobile...




I wonder if there's a good technical writeup on MMS. It seems to be "just another" IP based thing, but I've never really investigated it.


Wikipedia goes into this in some detail, but it really is pretty much the canonical example of a protocol designed by committee.

https://en.wikipedia.org/wiki/Multimedia_Messaging_Service

Here's the technical spec, which manages to combine the single bit level detail of old school telco with the enterprisey goodness of SOAP.

http://www.qtc.jp/3GPP/Specs/23140-6g0.pdf

For example, this is how you say "OK" in MM7:

    HTTP/1.1 200 OK
    Content-Type: text/xml; charset="utf-8"
    Content-Length: nnnn
    <?xml version="1.0" ?>
    <env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/">
    <env:Header>
      <mm7:TransactionID xmlns:mm7="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-1-3" env:mustUnderstand="1"> vas00001-sub</mm7:TransactionID>
    </env:Header>
    <env:Body>
    <SubmitRsp xmlns="http://www.3gpp.org/ftp/Specs/archive/23_series/23.140/schema/REL-5-MM7-1-3">
      <MM7Version>5.6.0</MM7Version><Status> 
      <StatusCode>1000</StatusCode> 
      <StatusText>Success</StatusText></Status> 
      <MessageID>041502073667</MessageID>
    </SubmitRsp> 
    </env:Body></env:Envelope>


jesus christ. No wonder I could never send the things!

Your blog post above was also a good read. Thanks.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: