ゆめみ、3キャリア対応用のApacheモジュール「mod_ktai」を開発中
    このエントリをはてなブックマークに登録

2007/12/28 金曜日 matsui Posted in ニュース | No Comments »

3キャリアに対応したモバイルサイトを制作する際に必要な、絵文字や画像の3キャリア変換を自動処理するApacheモジュール「mod_ktai」が発表されたようです。
2008年3月末までに一般公開するとのことです。

→ 株式会社ゆめみ ニュースリリース 日本初!ゆめみ、携帯サイト構築簡易化Apacheモジュール『mod_ktai』を開発 [yumemi.co.jp]

→ CNET JAPAN 3キャリア対応サイト作成へ、画像を自動変換をするApacheモジュールをゆめみが開発 [cnet.com]

 

絵文字や画像変換をApacheモジュールに任せるのは、正しい方向だと思います。
ライセンスや価格はどうなるのかが気になりますね。

また、オープンソースでほぼ同機能のソフトである「mod_chxj」に対して、どれだけ優位性があるのかも気になるところです。

→ SourceForge.jp mod_chxj [sourceforge.jp]
→ SourceForge.jp mod_chxj ドキュメント [sourceforge.jp]

 

関連:




ケータイスペック一覧ページをリニューアルしました
    このエントリをはてなブックマークに登録

2007/12/27 木曜日 matsui Posted in お知らせ | No Comments »

国内3キャリアの携帯電話のスペックをまとめた、「ケータイスペック一覧」ページをリニューアルしました。

新たに盛り込んだ機能は次の通りです。

  1. 項目凍結機能を追加しました。
    従来は誰でも項目を修正できたため、イタズラや間違った修正がありましたが、今後はコミッターが値を確認後に凍結することによって、情報の信頼度を向上させます。(凍結された項目は灰色から黒になります)
  2. ご要望の多かったCSS、GPS、発売日の項目を追加しました。
  3. 携帯スペック識別ウィザードを作成しました。
    実際に携帯から、画像が見えるか、Flashが見えるかなどの情報を入力して貰い、それをリストに反映させる機能を作成しました。

携帯スペック識別ウィザードのイメージ
wizard_image.jpg

