Hatena::ブログ(Diary)

as flash as flex - horori.net このページをアンテナに追加 RSSフィード

 

2008-03-24

[] 3キャリア(+Willcom)位置情報取得方法まとめ(総括編)

しばらく、位置情報取得で煮詰まってました。

でも一通り把握したからといって次回は楽になる・・・というほど単純じゃないのがつらいところ。

やはりそれぞれのキャリアの違いを全て吸収するインターフェースが必要かなと思います。

で、それなりに出来上がってたりするんだけど公開しちゃおうかなぁ・・・と検討中。


ちなみに各キャリアを比較するとこんな感じですね。

[] 3キャリア(+Willcom)位置情報取得方法まとめ(ドコモ編)

NTT Docomo には オープンiエリア検索 と GPS検索の2種類がある。


■オープンiエリア検索

これはドコモCGIにリンク先を設定するタイプ。

リンク元の記述方法

例:http://XXX/XXX.php に位置情報を送信する場合

<a href="
http://w1m.docomo.ne.jp/cp/iarea?ecode=OPENAREACODE&msn=OPENAREAKEY&nl=http://XXX/XXX.php&arg1=aaa%3dhogehoge&arg2=&posinfo=2">ここをクリック</a>

リンク先URL

http://w1m.docomo.ne.jp/cp/iarea?


パラメータ:ecode(必須)

OPENAREACODE(固定)


パラメータmsn(必須)

OPENAREAKEY(固定)


パラメータ:nl(必須)

位置情報を送信するURL(絶対URL


パラメータ:posinfo(任意)

1の場合は「緯度経度」と「エリアコード」を送信する。

2の場合は「緯度経度」のみ送信。


パラメータ:arg1(任意)

パラメータ:arg2(任意)

送信先に渡したい引数を指定することができる。

[ aaa=hogehoge ]を送りたい場合はURLエンコードして[ arg1=aaa%3dhogehoge ]という形にする。




受け取り方法

メソッド:POST

例:

?ACTN=OK&LAT=%2B34.18.18.164&LON=%2B134.4.44.955&GEO=wgs84&XACC=1&POSINFO=2

全てキーが大文字なので注意が必要。

ACTN

OKと入る


LAT

緯度座標DMSタイプ ±DD.MM.SS.SSS


LON

経度座標DMSタイプ ±DD.MM.SS.SSS


GEO

測地系 wgs84 もしくは WGS84


XACC

測位レベル1〜3の値。水平誤差が [3]50m以内。[2]50m〜300m。[1]300m以上

AREACODE

基地局エリアコード 5桁数値

POSINFO

送信したposinfoの値と同値


arg1やarg2で指定した引数

上記の例のように[ arg1=aaa%3dhogehoge ]という形で指定した場合は[ aaa=hogehoge ]が返る

注意点

UserAgentはわたるがUTN(固体識別番号)は返らない。


詳細情報

「作ろうiモードコンテンツ」リニューアルのお知らせ | サービス・機能 | NTTドコモ




■GPS検索


aタグやformタグに対して lcs という属性を付与することによって可能になる。

リンク元の記述方法

例:http://XXX/XXX.php に位置情報を送信する場合

<a href="http://XXX/XXX.php" lcs>ここをクリック</a>

受け取り方法

メソッド:GET

例:

?lat=%2B35.00.35.600&lon=%2B135.41.35.600&geo=wgs84&x-acc=3

全てキーが大文字なので注意が必要。

lat

緯度座標DMSタイプ ±DD.MM.SS.SSS


lon

経度座標DMSタイプ ±DD.MM.SS.SSS


geo

測地系 wgs84 もしくは WGS84


x-acc

測位レベル1〜3の値。水平誤差が [3]50m以内。[2]50m〜300m。[1]300m以上

alt

高度 +10 など

詳細情報

「作ろうiモードコンテンツ」リニューアルのお知らせ | サービス・機能 | NTTドコモ

[] 3キャリア(+Willcom)位置情報取得方法まとめ(AU編)

AU には 簡易位置情報 と GPS検索の2種類がある。

リンク元の記述方法

例:http://XXX/XXX.php に位置情報を送信する場合

<!-- 簡易位置情報の場合 -->
<a href="device:location?url=http://XXX/XXX.php">ここをクリック</a>
<!-- GPSの場合 -->
<a href="device:gpsone?url=http://XXX/XXX.php&ver=1&datum=0&unit=0">ここをクリック</a>

リンク先URL

device:location?

GPSの場合のパラメタ(&ver=1&datum=0&unit=0)は送る必要があるかどうかは不明だがとりあえずそのまま送る。



受け取り方法

メソッド:GET

例:簡易位置情報の場合

?datum=tokyo&unit=dms&lat=%2B34.18.18.164&lon=%2B134.4.44.955

例:GPSの場合

?datum=0&unit=0&lat=%2B34.18.18.164&lon=%2B134.4.44.955&alt=33&time=20061021144922&smaj=104&smin=53&vert=41&majaa=96&fm=2

lat

緯度座標DMSタイプ ±DD.MM.SS.SSS (+は省略されることがある)


lon

経度座標DMSタイプ ±DD.MM.SS.SSS (+は省略されることがある)


datum

測地系

 簡易位置情報:「tokyo」と返ってくるが実際は wgs84

 GPS位置情報:「0」が返る。wgs84 であることを示す。

unit

度数表記

 簡易位置情報:「dms」と返ってくる。DMS表記であることを示す。

 GPS位置情報:「0」が返る。DMS表記であることを示す。

alt

高度


ほかにもGPSの場合

ver GPSのバージョン

time 時間

smaj 長軸半径誤差

smin 短軸半径誤差

vert 高度誤差

majaa 誤差楕円長軸角度

fm 測位方法?

などがある。

注意点

AU GPSの仕様は公開されていない。

測位レベルをあらわす指標がない。fm値などを使って推測できるらしい。

参考:GPS携帯 位置情報 基礎知識



詳細情報

KDDI au: 技術情報 > 位置情報

GPS携帯 位置情報 基礎知識

[] 3キャリア(+Willcom)位置情報取得方法まとめ(Softbank 3G編)

Softbank には 簡易位置情報 と S!GPS機種の2種類があるが、同一のインターフェースで取得可能。

リンク元の記述方法

例:http://XXX/XXX.php に位置情報を送信する場合

<a href="location:auto?http://XXX/XXX.php">ここをクリック</a>

リンク先URL

location:auto?[転送先URL]



受け取り方法

メソッド:GET

例:

?pos=N34.18.18.164E134.4.44.955&geo=wgs84&x-acr=3

pos

緯度経度座標DMSタイプ [N|W]DD.MM.SS.SSS[E|W]DD.MM.SS.SSS


geo

測地系 wgs84 または tokyo または itrf

x-acr

測位レベル1〜3の値。水平誤差が [3]50m以内。[2]50m〜300m。[1]300m以上



詳細情報

404 Not Found

[] 3キャリア(+Willcom)位置情報取得方法まとめ(Willcom編)

特殊なリンクの埋め込みでコールバックされる。

リンク元の記述方法

例:http://XXX/XXX.php に位置情報を送信する場合

<a href="http://location.request/dummy.cgi?my=http://XXX/XXX.php&pos=$location">ここをクリック</a>

受け取り方法

メソッド:GET

例:

?pos=N34.18.18.164E134.4.44.955

pos

緯度経度座標DMSタイプ [N|W]DD.MM.SS.SSS[E|W]DD.MM.SS.SSS

詳細情報

Willcomコンテンツ作成マニュアル応用編 9ページ〜