- 2010-08-20 (金) 12:23
- iPhone/iPad
iPhone MMSから送信されたメールをプログラム等で処理する際の注意点です。
iScreenShotではiPhone/iPadからの投稿方法としてメールがあるのですが、処理できないメールがありました。これを調べていったところ、行き着いたのがMMSでした。
そこでiPhone MMSからのメールについて分かったことを残しておきます。なおサーバ構成や変換処理などは、外部からの推測なので実際とは異なるかもしれません。
なお以後の「外部メールサーバ」には、docomo、auなど「携帯キャリアのメールサーバ」は含みません。携帯キャリア間では専用の制御が入っている(入る)可能性があるのでご注意を。
MMSって?
まずMMSについてですが、これについては各所に情報があるので、ここでは割愛します。
=> マルチメディアメッセージングサービス – Wikipedia
=> RFC 4356: MMS and Internet Mail
iPhone MMS送信から外部メールサーバへ届く流れをざっくり図にすると以下のようになります。
iPhone から送信したMMSを外部メールサーバで受信する
MMSを外部メールサーバに送信する際は、MMSサーバがメールに変換を行って、SMTPで外部メールサーバへ送信します。(図、赤枠)
この変換をMMSサーバをやってくれるおかげで、外部メールサーバはMMSを単なるメールとして処理することができます。
変換によって、MMSの件名はSubjectヘッダに、本文はメールボディに格納されます。また、本文を記述して、画像を添付した際はmultipartなメールとなります。ほぼ通常のメールと同じ形式になるので、実は受信側ではそれほど意識することなく処理することができます。
ただし、いくつか注意点があります。
注意点1. 件名はデフォルトオフ
iPhoneのSMS/MMSアプリでは、MMSの件名がデフォルトではオフになっています。よってMMSアプリで入力するテキストは本文として送信されます。
ちなみに件名はiPhoneの設定によってオンすることができます。
注意点2. 件名、本文はISO-2022-JPになる
iPhoneのSMS/MMSアプリでは、絵文字等も使えるので一見UTF-8のように思うのですが、外部メールサーバへ送信される際は、ISO-2022-JPに変換されます。
メールアプリでは、UTF-8な文字が含まれる場合はそのままUTF-8で送信されてくるのですが、MMSでは(おそらくMMSサーバによって)ISO-2022-JPに変換されます。
注意点3. 本文ナシで画像を送るとmultipartにはならない
iPhoneのSMS/MMSアプリでは、本文を未入力で画像のみを送ると、multipartにはなりません。これは、件名のみを入力した場合も同様です。
実際に、件名のみ+画像を送信した際のメールヘッダが以下です。Content-Typeを見ると「image/png」になっています。
メールを使った画像送信というと、multipartなメールを思い浮かべるのですが、こういったパターンもあるということを想定しておく必要があります。
Return-Path: <XXXXXXXXXX@softbank.ne.jp> (snip) Subject: =?ISO-2022-JP?B?GyRCJSglaSE8GyhC?= From: <XXXXXXXXXX@softbank.ne.jp> Date: Fri, 20 Aug 2010 10:57:09 +0900 Message-ID: <NNNNNNNNNNNNNNNNNNN@NNNNNNNNNNNN> To: test@example.com Sender:XXXXXXXXXX@softbank.ne.jp Content-Disposition: Attachment;filename=IMG_1186.jpg Content-Location: IMG_1186.jpg Content-Type:image/png;name=IMG_1186.jpg Content-Transfer-Encoding:base64 Mime-Version:1.0
注意点4. 画像が自動縮小される場合がある
iPhone4からMMS送信を試して分かったのですが、本来640×960の画像をMMSで送信すると、320×480に縮小される場合があります。
これはおそらくMMSの300k制限によるもので、300kを超えている画像が縮小されました。逆に300k未満の画像については、そのままのサイズで送信されました。
=> iPhone 4 / 3GS:SMS/MMS | ソフトバンクモバイル
MMSアプリなら画像添付できる
正直、iScreenShotを作るまで、iPhoneのSMS/MMSアプリは全く使っていませんでした。アプリもホーム画面3ページ目くらいのよく分からないフォルダに押し込んでいます:D
今回の件で触ってみたのですが、これはこれで便利ですね。
送信履歴が一画面で見られるので、どの画像を投稿してきたのが見やすいですし、何よりアプリで直接画像を添付できるのが有り難いです。
件名がデフォルトでオフというのが難点ですが、今後も使ってみようと思います。
iScreenShotでも、上記、注意点3パターンによる投稿に対応しましたので、MMSからの投稿もお待ちしてます!
- Newer: [PCでは絵文字は表示されません]
- Older: iPhone、iPod touchのホーム画面を1からカスタマイズする方法
コメント (Close):2
トラックバック:4
- このエントリーのトラックバックURL
- /blog/2010/08/tips_for_receive_email_from_iphone_mms.html/trackback
- Listed below are links to weblogs that reference
- iPhone MMSから送信されたメールを処理する際の注意点 from Shin x blog
- pingback from iPhone MMSから送信されたメールを処理する際の注意点 | Shin x blog | とっても! ちゅどん(雑記帳) 10-08-20 (金) 17:15
-
[…] iPhone MMSから送信されたメールを処理する際の注意点 | Shin x blog […]
- pingback from 2010/08/20に気になったこと | debeso 10-08-21 (土) 0:05
-
[…] iPhone MMSから送信されたメールを処理する際の注意点 | Shin x blog iPhoneMMSの扱いについて […]
- pingback from iPhoneの画像付きメールを解析してDBにつっこめるようにするてすと | マジですCAR 11-12-02 (金) 11:05
-
[…] さらにさらに ・iPhone MMSから送信されたメールを処理する際の注意点 […]
- trackback from Healthy LifeStyle, Food and Fat Loss in Reviews 12-02-18 (土) 21:53
-
Another Title…
I saw this really good post today….