チャットワークとは、クラウド型のビジネスチャットツールです。
職場で、プロジェクトのコミュニケーションツールとして利用していますが、かなり使いやすくて、気に入っています。
現在、チャットワークAPIのプレビュー版が公開されていて、申請をすれば利用できるようになります。詳しくはこちらから。
公開されてすぐに申し込んではいたのですが、全く手を付けていませんでしたので簡単にObjective-Cで使ってみました。
HTTPリクエストを投げると、Json形式で結果が返ってきます。それをちょちょいと処理するだけで簡単なプログラムは出来そうです。
[objc]
NSString * const EndPointBase = @"https://api.chatwork.com/v1/";
NSString * const Token = @"自分のトークン";
-(void)getMeInfo
{
NSString *EndPointPath = @"me";
NSURL *base = [NSURL URLWithString:EndPointBase];
NSURL *url = [NSURL URLWithString:EndPointPath relativeToURL:base];
NSMutableURLRequest *request = [self createRequest:url];
// リクエストを送信する(同期通信)
NSError *error;
NSURLResponse *response;
NSData *data = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error];
// NSData → Jsonに変換
id obj = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:nil];
NSLog(@"%@", obj);
}
-(NSMutableURLRequest *)createRequest:(NSURL *)url
{
NSMutableURLRequest *request;
request = [[NSMutableURLRequest alloc] init];
[request setURL:url];
[request setCachePolicy:NSURLRequestReloadIgnoringLocalCacheData];
[request setTimeoutInterval:20];
[request addValue:Token forHTTPHeaderField:@"X-ChatWorkToken"];
[request setHTTPShouldHandleCookies:FALSE];
return request;
}
[/objc]
こんな感じで書いてみたら、NSLogでレスポンスのJsonが出力されました。
現在はAPIトークンを使用した認証しか出来ないので、だれでも使えるようなアプリの開発は難しそうですが、今後、OAuth 2.0による認証方式を提供予定らしいのでそれが出来ればさらに幅が広がりそうですね。
次は、iBeaconを使用して、会社にビーコン端末を置いておいて、出社したらチャットワークの自分の未完了タスクを通知するiPhoneアプリを作ってみようかと思ってます。