Monthly Archives: 10月 2011

au携帯のGPSで位置を連続的に通知

ガラケーじゃあ役不足だなぁ、という思いと、IS01 はスマフォとしてはガッカリだという思いが相まって、Web カメラを買ってきた。

カメラの部分がくるっと回りつつ、持ち運びしやすいように足の部分でレンズをカバーできるところに惚れた。あと、オートフォーカスは必須だと思った。
このカメラで開発をして、いずれ近代的なスマフォを買ったときに備えるのだ。と思っていたのだが、どうやらガラケーで GPS を連続的に取る手段もあると知って愕然。
au 限定だけど、既にやっている人がいた。
au携帯のGPSで位置を連続的に通知
同じ感じで HTML をリロードしてくれるのかと普通の http:// な URL を ontimer に入れてみるも、一向にリロードしてくれない。タイマーの時間を変えても変わらず。XML 宣言も入れてみたけど、変わらず。むー。
と思って、ダメもとで device:gpsone な URL を入れてみた。ら、上手いこといくじゃんね。連続的に GPS で位置を検出してリクエストを投げ続けている。
でも、GPS とカメラ映像を紐付けて連続的にアップするってのはガラケーには無理だろうなぁ。今のところ。

夢の機能、JavaScriptでカメラを利用する

始まりはこれだった。
こてさきAjax:Stream APIで、カメラの映像をWebSocket ライブ配信 – livedoor Blog(ブログ)
JavaScript でクライアント側のカメラ画像を使える???そんな話があるのか。って、まぁ、時間の問題だとは思っていたけど、現実に使える時代もすぐそこまで来ているんですね。
今のところ、Opera Labs っていうエディションで実装されているようです。
Opera Labs: Downloads
各 OS 版があって、Android 用もある。
早速入れてみて試してみた。
http://people.opera.com/richt/release/demos/device/basic/device_helloworld.html
うむ、JavaScript の navigator.getUserMedia が使えるようだ。
しかし、実際に画像を反映してみようとすると、上手くいかない。ここらを参考に適当な HTML を置いてみたが、映像は出てくれない。
javascript – How do I access navigator.getUserMedia()? – Stack Overflow
秋葉秀樹個人ブログ
うーん、IS01 だからか?
そういえば、IS01 は特殊な実装をしていて、ドライバのレベルでは割と違う、みたいな話を聞いたような、聞いていないような。夢かな。
まぁ、そんなこんなで、JavaScript で動画を処理するってのは夢だってことだ。たぶん。

IS01標準ブラウザでもGPSできるじゃん、の巻

IS01 の標準ブラウザでも GPS が使えないかと調べていたら出会った。
位置情報サービスのはじめ方:第3回 位置情報を取得してみよう(後編)|gihyo.jp … 技術評論社
そうか、Gears か。って、Gears についてはあんま知らないんだけど。
とりあえずコピペって動作確認。動かない。なぜか。alert() 入れる。やっぱ動かない。google.gears.factory.create() で止まる。つか、Gears って何だ。
ってなわけで公式へ GO!!

<script type=”text/javascript” src=”gears_init.js”></script>

Geolocation API – Gears API – Google Code
そうね。Gears のライブラリを読まなきゃならないのね。
っつーわけで、gears_init.js を DL してサーバに設置。動く、動くよ、GPS。
というわけで、めでたし×2でした。成果物はこちら。
GEO test
ソースは追加情報へ。
ちなみに、IS01 では端末側で「セキュリティ&位置情報」の「ワイヤレスネットワークを使用」やら「Googleと共有する」を On にしなければならないような話も挙がっていたが、自分がやった分には必要なかった。これらの設定はブラウザ以外のアプリで適用される風。
うーん、でも、既に世の中に出回っている話を言い直しているだけだなぁ。しかも自分の不勉強をひけらかしている感じ。はずかしー。

Continue reading IS01標準ブラウザでもGPSできるじゃん、の巻

今さらながらGPSで地図を出す

“注: Google Static Maps API は、Maps API キーがなくても使用できるようになりました。”

Google Static Maps API – Google Code
というわけで、いつからだか知らないけど、Google Static Maps API は Maps API キーが不要になったそうです。ひとりの閲覧者は24時間で1000パターンの画像を表示できるそうで、複数の Static Maps を使ったサービスを使っていたら合わせてカウントされちゃうのかも?それでも 1000 はなかなか行かないか。
あと、内容にもよるけど、運営者側で提供する情報を静的画像にして提供したい場合はいいね。サーバ側で一回だけリクエストを投げて、それを保持して使い続ける、みたいな。
で、実際のところ、自分が最近やりたかったのは旧来の携帯で GPS 測位して、その軌跡を地図で表示すること。旅の記録や、ゴルフの記録をできないかって思っています。そういうアプリはスマートフォン向けで既にたくさんあるけど、この可愛いガラケーにもできるはず、って気持ちでやってみます。
自分が持っているのは旧来の携帯、W61T。4~5年前の。au なんで、とりあえず au だけ対応したものを作ってみた。
GPS test
テスト領域なのでそのうち消すかも。
まー、今さら感のあるネタだと思うんだけど、軽く解説。GPS 情報は公式の技術情報を確認。
KDDI au: 技術情報 > 位置情報
au の場合は a タグで href を device:gpsone などに向ければいい。自分の携帯では standalonegps には反応しなかった。古いからかな。でもシミュレータも同じ。つか、シミュレータ、こんなことまでシミュレートしてくれるんだ、知らなかった。
ちなみに、携帯なのでセッション ID を URL に埋め込まなければならないが、urlencode() すれば問題はない。
さてできた、ってことで買い物がてら遊びに行く。うむ、なんか取れてる。地図を出してみる。うげ、線が太すぎて線じゃない。地図上のほとんどの領域が線になっている。
Google のパラメータを確認してみると、weight の指定がひどい値になっていた。テストのコードでは 5 だが、50 を指定していた。10倍。そんぐらい太い線をひいていました。
屋外だと精度はいいんだねぇ。コンビニに入ったらズレた。まぁ、旅なら問題ない。大体屋外だ。
そんな感じの楽しい土曜日だったが、やっぱメガネケース、じゃなくて IS01 でも何かしたい。ってことで、そのうち Java Script からの GPS 測位をやるかも。ここのサンプルをいじればいける。
ASCII.jp:iPhoneのGPSをJavaScriptで操ろう|古籏一浩のJavaScriptラボ
IS01 の標準ブラウザは動かなかったけど、Mobile Safari なら動いたので大丈夫だ。ついでにカメラも連携させたいところだ。アプリ作れって言われそうだけど、あえての HTML ベースでがんばる。

Continue reading 今さらながらGPSで地図を出す

一年ぶりぐらいのゴルフはやっぱり楽しかった

今日は一年ぶりぐらいにゴルフしてきた。
関文グループ / 長瀞カントリークラブ
「ながせ」だと思っていたが、「ながとろ」と読むらしい。
最初は OUT から。すごい打ち下ろしから始まる。会社が 7F だけど、それと同じぐらいあったと思う。自分はひどい低空飛行だったので悲しかったが、スコーンと飛んだら気持ちいいと思う。
その後は山岳コースで上下が激しく、狭いコースで、大体コースが曲がっていてグリーンが見えないという大変な感じでした。でも、まぁまっすぐ飛ぶならそこそこ回れるかな、って感じ。前半は 63 でした。
後半の IN も最初は打ち下ろし。自分はやっぱり低空飛行だったが、カート道に当たって何とか飛んでった。結局ボールはどっか行ったけど。
その後のコースはやっぱり狭かったが、OUT よりグリーンは見えてたと思う。そして山岳なので高低差は激しい。後半も 63 でした。
というわけで合計は 126。ベストスコアだと思う。後半は落ちたと思っていたけど、昼食でビールを飲まなかったのが良かったのかな。そして山岳コースなので疲れた。
家に帰ってきて、体重を量ってみたら 3kg ぐらい減っていた。結構な運動量だったし、天気が良かく、かなりの汗をかいたからかな。水分取ったら元に戻るかも。腹の脂肪は減った気がしない。

Continue reading 一年ぶりぐらいのゴルフはやっぱり楽しかった

Twitterの検索ウィジェットでコメント表示を復活させた

Twitter の機能を利用してコメントフォームを復活させた。なんで Twitter かと言うと、特に意味はない。自分が一番使っているからかな。あと、Twitter 自体がコメントの大集団なので、コメントシステムを作るにはマッチしているだろうと思ったのもある。まぁ、スパムは相変わらず受け付けることになるんだろうけどね。
というわけで、今回使ったのは二つの機能。
Twitter / 検索ウィジェット
Web Intents | Twitter Developers
コメントは全て Twitter 側に保存し、こっちのサイトには何も保存しないことにしました。なので Twitter に投稿できたら、うちのサイトにも表示できてしまうという、恐ろしい仕組みです。
ブログ記事とコメントとの紐付けは記事の ID で行いました。ハッシュタグは imyslash 記事ID c とすることで記事 ID の桁が増えても大丈夫。最後の c が肝ね。
最近は SNS と関係する仕事が多いけど、これ以上は増えないで欲しいもんですわ。みんな、大事なデータは自分のサイトに保管した方がいいよ。って、自分は逆のことしてるけど。

Continue reading Twitterの検索ウィジェットでコメント表示を復活させた

スパムコメントの無限ループ

ブログにスパムコメントが大量に貼り付けられたままだったので、メンテナンスした。
まずはコメントを無効化。何かプラグインとかあるかもしれないけど、そんなの探してる暇はないし、継続的メンテナンスをしていく気もあまりないため。でもコメントないのはちょっと寂しいんだよね。なので Twitter なんかと連携させた何かを考え中。つか、すぐできそうなのを思いついてはいるんだけど、もう遅いので今度にしようかな。
次はスパムコメントの削除。大量だった。7~800件はあったかな。長く続けているからかな。どうやら 2007/10 から書いているらしい。最近は書いてないんだよなー。最低でも月一ぐらいでは続けていきたいな。
で、スパムコメントの削除で Nucleus のイケてないところが露呈。コメント一覧からチェックボックスでコメントを選択、削除実行ボタンを押すと、「バッチ処理の確認」なるボタンが出てくる。その他は「管理ホーム」リンクなど、これから実施する処理を説明する部分はまったくない。そして「バッチ処理の確認」ボタンを押すと削除が実行される。ひどいね、これ。
最初、よく分からんのでボタンを押さずに管理ホームへ戻り、無限ループを繰り返していた。コンソールから DB に直接つないで件数を確認してみると、まったく件数が減っていない。「バッチ処理の確認」ボタンを押すと件数が減った。分かりにくいわぁ。
他にも、コメントから該当のブログ記事に行けなくてイラっときた。まぁ、必須ではないけど、あった方がいいよね。管理画面のテンプレートをいじったら出てくるのかな。まぁ、Nucleus はブログじゃなくて CMS だって言い張っているから仕方がないのかな。作りこみが必要。
かといって今さら MT とか WordPress に乗り換える気はあまりない。むしろ、自作しようかと検討中。時間があったら作りたいけど、時間があったら旅行に行くか寝てるんだろうな。作るのはいつになるのか。