ケータイサイトの開発に便利なモジュール/フレームワーク
YUMEMIというケータイでは有名な会社が、いろいろ技術情報を公開しています。
先日は「mod_ktai_image(画像変換モジュール)」のアップデート版を公開してます。これを導入することで、ケータイの解像度に最適化した画像を表示できるようになります。
mod_ktai_image(画像変換モジュール) - YUMEMI Labs
これ以外にもいろいろ便利なモジュールを公開しています。
mod_ktai (もっど・けーたい) - YUMEMI Labs
他の会社でもこういう活動を行っていまして、そういうものは率先して使っていったほうが良いと思います。(ライセンスをよく注意して読まなければなりませんが)
以下、ケータイサイト開発で便利なモジュール/フレームワークをまとめます。
※順次追加します。(2008/11/5更新)
■Perl系
★MobaSiF(Moba/Mobile Simple Framework):モバゲータウンを制作したDeNA川崎さんによるフレームワーク※実際運用しているものとは多少異なっているとのこと。
[機能]
- URL ディスパッチャ
- 端末認証 + ログインまわり
- テンプレート処理 (MTemplate)
- 絵文字処理 (Mcode)
- 多数の DB ハンドルの管理
- daemon を作る基本モジュール
★Kawa.net 日本語処理・携帯絵文字処理関係のPerlモジュール:ドコイク?などを担当されたリクルート川崎さんによるPerlモジュール群
[機能]
- CGIparamJP.pm - CGI.pmのクエリ中の日本語処理
- EmailHTML.pm - HTMLメールMIMEマルチパートメッセージの生成
- EmailJP.pm - 携帯絵文字対応のSMTPメール送信
- EmojiTrans.pm - iモード用絵文字をSoftBank/au用絵文字に変換
- Encode561.pm - Perl 5.005/5.6.1 環境で Encode.pm ライクな操作
- EntityRef.pm - © 等の実体参照表記を16進数コード参照表記に変換
- EscapeJIS.pm - ISO-2022-JP テキスト中の絵文字・拡張漢字を変換
- EscapeSJIS.pm - Shift_JIS テキスト中の絵文字・拡張漢字を変換
- EscapeUTF8.pm - UTF8 テキスト中のコード参照表記を変換
★Encode::JP::Mobile:日本のキャリア向け絵文字コード変換モジュール
au絵文字メールをデコードするEncode::JP::Mobile::KDDIJISというものもある。
関連:Encode::JP::Mobileでの絵文字の相互変換方法 - clouderの日記
★HTTP::MobileAgent:ケータイのユーザーエージェントヘッダ情報から、さまざまな情報を取り出して、プロパティ値としてすぐつかえるようにするモジュール、といったところでしょうか。
■PHP系
★PEAR::Net_UserAgent_Mobile:HTTP::MobileAgentのPHP版といえるもの。
参考:PEAR::Net_UserAgent_Mobile 3G対応携帯判別(ケータイ判別) - dozo dokuwiki.php
参考:携帯サイトを作るためのPEAR::Net_UserAgent_Mobile - IT PRO
★携帯絵文字変換スクリプト:ケータイキャリアごとに絵文字を切り替えて表示
参考:モバゲーのような携帯サイトを作るための12のTips
■Apacheモジュール系
★mod_chxj:各キャリアに特化した画像変換、QRコード生成
参考:携帯向け Apache モジュールの本命 mod_chxj - Devel::Bayside
[機能]
※docomoはrefererに対応していないのでこの機能はすばらしい!
★mod_ktai (もっど・けーたい):上で紹介したゆめみのモジュールです。
■IIS系(KHTMLN)
★NS Ware:Nobelmanが特にモバイルに特化した機能を提供してます。
[機能]
- 一形式のページを1枚だけ用意してアクセス時に様々な携帯端末へページを出力
- Cookieが利用できない携帯端末でのCookieの利用
- 統一絵文字による自動絵文字変換
- 相対パスリダイレクトを絶対パスリダイレクトに自動補正
- 設定ファイルによる細かな端末対応
他
■Rails
★jpmobile:開発サイトはこちら
[機能]
- 携帯電話のキャリア判別
- 端末位置情報の取得
- 端末製造番号、契約者番号等の取得
- IPアドレスの検証(キャリアが公開しているIPアドレス帯域からのアクセスか判定)
- セッションIDをフォーム/リンクに付与(Trans SID)
- 携帯電話ビューへの自動振分け
- ディスプレイ情報(画面サイズ、ブラウザ画面サイズ、カラー・白黒、色数)の取得
- GeoKit(http://geokit.rubyforge.org)との連携
- 文字コード変換機能/絵文字のキャリア間相互変換