Handling Emoji Character
This page is not available in English.
Please select another language.
API で扱っている文字コードは入出力共に UTF-8 となります。取り扱える絵文字の種類としては NTT docomo の絵文字のみで受け渡しの際は FOMA 端末で charset=utf8 指定されている際に取り扱う UTF-8 バイト列で表現する必要があります。
他社端末で入力された絵文字で docomo に存在しない絵文字の場合、API はその文字列を "?" (\x3F) に置換します。
作ろうiモードコンテンツ:基本絵文字一覧 によると「晴れ」の ShiftJIS 16進表現は "\xF8\x9F" です。これに対応する UTF-8 表現は "\xEE\x98\xBE" となります。
ガジェットサーバー経由でパートナー様へリクエストが中継される際のキャリア別の文字コードは、
キャリア | 文字コード |
---|---|
docomo | shift_jis |
au | shift_jis |
softbank | utf-8 |
となり、絵文字はキャリアごとにマッピングされます。従って、ガジェットサーバーから渡される UserAgent の値からリクエスト端末のキャリアを判定し、それぞれのキャリアに応じた文字コードの変換処理が必要になります。
サンプルコード
docomo 端末から送られて来た文字列をガジェットサーバー経由で受け取った際に、TextData API にデータを投稿する場合などで必要になる文字コード変換の例です。
パートナー様のサーバーにガジェットサーバーから送られるデータは docomo の絵文字を含む可能性のある ShiftJIS のバイト列で、API にそのデータを投稿する際には UTF-8 で表現する必要があります。
Perl
EncodeJPMobile モジュールを使った場合
PHP
HTML_Emoji ライブラリを使った場合
Text_Pictogram_Mobile ライブラリを使った場合
関連項目
API リファレンス
ゲームサーバーから Gadget サーバーへのレスポンス
API サーバーからゲームサーバーへのレスポンス
参照リンク
作ろうiモードコンテンツ:基本絵文字一覧
作ろうiモードコンテンツ:拡張絵文字一覧
EncodeJPMobile モジュール (perl)
Text_Pictogram_Mobile ライブラリ (php)
HTML_Emoji ライブラリ (php)
更新履歴
- 2017/07/19
- URL のリンク切れを修正
- 2013/03/15
- ドキュメント移行