2008年01月06日

HTTP::MobileAgentのプラグインいくつか上げました。

Posted by nene2001 at 16:30 / Tag(Edit): perl cpan http::mobileagent / 5 Comments: Post / View / 0 TrackBack / Google Maps このエントリーを含むはてなブックマーク

CPANやオープンソース開発に関する自縄自縛の思い込みが解けたので、内輪で作ってたHTTP::MobileAgentのプラグイン3つ、CPANに上げました。

各端末がXHTML対応か否かを確認するプラグインです。
次のHTTP::MobileAgent::Plugin::IDでの判定に、XHTML対応機種か否かの判定が必要だったので作りました。

XHTML判定自体は本家にあるのですが、未知の機種の場合にXHTML非対応になってしまうのが気に入らなかったので、プラグインとして追加しました。

各端末からのユーザID(取得できないものは端末シリアルID)を取得するためのプラグインです。

HTTP::MobileUserIDと似ていますが微妙に欲しかったユースケースと違うので作りました。

ケータイ位置情報を扱うためのプラグインです。
codereposのHTTP::MobileAgent::Plugin::Locatorと似たようなのですが、

こちらでできないこと:

  • 位置情報取得時のクエリストリングの持ち回り(各端末の仕様に基づいた持ち回り数しか持ちまわれません。EZWeb:0、DoCoMo iエリア:2)
  • mova iエリアからの経緯度取得(エリアメソッドと経緯度メソッドを分けたので、エリアしか返さないI/Fではエリアしか取れません。経緯度を返さない仕様で経緯度を生成するのは止めました)

こちらでできること:

  • 経緯度オブジェクトとしてGeo::Coordinates::Converter、Location::GeoToolの双方が利用可能
  • 利用する位置情報の精度を変更可能(GPS対応機でも簡易位置情報やiエリア利用可能)
  • 位置情報の精度取得可能(基地局精度、混合測位、GPSの3段階)
  • 経緯度からiエリアの生成可能

あたりに差があります。

ただ今Yappoさんにcodereposのアカウント申請中ですので、それが終わればcodereposにも上げますのでツッコミよろしくお願いします。

Related query words in Google & Yahoo
Related Books from Amazon
Trackback to this entry
TrackBack URL :
Trackbacks
トラックバックはありません。
Comments

::XHTMLと::ID、どちらも html_version がわからないときに 1 を返しているのは、未知の場合にそうしたいという意図はわかりますが、本家がそもそも未知を検出できないのが問題なのであって、それをプラグインで無理やりなおすのはなにかベクトルが間違っている気がしないでもありません。

あと、1つの.pm に複数の package を書くとPAUSEが混乱します(CPANのリンク先参照)。その上、HTTP::MobileAgent のメンテナシップを持っていないので UNAUTHORIZED が表示され、CPAN index 上も問題があります。sub HTTP::MobileAgent::XXX {} のようにするか、 package のあとに改行をいれてください。

Posted by: miyagawa at 2008年01月06日 22:07

いろいろご迷惑をおかけしましたのにアドバイスをいただきましてありがとうございます。

> ::XHTMLと::ID、どちらも html_version がわからないときに 1 を返しているのは、未知の場合にそうしたいという意図はわかりますが、本家がそもそも未知を検出できないのが問題なのであって、それをプラグインで無理やりなおすのはなにかベクトルが間違っている気がしないでもありません。

patchかテストケースで本家に送った方がよいということでしょうか。

> あと、1つの.pm に複数の package を書くとPAUSEが混乱します(CPANのリンク先参照)。その上、HTTP::MobileAgent のメンテナシップを持っていないので UNAUTHORIZED が表示され、CPAN index 上も問題があります。sub HTTP::MobileAgent::XXX {} のようにするか、 package のあとに改行をいれてください。

subで書くのは面倒くさそうなので、改行の方で対応したいのですが、現コードでpackageの後に改行は入っているように思います。
UNAUTHORIZEDが出ていないHTTP::MobileAgent::Flashのソースを見ますと、packageの後に改行は入ってないようなのですが、そのようにすればよいでしょうか。

Posted by: kokogiko at 2008年01月06日 23:07

> subで書くのは面倒くさそうなので、改行の方で対応したいのですが、現コードでpackageの後に改行は入っているように思います。

package Foo の package と Foo の間に改行をいれる、という意味です。PAUSE のパーサが理解しなくなります。

でも、sub で書き直すのは面倒だとは思わないですけどね。あるいはグロブを使ってメソッドを生やす方法でもできます(redefine するやつではそうしていますよね?)

Posted by: miyagawa at 2008年01月06日 23:41

こんにちは。

http://www.google.co.jp/codesearch?q=package+hide+from+PAUSE+lang%3Aperl

検索したらpackage宣言内に改行いれているサンプル結構ありました。参考になれば。

Posted by: typester at 2008年01月07日 13:18

大変遅くなりましたが、miyagawaさんに指摘されました対策済みのものをCPANに挙げました。
ただしXHTMLのみ、今後の扱いをどうするか思案中なのでまだ前のままおいてあります。

Posted by: kokogiko at 2008年01月15日 20:35
Post a comment












Remember personal info? 
2008年01月
Su Mo Tu We Th Fr Sa
    1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31    

About Me

Navigation

Search
Google
Web
kokogiko.net
Archives
Recent Entries
Recent Comments
Recent Trackbacks
Generic Viagra(Generic Viagra)
Google MapsライセンスとgoSVGによるオープンソースGIS生き残り戦略
Adobe もクラウドをはじめた!各社のクラウドサービスの特徴は?(ラボブログ)
Amazon EC2のランニングコストはそんなに安くなかった
「ここギコ!」の人が涙も出ないような状況になっていることについて(僕だけが幸せになればいいのに。)
人員がクラスタ化できている職場と言うのはうらやましい そろそろ限界です
GoogleMapsと連動したいならPostGISの他にmysqlという選択肢も出てきた あとジオメディアサミット関西も(ここギコ!)
GoogleMapsと連動したいなら幾何データ型よりPostGIS
GoogleMapsと連動したいならPostGISの他にmysqlという選択肢も出てきた あとジオメディアサミット関西も(ここギコ!)
「ジオメディアサミット関西」が開催されます。
GoogleMapsと連動したいならPostGISの他にmysqlという選択肢も出てきた あとジオメディアサミット関西も(ここギコ!)
MySQL4.1以降での空間情報の扱い方
なんか天から2兆円降ってくるらしいので みんな思い思いのところに募金なり寄付するのはどうか(ここギコ!)
「冷静に」「熱く」「マジ反論」でこの内容はある意味すごい
「亡びつつある日本の言語」と「日本語」、そして「普遍語」につらつら思うこと(ここギコ!)
国連人権委、アイヌ・琉球文化の保護を日本に勧告
「亡びつつある日本の言語」と「日本語」、そして「普遍語」につらつら思うこと(ここギコ!)
政治と祭祀が不可分と考えるなら、全ての祭祀を引き受けるのが筋
「亡びつつある日本の言語」と「日本語」、そして「普遍語」につらつら思うこと(ここギコ!)
Googleさんの技術でアイヌ語訳ができないだろうか
Hatena bookmarked
My del.icio.us

Banners

Syndication
Powered by
Get it!!