Textwellで何月何日何時何分どこにいたか証明するアクション AlibiMaker

私にはアリバイがあります。


Textwell 1.2.1
分類: 仕事効率化,ユーティリティ
価格: \300 (Sociomedia)

もはや練習用のアクション。位置情報の取得方法を覚えたので、それを使ってみました。緯度や経度、高度の取得はJavascriptに内蔵されています。GPS機能が付いている。問題は住所表示の方法で、逆ジオコーディングと呼ばれる手法が必要なんですが、Googleマップを借りようと思うと複雑。いろいろ探してHeartRailsのサービスにしてみました。

navigator.geolocation.getCurrentPosition(getLocation, error);

function getLocation(x){
  lat = x.coords.latitude;
  lng = x.coords.longitude;
  alt = x.coords.altitude;
  address = getAddress(lng,lat);
  time = getTime();

  text = time+"\n"+address+"\n";
  T("add",{text:text});
}

function getAddress(x,y){
  q = new XMLHttpRequest();
  url = "http://geoapi.heartrails.com/api/json?method=searchByGeoLocation&x="+x+"&y="+y;
  q.open("get",url,false);
  q.send(null);
  res = q.responseText;
  a = JSON.parse(res).response.location;
  return a[0].postal+" "+a[0].prefecture+a[0].city+a[0].town;
}

function getTime(){
  d = new Date();
  YY = d.getFullYear();
  MM = Zero(d.getMonth()+1);
  DD = Zero(d.getDate());
  hh = Zero(d.getHours());
  mm = Zero(d.getMinutes());
  ss = Zero(d.getSeconds());
  return YY+"/"+MM+"/"+DD+" "+hh+":"+mm;
}

function Zero(x){
  return ("00"+x).slice(-2);
}

function error(x){
  T("error",{title:x.message});
}

登録リンクはこちら→ http://tinyurl.com/ly3m95v



起動すると、現在位置を取得していいか尋ねてきます。



OKを押すと、文末に時刻と位置情報が追記されます。


HeartRails | ハートレイルズ | ザ・ウェブサービス・カンパニー
ザ・ウェブサービス・カンパニーユーザー登録 | ログイン HeartRails Geo API郵便番号/住所データGet URL InfoURL 解析CloudSpaceクラウドホスティングsa.yo...
ShareHtmlのサムネ作成に使われているサービス。いろいろ使えそうなAPIが揃っていて、アクション作成のネタ探しに胸が膨らみます。個人使用なら無料。


でも推理小説くらいだと思うんですけどね、一週間前のピンポイントな時刻の所在を覚えてる人って。たいてい忘れてる。アリバイがある時点で犯人だといって良い。