タスクワールド(Taskworld)ブログ

とにかく使いやすい!実際の業務で重宝する機能が満載!

〜API連携により、タスクワールドの可能性が大幅に広がります!〜

API


今回は Taskworld API で情報を取得する Javascript のサンプルプログラムをご紹介します。こちらは認証ユーザーに紐づく情報を取得してワークスペース内の情報をツリー状に表示しますので、登録情報のご確認や仕様理解のご参考にお使いいただけます。

本稿ではプログラムの使い方と実装のポイントをご説明します。


サンプルプログラムの使い方

まずはサンプルの使い方をご説明します。こちらのファイルを PC にダウンロードして解凍して下さい。

※本記事の公開時点ではセキュリティ上の理由から API サーバ側で CORS 制限を掛けています。そのため本プログラムをWEB サーバーから直接配信する場合は情報取得時にクロスドメインエラーが発生しますのでご注意ください。

htmlファイルをブラウザで開くと以下のように表示されますので、email と password 欄に登録済みユーザーの認証情報を入力して「情報取得」ボタンをクリックします。

tool01

認証情報を間違えると以下のように result 欄にエラー情報が表示されます。この場合は再入力してリトライしてください。

tool02_autherr

認証に成功すると以下のようにユーザー情報とワークスペース情報が表示されます。

tool03_authok

「ユーザー情報」には認証したユーザーの登録情報とアクセストークン、デフォルトスペース ID(ユーザー登録時最初に作成したワークスペース)が表示されます。

「ワークスペース情報」には、ユーザーが参加しているワークスペースの一覧が表示されます。(default)となっているのは認証したユーザーのデフォルトスペースです。

ワークスペース名がASCII文字以外の場合、ワークスペース名はハッシュコードの形になります。これはプロジェクト ID とは違うので注意してください。

※なお、こちらは記事公開時点の仕様であり、今後変更される可能性があります。

ワークスペース名をクリックすると、アコーディオンが展開してワークススペースの詳細を表示します。

tool04_workspace

丸括弧でくくった数字は下位のアイテムの件数です。

「channels」「projects」のアイテムをクリックすると各々の詳細を表示します。

「channels」はチャットの情報です。

「general / project channel(s)」 はそれぞれワークスペースとプロジェクトのデフォルトのチャットです。

「group channels 」は任意で作成したグループチャット、「direct channels 」はダイレクトメッセージです。チャット情報を展開すると以下のようになります。

tool05_channels

「project(s)」はプロジェクトの情報です。アコーディオンを展開するとプロジェクトの詳細とタスクリストが表示されます。タスクリストとタスクはさらにクリックして詳細を表示できるようになっています。

tool06_projects



以上がサンプルプログラムの使い方です。


実装のポイント

このプログラムの実装のポイントとしては、階層化された情報を順番に取得するための仕組みを設けた点がまず挙げられます。タスクワールドのオブジェクトの情報を取得するには上位オブジェクトの ID を指定する必要があるため、必然的にこのようなスタイルになります。

また、一度にすべての関連情報を取得すると大量の通信が発生するため、本プログラムではアコーディオン表示を展開した時に追加情報を取得しています。

イベントごとに行う処理は以下の通りです。

★「情報取得」ボタン押下時
・auth(ユーザー認証)
・user.get-info(認証ユーザーのユーザー情報を取得)
・workspace.get-user(ユーザー名表示のためワークスペースのユーザー情報を取得)
・workspace.get-all(ワークスペースの情報を取得)
・channel.get-all(各ワークスペースのチャット情報を取得)

★ワークスペース表示展開時
・project.get-all(プロジェクト情報取得)
・tag.get-all(タブ名表示のためタグ情報を取得)

★プロジェクト表示展開時
・tasklist.get-all(タスクリスト取得)

★タスクリスト表示展開時
・tasklist.get-tasks(タスク情報取得)



