SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Perlで作るモバイルサイトのコツ

Perlで作るモバイルサイトのコツ:第7回

絵文字を含んだメールを送信する


  • このエントリーをはてなブックマークに追加

本連載では、Perlによる携帯サイトを構築する上で役立つ、さまざまなTipsを解説していきます。第7回は、絵文字を含んだメールを送信する際のキャリアごとの仕様の違いや、送信方法について解説します。

  • このエントリーをはてなブックマークに追加

はじめに

 携帯らしいかわいいサイトを構築するのにかかせない絵文字ですが、最近は携帯向けメールマガジンなどのメールにも絵文字が含まれるようになってきています。

 本稿では、絵文字を含んだメールを送信する場合のキャリアごとの仕様の違いと、送信方法を紹介します。

対象読者

  • 絵文字を含んだメールの送信を検討している方
  • CPANモジュールを使用したことのある方

必要な環境

 Perl 5.8以上が動作する環境。

キャリアの仕様の違いと絵文字を埋め込む方法

 絵文字を含むメールの送信は、基本的に絵文字のバイナリデータを本文に挿入することで可能となります。しかし、キャリアごとに絵文字の仕様が異なるため、その違いを吸収する必要があったり、そもそも絵文字に対応していない端末があるため、配信する端末を制限するなどの方法を検討しなければなりません。

 そこで、絵文字を送信する上で各キャリアごとにどのようにすればよいのかをまとめてみました。まずは「文字コードの違い」から見ていきましょう。

1. 文字コードの違い

 絵文字を含むメールの送信時に、まず気を付けなければならないものが「文字コード」です。以下にキャリアごとの対応文字コードをまとめてみました。

文字コード対応表
UTF-8 Shift_JIS ISO-2022-JP
ドコモ
EZweb
×
SoftBank
× ×

 対応していない文字コードでメールを送信すると、文字化けや、内容がまったく表示されなくなったりするので注意する必要があります。

 また、上記の表以外にもいくつか注意点があります。

  • ISO-2022-JPでは、半角カタカナの送信ができません。
  • ドコモのPDC端末やSoftBankのC型端末では、UTF-8での送信ができないものがあります。
  • SoftBank W型端末には、サブジェクトにUTF-8が使用できないものがあります。

2. 絵文字を埋め込む方法

 以上の理由から、メール送信するための文字コードをキャリアごとに検討すると、ドコモとEZwebは「Shift_JIS」で、SoftBankは「UTF-8」で送信するとよいようです。

 そして絵文字に関しては、ドコモとEZwebへShift_JISで送信する場合は、Shift_JISバイナリデータで埋め込み、SoftBankへUTF-8で送信する場合は、Unicodeのバイナリデータで埋め込めばよいということになります。

 これらを踏まえて、次のサンプルプログラムを見ていきましょう。

次のページ
サンプルプログラム

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
Perlで作るモバイルサイトのコツ連載記事一覧

もっと読む

この記事の著者

村上 洋一郎(ムラカミ ヨウイチロウ)

株式会社ライブドア メディア事業部 モバイルメディア部所属。占いサイトやコミュニティサイトなど、様々なエンタメ系サイトの開発を担当しています。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1262 2008/08/26 13:42

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング