メール送信時の改行について

548 views
Skip to first unread message

kabisuke

unread,
May 28, 2010, 8:33:14 PM5/28/10
to Google-App-Engine-Japan
GAEを使い始めたばかりの初心者なので、当たり前のことを聞いていたら申し訳ないです。

GAE/Pythonでメール送信の実装をしていたのですが、
改行のないような長い日本語の文章を作ってbodyにセットして送信したところ、
全角38文字で改行が自動的に挟まっていました。

携帯にメールを送信する場合寧ろ改行が無い方が見映えが良いため、
できれば改行をなくしたいところです。方法はないでしょうか。

kazunori_279

unread,
May 30, 2010, 8:31:07 PM5/30/10
to Google-App-Engine-Japan
kabisukeさん、

スティルハウス佐藤です。

> 携帯にメールを送信する場合寧ろ改行が無い方が見映えが良いため、
> できれば改行をなくしたいところです。方法はないでしょうか。

む~pythonのメール送信について分からないのでちゃんとお答えできなくて恐縮ですが、
電子メールの仕様でたしか半角78文字くらいで改行すべしというルールが示されているので、
GAEのメール機能はそれに合わせた実装になってるのかもしれません。

スティルハウス佐藤

Takashi MATSUO

unread,
May 30, 2010, 9:48:24 PM5/30/10
to google-app-...@googlegroups.com
松尾です。

僕の方でも試してみましたが、一行が長いメールを appengine から送ると下記のようなヘッダーが付いています。

Content-Type: text/plain; charset=ISO-2022-JP; format=flowed; delsp=yes

本文には確かに原文に無い改行が入っていますが、半角スペース+改行という形になっており、format=flowed: delsp=yes
との指定通りに解釈すれば長い一行として表示される筈です(RFC3676)。

ですので、appengine のメールは標準に沿った形で元のメールフォーマットを維持していると言えます。ただ一部の携帯ではこれが解釈できないと言う事なのでしょう。

残念ながら、この状況だと、日本の携帯向けに issue をあげて修正or回避策を求めるというのがちょっと難しそうです。

ワークアラウンドがあれば良いですが、現時点で簡単な物はちょっと思いつきません(外部サーバーで変換するとかなら確実にできますが……それはちょっと)。

もしかしてもしかすると html メールにすると行けたりする……かも知れません。

解決そのものでは無く恐縮ですが、何かの手がかりになれば

happy coding :-)

--
Takashi Matsuo
matsuo....@gmail.com
Kay's daddy

2010/5/29 kabisuke <yoshika...@gmail.com>:

> --
> このメールは Google グループのグループ「Google-App-Engine-Japan」の登録者に送られています。
> このグループに投稿するには、google-app-...@googlegroups.com にメールを送信してください。
> このグループから退会するには、google-app-engine...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/google-app-engine-japan?hl=ja からこのグループにアクセスしてください。
>
>

kabisuke

unread,
May 31, 2010, 8:31:04 PM5/31/10
to Google-App-Engine-Japan
kabisukeです。

メールに一行の制約があることは知っておりましたが、
delspというヘッダー属性があるのは知りませんでした!
うーん、RFCを守っていないガラパゴスケータイが悪いんですね(笑)

勝手な改行を入れないようにissueを投げるべきかもしれませんが、
htmlメールが次善策のようですね。これも携帯により対応環境がまちまちな気がしますが。。。試してみます。
ありがとうございました。


On 5月31日, 午前10:48, Takashi MATSUO <matsuo.taka...@gmail.com> wrote:
> 松尾です。
>
> 僕の方でも試してみましたが、一行が長いメールを appengine から送ると下記のようなヘッダーが付いています。
>
> Content-Type: text/plain; charset=ISO-2022-JP; format=flowed; delsp=yes
>
> 本文には確かに原文に無い改行が入っていますが、半角スペース+改行という形になっており、format=flowed: delsp=yes
> との指定通りに解釈すれば長い一行として表示される筈です(RFC3676)。
>
> ですので、appengine のメールは標準に沿った形で元のメールフォーマットを維持していると言えます。ただ一部の携帯ではこれが解釈できないと言う事なのでしょう。
>
> 残念ながら、この状況だと、日本の携帯向けに issue をあげて修正or回避策を求めるというのがちょっと難しそうです。
>
> ワークアラウンドがあれば良いですが、現時点で簡単な物はちょっと思いつきません(外部サーバーで変換するとかなら確実にできますが……それはちょっと)。
>
> もしかしてもしかすると html メールにすると行けたりする……かも知れません。
>
> 解決そのものでは無く恐縮ですが、何かの手がかりになれば
>
> happy coding :-)
>
> --
> Takashi Matsuo
> matsuo.taka...@gmail.com
> Kay's daddy
>
> 2010/5/29 kabisuke <yoshikazu1k...@gmail.com>:
Reply all
Reply to author
Forward
0 new messages