本プログラムでは各アイテムを識別しやすくするために、ユーザーやタグについては登録名も表示しています。ですが、以下の情報は記事公開時点ではAPIから取得できませんので、こちらはタスクワールド管理画面で確認していただく必要があります。

・日本語のワークスペース名
・プロジェクトチャットのプロジェクト名



まとめ

いかがでしたか?今回は情報取得のみでしたが、更新や追加の API を組み合わせれば自由なデザインでタスクワールドを操作できるようになります。興味がある方はぜひトライしてみてくださいね。


--------------

タスクワールドは、15日間無料でトライアル利用が可能です。
トライアル期間中は、アナリティクス機能を含む、そのすべての機能を無制限で使えます。
日本語によるサポートもバッチリなので、ぜひ気軽にトライアルスタートを!

twbanner_700x230_ja

1-cR7Xny-Rt1dGa1JGiexWBw

1-LXIE6IOdez6aMNcva6C6Bg

〜タスクワールド導入事例のご紹介:株式会社クラウドナイン〜

f84e74cb6b4df4502a09de338b1dc363

株式会社クラウドナインは、2014 年7月に設立されたゲームの開発・運用を軸とする会社です。RPGを得意とするゲームディベロッパーで、2018年7月26日には、ブラウザゲーム 「HUNTER×HUNTER バトルコレクション」 および 「HUNTER×HUNTER アドバンスコレクション」の運営を開始したことも発表されました。日々、さまざまなプロジェクトの管理に“追われている”という、同社のディレクター・辻口誉人さんに、タスクワールド導入を決めたきっかけや、導入して間もない現在の使い方などについてお話を伺いました。

7f93bb7b2c9e5b740e775d5b7605bee5
株式会社クラウドナイン 辻口 誉人さん

タスクワールド導入のきっかけを教えて下さい。

グループ会社の役員の方から「この管理ツールいいよ」と勧められたのがタスクワールドでした。無料で使っていたけれど、すぐに有償アカウントにしたというお話を伺って、すぐに導入を決めました。

すぐに導入を決めたポイントというのはあるのですか?

引き継ぎをするという大きな目的がありました。なので、何か管理ツールを入れて抜け漏れのないように進めていきたいと思っていました。使いやすそうだなという印象だったので、即決でしたよ。ただ、最初に言っておきたいことがあります…。正直なところ、まだ使いこなせていない状態なんです。逆に今回この場をお借りして、使い方を教えていただきたいな〜なんて思っています(笑)

なるほど。では、こういった使い方をしたい!ここの使い方がわからない!など、ざっくばらんにお話ください。

ありがとうございます!プロジェクト管理専門ツールで業務管理をすることには、まだ慣れていない部分が大きく、「使えそう!」と思って導入したタスクワールドは、まだ宝の持ち腐れ状態なので(笑)、ぜひいろいろ教えてください。

ベストな使い方をアドバイスさせていただきたいので、辻口さんの現在の業務内容を教えていただけますか?

売上、ゲームのスケジュール管理・策定がメインです。各セクションの担当者をタスクごと、施策ごとに振り分けて管理します。タイトルがリリースされたら、今度は売上状況を見ながら直近のスケジュールの管理・調整を行なっています。タイトルリリースで終了!にはならないので、ずっとスケジュールに追われている感じです。

0a77cee510dee377809fa3a51c53ecb5


膨大なスケジュールやタスクの管理のためにタスクワールドを導入したというわけですね。

まさにそうです。最終的にはツールを介して最終的な報告書を提出するということまでイメージしています。実際に使っている画面をお見せしますが…。まだ使いこなしが足りていないのが、バレちゃいますね(笑)。

まだ導入されて間もないですし、フル活用はこれからですね!毎日、追われるようにして複雑化が進む複数のプロジェクトを進行させているという状況下、新しいツールを取り入れるのは、なかなか一筋縄ではいかないことだと思います。

これまで、プロジェクト管理系の専門ツールを導入したものの、利用が浸透せずに、フェードアウトしてしまったケースがあります。日々スケジュールやタスク内容が変わるため、ツールを使う前に、口頭のコミュニケーションのみで進行し、それだけで解決させてしまうといった感じです。そうなると、メンバーにとって、ツールを使うことは手間になってしまいます。

9c48f88ad6afb5f7a19fd8ca05ee7f4c


辻口さん以外のチームメンバーは、タスクワールドを毎日の業務オペレーションに取り入れる利点を、まだ十分に把握できていないのが現状ですかね?

そうですね。みんな、タスクワールドがどれほど便利なのかはわかっているはずですが、実践的な利点を理解してもらうのは、まさにこれからといった感じですね。私自身としては、既に「オーバービュー」が便利で使いやすいと特に実感しており、ディレクターという特殊な立場上、この機能を一番の軸として使っていくと思います。

新ツール導入に関してのこれまでの過程があるなか、タスクワールド採用を決めた最大の理由は何ですか?

操作性ですね。最初に使った時の感触がとても良かったんです。ウェブ感がないというか、通信している感じがまったくしない。アプリっぽい感じがいいなと思いました。使いやすそうなので、引き継ぎ業務をきっかけに導入を進めていくツールとしては最適だと感じましたね。

タスクワールドにこんな機能があれば、もっと便利になると思うことはありますか?

使いこなせていないからか、パッとは出てこないですね。あえて言うとすると、アカウント作成の過程が少し面倒だったかなというイメージはあります。まだまだ使いこなせていないのに、アカウント作成が面倒なんていうのも何ですが...。

社内にツール利用を定着させるには、ルールを作ることがとても効果的です。タスクワールド導入により、業務オペレーションが大幅に改善したとのフィードバックをして頂いた企業の多くが、「タスクワールド利用に関しての社内ルール策定とその徹底した実行」が、最も大切だとおっしゃっています。

なるほどです。個人的に使っている分にはとにかく使いやすいと感じています。デジタル付箋のようなイメージでメモとして使えたりしますから。本日教えていただいた機能と、自分が使いやすいと感じている機能を、しっかりと自分の中で消化してから、ルールを作るという流れに持っていけたらと思っています。「何を話そうか」、「そもそもまだ使いこなせていない」と、いろいろ考えながら今日のインタビューを迎えたのですが、とても参考になりました。「チームとしてきちんと使いこなそう!」と改めて思うきっかけにもなりました。ありがとうございます!



--------------

タスクワールドは、15日間無料でトライアル利用が可能です。
トライアル期間中は、アナリティクス機能を含む、そのすべての機能を無制限で使えます。
日本語によるサポートもバッチリなので、ぜひ気軽にトライアルスタートを!

twbanner_700x230_ja

1-cR7Xny-Rt1dGa1JGiexWBw

1-LXIE6IOdez6aMNcva6C6Bg

〜API連携により、タスクワールドの可能性が大幅に広がります!〜

今回は Taskworld API でタスクを登録するサンプルプログラムをご紹介します。

Javascript(jQuery)と PHP で、フロント/サーバそれぞれからリクエストを送信する場合のサンプルです。

API

それでは、Let's スタート!

※API のリファレンスはこちらの、アジアサーバー向けのドキュメントを参照してください。
https://asia-api.taskworld.com/#introduction

前回の記事「イッキに解説します!タスクワールド APIの使い方!」もご参照ください。

------

Javascript で Taskworld API を呼び出してみよう!

まずは Javascript です。

以下のようなフォーム画面からタスクワールドにタスクを登録するプログラムを見てみましょう。

js02_view

1. ソースコード

サンプルソースはこちらです。

ajax 関数で リクエストを送信して、画面に結果を表示するだけのシンプルな内容です。

js01_source

2. 認証キー・IDを用意

タスク登録には以下のパラメータが必要になります。タスクワールドのデータを確認しておきましょう。それぞれの取得方法は前回の記事を参考にしてください。

・認証キー
・スペースID
・プロジェクトID
・リストID


ソースに各パラメータを定義したら、ファイルを .html 形式で任意の場所に保存します。

