携帯サイト技術にはまり込んだ

発端は、携帯からメモを入力し、サーバーにその受信結果を蓄積しようと考えたこと。
ASPで出来るはずだと思い、久しぶりに試しをしてみた。
ある程度はすぐに出来るようになった。
だんだんに画面デザインと機能を変更したりして改善してきた。

とりあえずの適用は、出費メモである。
家計を付けるにしても、レシートのないものなんかは結構忘れてしまうもの。
レシートとかあっても、データ入力をしないことには結局は処理できない。

それで家に帰らなくても、思い立って時間があるときに、携帯にメモをすることでデータ化できればいいと考えたもの。携帯の中のアプリでデータ蓄積することでももちろん構わないのだが、何分、携帯のアプリに関しては以前に作成してみようかと思い立ったこともあるのだが思っただけで実現できてないのでこの方法は今は無理。それで考えたのが、我が家のサーバーに直接データを入力してしまおうということである。

データ蓄積も出来るようになって、後は、このデータを家計に取り込む処理を作ればいい。これは追々となりそう。
とにかく、それよりも、携帯を使っての処理で、いろいろ気になることとか興味とか出てきて、昨日からはほとんどパソコンとにらめっこである。(家では今は話もほとんどしないような冷却状態なのでかえって没頭できる)
その結果、今までわからなかったことが結構見えるようになってきた。

認証の考え方から始まり、携帯の特定で固体識別情報のこと、それをしているうちに、「iモードID」なるものが新しく使えるようになっていたり、それからわき道にそれ、「iモードコンテンツ:オープンiエリア サービス」、「GPS機能使用」まで話が広がってしまった。
「iモードID」に関しては、情報はあるのだが、実際の例としてはPHPとかPerlとかのものばかりで、ASPに関してのものが見つからなかったのである。そして「拡張ヘッダ」なる言葉がでてくるのだが、これが何なのかわかるようでわからない。Perlでは「$ENVで参照できる」とあるが、Perlは使ったことがない。実はかなり前に本だけは買っていたのを思い出し、探し引っ張り出してきた。
どうもENVは環境変数らしい。ならば言語には関係なくASPでもできると思うのだが。
とにかく出来るケースを見てみないと理解不能なのでやってみるか、と、本を一冊読破(さらーっとだが)。そしてソフトをダウンロード、インストール、そしてやってみた。苦労のかいあって、使えるようになった。
最終的には、やはりサーバー環境変数のことであり、ASPでも取得できるところまでわかった。

  • 形態からの入力認証

  パスワード方式は面倒が多い

  • 固体識別情報

  携帯電話ごとユニークは識別情報を利用する方法。
  ただ、送信のたびに「送信確認」を要求される。
  (セッション管理ができれば、最初だけに削減できるが、携帯ではクッキーが扱えないため、セッション管理ができない。それで、URLにセッション情報を埋め込むことで実現できるが、スマートでないし、ちょっと弱い。また、それでも最初だけは識別情報送信の確認が要求される。)

  • セッション管理

ASPのマニュアルに書いてあるのを以前から見ていたが、意味を掴みかねていた。インターネットを見てもそこの理解を解くものはなかった。苦労しながら、やっと何となくわかってきたけど。

  • iモードID

携帯電話機の固体識別と言うよりユーザー識別になるようだ。機種変更してもユーザーが引き継がれれば同じIDとなるようだ。
これをあらかじめサイトに登録しておくことにより、ユーザーの特定が確実になる。
念のため、これにログオン時にパスワードを組み合わせればセキュリティに万全となるだろう。

  • オープンiエリア

サーバーに緯度経度情報を取得できる。
応答は速い。基地局をもとに表示しているようなので、誤差大きいかな。数百メートル。

  • GPS機能

これは、より正確に自分の位置の情報を求め、サーバーにも緯度経度情報を取得できる。
ただ、GPS位置測定に時間がかかるのが難点か。
これを使って、ナビというか、実際の行動のルート記録になりそうだが。
これと時間を合わせて記録することで、ジョギングの計測やマラソンの走行状況の記録に利用できそうに思ったのだが。
これと地図の融合ができれば、面白いものになると思う。
この前までジョギングでのラップタイム計測には、携帯のカメラ機能で写真を撮影し、その撮影時刻からラップタイムを算出する仕掛けを作って利用してした。

  • Perl

はじめてやってみた。
昔に買っていた本を読んでみた。

  • 拡張ヘッダ

あまり漠然とした言葉のようで、わかるようでわからなかった。ipv6に関係するようでもあるが。HTTPの拡張ヘッダのようである。環境変数であることが書いてあってもASPでどうすればいいのかピンと来なかった。
なぜかPerlをやってみて環境変数の表示の中に該当のGUIDのキーワード(iモードID利用のときの指定)を見つけ、やっと納得。ASPでのサーバー環境変数表示でも同じことをやってデータのあることを確認した。
結局はSAPだけで実現できたのであるが、副産物としてPerlの勉強ができたのもいいとするか。

  • 機能の指定方法

拡張ヘッダのことで当初にASPで確認できなかったのは、各種機能の指定方法が少しずつ違っているために、GUIDの指定方法を間違えていて、結果がうまくとれなかったことから別の問題かと通り過ぎてしまったことであった。
(このときに取得が確認できていれば、Perlまで引っ張り出すこともなかった。そうしたらPerlを勉強する機会もなかったろうが)
識別情報取得機能は、Aタグに、utn=utn を指定する。「〜 utn=utn」
iモードIDは、URLに埋め込む形で指定する。「〜?guid=ON」