さくペラ

さくっとぺらいちというサイトのつづき

ケータイサイトの開発に便利なモジュール/フレームワーク

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)との連携
  • 文字コード変換機能/絵文字のキャリア間相互変換