このファイルをWebブラウザで開くと先ほどのフォームが表示されます。

3. API 呼び出しを実行

それでは API 呼び出しを実行してみましょう。

下のようにフォームのテキスト欄にタスク名を入力してボタンを押すと、ajax 通信で非同期リクエストが送信されます。

js03_view

result 欄に「OK」と表示されたら処理成功です。

タスクワールドのプロジェクトを表示すると、以下のようにタスクが追加されていることが確認できますね。

js04_tw

なお、API でタスクを作成する際は、タスク名しか設定ができないのでご注意ください。

期限などを設定するには、別途タスク更新(task.update)を行う必要があります。


PHP で Taskworld API を呼び出してみよう!

次はサーバから PHP で Taskworld API を呼び出すサンプルです。

今回は、タスク登録の後にタスク更新も実行して、期日などの詳細設定を同時に行ってみましょう。

php00_tw_sample_img


1. ソースコード

PHP のサンプルソースはこちらになります。

2. POST リクエストの送信方法

今回は POST リクエストを2回実行するので、送信処理を関数化しています。

関数ではリクエストボディを送信するために stream_context_create でストリームコンテキストを作成し、file_get_contents を実行します。

コンテキストオプションの詳しい説明はこちらを参照してください。

もしパフォーマンスなどが気になる場合は、file_get_contents の代わりに curl を使用すると良いでしょう。

php01_postfunc


3. 認証キー・IDを用意

タスク登録に必要なパラメータを用意します。それぞれの取得方法は前回の記事を参考にしてください。

・認証キー
・スペースID
・プロジェクトID
・リストID


用意したパラメータをプログラムで以下のように定義します。

新しく登録するタスクの名前は引数で受け取るようにしましょう。

php02_api_defs


4. タスクの登録・更新

タスク登録とタスク更新の実装は以下のようになります。

下図の上部「①タスク登録」がタスク登録を実行するブロックです。先ほど作成した POST 送信関数に URL、APIコマンド名、パラメータを渡していますね。

登録時はコマンドに "task.create" を指定します。

php03_api_calls

タスク登録に続き、タスク更新の実装です。

図の「②タスク更新」のブロックで、タスク ID と以下の詳細情報をクエリパラメーターに設定しています。コマンドには ”task.update” を指定します。

・タスク ID(直前に実行した登録リクエストのレスポンスから取得)
・タスクのポイント数
・タスクの色
・説明
・タスクの開始日(=現在時刻を設定)
・タスクの期日(=1週間後を設定)

5. API 呼び出しを実行

PHP の実行環境にソースファイルを配置して、コンソールから実行してみましょう。
下図のように実行時引数でタスク名を渡すと、その名前でタスクが登録されます。


php04_console


タスクワールド上でタスクリストを確認すると、リアルタイムでタスクが登録されます。

php05_tw_add_task

赤枠で囲んだ箇所は task.update で更新した部分です。期日などの設定が確認できますね。


タスクワールドをもっと便利に!

今回ご紹介した処理を応用することにより、外部システム上での作業進捗を、タスクワールドと連携することができ、プロジェクト管理における利便性が大幅に向上します。

例えば Wordpress の場合を考えてみましょう。

下書きを投稿した時にタスクを登録するプラグインを作成すれば、スタッフの誰かが記事を作成する度にタスクが追加されて、タスクワールド上で未公開記事の状況が確認できるようになります。

煩雑なプロジェクト管理を自動化/一元化できると助かりますよね。

ぜひ、お使いのシステムで Taskworld API を活用してみてください!

--------------

タスクワールドは、15日間無料でトライアル利用が可能です。
トライアル期間中は、アナリティクス機能を含む、そのすべての機能を無制限で使えます。
日本語によるサポートもバッチリなので、ぜひ気軽にトライアルスタートを!
twbanner_700x230_ja

1-cR7Xny-Rt1dGa1JGiexWBw

1-LXIE6IOdez6aMNcva6C6Bg

↑このページのトップヘ