携帯スペック識別ウィザードのURL(携帯Only)
(http://ke-tai.org/moblist/wizard.php)
wizard_qr.png

 

またデータの凍結作業を進めていく上で、同時に次の部分を修正して行く予定です。

  • 表記の統一
    μ(ミュー)やII(ツー)などの表記ルールを作成し統一します。
  • データの抜けと正確性の向上
    定期的にapacheログとの比較を行い、登録の無い機種の場合はリストに追加するスクリプトを開発中です。
    定期的にキャリア公式サイトの情報と比較する仕掛けを構築する予定です。

他にもご要望などがありましたら掲示板に書き込んでいただけると助かります。

また、間違っているデータや抜けなどがありましたら、ぜひ修正やご指摘のご協力をお願いいたします。




3キャリア対応の位置取得API「シリウス GeoPlatform API」を使ってみました
    このエントリをはてなブックマークに登録

2007/12/26 水曜日 matsui Posted in 記事紹介・リンク | 3 Comments »

昨日に引き続きGPSネタです。

位置情報を利用したソフトウェアを開発しているシリウステクノロジーズが、12/25付けで「シリウス GeoPlatform API」を公開したそうなので、早速試してみました。

→ Cirius Lab シリウス GeoPlatform API について [cirius.co.jp]

→ ここギコ! シリウステクノロジー、携帯向け位置取得API – GeoForm APIを公開 [kokogiko.net]

 

以下、本家サイトからの引用です。


GPS や iエリアなど、位置情報を活用したモバイルサイトを作成したい。そんな場合にご利用いただける API です。 GeoFormAPI を利用することで、キャリア間や機種間の差異を意識せず、位置情報を取得する機能が利用できます。

  1. 緯度経度、住所を取得可能
    緯度経度情報に加えて、対応する住所を取得することができます。
  2. 3キャリア対応
    DoCoMo, au, SoftBank に対応しています。GPS検索、iエリア、簡易位置情報などを切り替えて使用することも可能です。
  3. 統一されたインターフェイス
    携帯電話会社毎に異なる仕組みを構築する必要がなくなります。

とのことです。利用には簡単な登録がいりますが、利用規約 [cirius.co.jp]の範囲内であれば無料で利用できるようです。

 

以下が試しに作成したサンプルコードです。

Cirius GeoPlatform APIのPHPサンプル

<?php
// ユーザエージェント
$agent = $_SERVER['HTTP_USER_AGENT'];

// 戻り先URL
$ret_url = 'http://example.jp/example.php'; // *1

// APIキー
$api_key = '[APIキー]'; // *2

// URLを作成
$url = 'http://api.cirius.co.jp/v1/geoform/xhtml?';
$url .= 'ua=' . urlencode($agent);
$url .= '&return_uri=' . urlencode($ret_url);
$url .= '&api_key=' . $api_key;

// 出力
echo '<a href="' . $url . '">接続</a>';
echo '<hr>';
echo '緯度=' . htmlspecialchars($_GET['lat']) . '<br>';
echo '経度=' . htmlspecialchars($_GET['lon']) . '<br>';
echo '誤差=' . htmlspecialchars($_GET['accuracy']) . '<br>';
echo '住所=' . htmlspecialchars($_GET['address']) . '<br>';

?>

*1 戻り先URLを記述します
*2 アカウント登録して取得したAPIキーを記述します
* 住所はUTF-8で取得されます

cirius_api.jpg

 

キャリアや端末の差違を埋めてくれること(なんと精度はさておきmovaで試しても座標が取れました)や、緯度・経度だけではなく住所まで取れる点が素晴らしいですね。

APIページ[cirius.co.jp]には、詳しい使い方や、より実用的なサンプルコードが書いてありますので、参考になると思います。

 

関連:




ケータイで取得した位置情報を世界測地系に変換するサンプル
    このエントリをはてなブックマークに登録

2007/12/25 火曜日 matsui Posted in PHP | 3 Comments »

先日ご紹介した「ケータイで取得した位置情報をGoogleMap形式に変換するサンプル」に引き続き、GPSの座標変換系の話です。

ケータイから取得できる座標には日本測地系と世界測地系とがあります。
ドコモの場合、iモードのGPS機能、オープンiエリアともに世界測地系になるようです。
auやソフトバンクは、パラメータで取得する形式を指定できるようです。
なおウィルコムは日本測地系で座標を返すようです。

GoogleMapは世界測地系を利用しているため、日本測地系の座標の場合は変換の必要があります。
変換用のサンプルプログラムは次の通りです。

 

日本測地系(度分秒形式)→世界測地系(ミリ秒形式)の変換サンプル

// 取得した座標(日本測地系)
$ido = '+43. 2. 58. 956';
$keido = '+141. 22. 36. 912';

// 度分秒形式からGoogleMapに対応したミリ秒形式に変換する
list($g_ido, $g_keido) = convertLocationForGMap($ido, $keido);

// 世界測地系に変換する
list($wgs_ido, $wgs_keido) = convertLocationToWGS84($g_ido, $g_keido);

echo '緯度=' . $wgs_ido . '<br>';
echo '経度=' . $wgs_keido . '<br>';

/**
 * 緯度・経度変換メソッド
 * 緯度・経度を度分秒形式からミリ秒形式に変換する
 * @param	string	$ido	緯度(度分秒形式)
 * @param	string	$keido	経度(度分秒形式)
 * @return	array		array([変換後の緯度], [変換後の経度])
 */
function convertLocationForGMap($ido, $keido) {
	// 度分秒形式からGoogleMapに対応した形式に変換する
	$keido_arr = explode('.', $keido);
	$ido_arr = explode('.', $ido);
	$g_keido = trim($keido_arr[0]) + trim($keido_arr[1]) / 60
		+ (trim($keido_arr[2]) + trim($keido_arr[3]) / 1000) / 3600;
	$g_ido = trim($ido_arr[0]) + trim($ido_arr[1]) / 60
		+ (trim($ido_arr[2]) + trim($ido_arr[3]) / 1000) / 3600;

	return array($g_ido, $g_keido);
}

/**
 * 世界測地系変換メソッド
 * 座標を世界測地系に変換する
 * @param	string	$g_ido		緯度(GoogleMap形式)
 * @param	string	$g_keido	経度(GoogleMap形式)
 * @return	array		array([変換後の緯度], [変換後の経度])
 */
function convertLocationToWGS84($g_ido, $g_keido) {
	// 世界測地系に変換する
	$wgs84_keido = $g_keido - $g_ido * 0.000046038
			- $g_keido * 0.000083043 + 0.010040;
	$wgs84_ido = $g_ido - $g_ido * 0.00010695
			+ $g_keido * 0.000017464 + 0.0046017;

	return array($wgs84_ido, $wgs84_keido);
}

なお、変換式はこちらを参考にさせていただきました。

 

関連:




ケータイで取得した位置情報をGoogleMap形式に変換するサンプル
    このエントリをはてなブックマークに登録

2007/12/21 金曜日 matsui Posted in PHP | 2 Comments »

ケータイで位置情報(緯度・経度)を取得すると、度分秒表記(xx時xx分xx秒形式)で座標が返ってくるケースがほとんどです。
しかし、GoogleMapなどの地図サービスはミリ秒表記(xxx.xxxxxx形式)を使っていることが多いので、変換が必要になります。

今回は座標をGoogleMapで使えることを目的として、度分秒形式からミリ秒形式へ変換するPHPのサンプルをご紹介します。

 

ケータイ(度分秒形式)→GoogleMap(ミリ秒形式)への変換サンプル

// GPSで取得した座標の例
$ido = '+43.3.14.112';
$keido = '+141.22.35.364';

// 度分秒形式からGoogleMapに対応したミリ秒形式に変換する
list($g_ido, $g_keido) = convertLocationForGMap($ido, $keido);

echo '緯度=' . $g_ido . '<br>';
echo '経度=' . $g_keido . '<br>';

/**
 * 緯度・経度変換メソッド
 * 緯度・経度を度分秒形式からミリ秒形式に変換する
 * @param	string	$ido	緯度(度分秒形式)
 * @param	string	$keido	経度(度分秒形式)
 * @return	array		array([変換後の緯度], [変換後の経度])
 */
function convertLocationForGMap($ido, $keido) {
	// 度分秒形式からGoogleMapに対応した形式に変換する
	$keido_arr = explode('.', $keido);
	$ido_arr = explode('.', $ido);
	$g_keido = trim($keido_arr[0]) + trim($keido_arr[1]) / 60
	 + (trim($keido_arr[2]) + trim($keido_arr[3]) / 1000) / 3600;
	$g_ido = trim($ido_arr[0]) + trim($ido_arr[1]) / 60
	 + (trim($ido_arr[2]) + trim($ido_arr[3]) / 1000) / 3600;

	return array($g_ido, $g_keido);
}

trimをかけているのは、端末やサービスの違いによっては、座標の間にスペースが入ることがあるためです。

なお、利用するキャリアやサービスによっては、取得する座標が日本測地系で取れてしまうことがあります。

GoogleMapは世界測地系ですので、座標データが日本測地系の場合は変換が必要になります。
このあたりの説明と変換サンプルは、また後日ご紹介したいと思います。

※追記
日本測地系→世界測地系の記事を作成しました。こちらです。

 

関連: