アーカイブ

‘api’ タグのついている投稿

OK Wave API

2010 年 1 月 7 日 コメントはありません

OK WaveのAPIを使おうかと思って探したのですが、中々見つからず、
苦労した挙句、見つけたサイトが以下、
http://zerosp.com/mt/archives/okwave-websearvice.php

一応、念のため一部転記させて頂きます。詳しくは、上記サイトを。

アクセスするURL

http://search.okwave.jp/search?

必須パラメータ

  • mode : モード指定。searchにすること。
  • word : 検索文字列(UTF8)

省略可のパラメータ()内がデフォルト値です。

  • type : 検索タイプ。keyword : キーワード検索。 word : 自然文検索。(keyword)
  • start : 検索結果取得開始位置。(0)
  • items : 検索結果取得数。(20)
  • booleam : 複数キーワード時の検索条件。and : AND検索。or : OR検索(and)
  • sort : ソート条件。(score)
  • order : 並び順。asc : 昇順。desc : 降順。(desc)
  • before_date : 日付での絞り込み[yyyy-MM-dd] (以前全て)
  • after_date : 日付での絞り込み[yyyy-MM-dd] (当日)
  • ques_stat : 質問ステータス絞込み条件。all : 全ての質問。before : 受付中。after : 締め切済み。(all)
  • ans_stat : 回答ステータスでの絞り込み。all : 全て。before : 回答無し。after : 回答あり。best : 良回答・次点あり (all)
  • thank_stat : お礼ステータスでの絞り込み。all : 全て。before : お礼無し。after : お礼あり。(all)
  • remak_stat : 補足ステータス日付での絞り込み。all : 全て。before : 補足無し。after : 補足あり。(all)
  • c : カテゴリ絞込み。(all)
  • target : 検索対象、複数指定可能。ques_title : タイトル。ques_text : 質問本文。answer : 回答本文。thank : お礼。remark : 補足。best_answer : 良回答。(デフォルト すべての項目)
  • take : データ取得対象、複数指定可能。(デフォルト すべての項目)

ソートパラメータで使用できる値

  • score : スコア順
  • date : 日時順
  • answer_count : 回答数順
  • remark_count : 補足数順
  • thank_count : お礼数順
  • pv : アクセス数順
  • qst_instructive : 役に立った順
  • instructive : 参考になった順
カテゴリー: 未分類 タグ:

Remember The MilkのAPIを使う方法

2009 年 12 月 4 日 コメントはありません

久しぶりに、なかなかうまく行かない!と悩んでしまいました。なんで情報がないんでしょうねぇ。

さて、最近、すごい!量のタスクが重なり、何から手をつけていいのか悩む状態になっており、これを解消するために、再びGTDの手法を使おう!ということにしていました。
基本手書きをメインとしており、最初はそれで良かったのですが、GTDでいうプロジェクトの数が、すごいことになってしまい機能不全になりかけてしまいました。
そこで、今後はRTMだ!ということで、使おう!と思いたったわけです。RTMにはAPIが公開されており、そこから手帳にタスクを書き出すようにしようというところで、悩みが広がりました。

で、数時間の成果をここでまとめておきます。
(0)予めAPI_KEYを取得しておく
(1)今後も使えるよう簡単な関数を作っておきます

1
2
3
4
5
6
7
8
9
10
11
12
13
function getRtmSecretKeyParams($params){
   $params['api_key']=API_KEY;
   $params['perms']='delete';
   ksort($params);
   $skey='';
   foreach($params as $key=>$val){
     $skey .=$key.$val;
     $urlparams .='&'.$key.'='.$val;
   }
   $skey=md5(SECRET_KEY.$skey);
   $urlparams=substr($urlparams,1);
   return $urlparams.'&api_sig='.$skey;
 }

(2)続いてfrobを獲得する

1
2
3
4
5
6
7
8
9
define('END_POINT_URL','http://api.rememberthemilk.com/services/rest/');
//get frob
$params=array();
$params['method']='rtm.auth.getFrob';
$ret=getRtmSecretKeyParams($params);
$ret=file_get_contents( END_POINT_URL.'?'.$ret);
$xml=simplexml_load_string($ret);
$frob=(string)$xml->frob;
echo $frob;  //これがfrobの値です

(3)次に、Tokenを取得します。
ここで、とっても長い時間を使ってしまいました。
(2)の続きでプログラムを進めて構わないのですが、

1
2
3
4
5
6
7
8
9
define('AUTH_URL','http://www.rememberthemilk.com/services/auth/');
$params=array();
$params['method']='rtm.auth.getToken';
$params['frob']=$frob;
$ret=getRtmSecretKeyParams($params);
echo "まず承認プロセスを経るためにURLを表示します。これをコピペしてブラウザで表示して下さい\n";
echo AUTH_URL.'?'.$ret."\n";
echo "承認プロセスを経たら、以下のURLを表示させて下さい\n";
echo  END_POINT_URL.'?'.$ret ."\n";

ここで、最初に表示されるURLをブラウザで表示させ、クリックが必要です!(コレが重要!)

(4)続いて、同じパラメータを利用してTokenを取得です
上記の最後の行で表示したURLを表示します。
これで、tokenが取得できます。

基本これで、OKなのですが、この後は

1
2
$params['method']='rtm.auth.checkToken';
$params['auth_token']=$token;

をこなして、tokenを確認させないといけません。
面倒なんですが、こういうものみたいです。
あとは、

1
2
$params['method']='rtm.tasks.getList';
$params['auth_token']=$token;

など、自由にいけます。

カテゴリー: 未分類 タグ: ,