PICK UP

お問い合わせをBacklogでタスク管理しています

TIPS

山崎 康平

WEBサイトを運用されているみなさま、サイト上にお問い合せフォームを設置されていませんか!?
フォームからinfo@等にメールが送信され、メールボックス内でお問い合わせ管理している方は大勢いらっしゃると思います。
ですが、メールボックス内でのお問い合わせ管理ですと、下記のような経験もあるのではないでしょうか。

  • お問い合わせが他のメールで埋もれてしまう
  • お問い合わせの返信担当者が自分ではないと思っていたら自分だった
  • 返信予定日を決めていたが、気がついたら過ぎてしまっていた
  • 返信の状況がわからなくなってしまった(返信済み、アポ調整済み等)

そんな問題を解決するために、弊社では普段からプロジェクトのタスク管理で利用しているBacklogと、WEBサイト上のお問い合わせを連携することにしました!

Backlogとは

BacklogTop

Backlogは、プロジェクト毎に発生する課題などの情報をWeb上で一元管理。インターネット環境があれば、「誰でも・いつでも・どこからでも」プロジェクト管理&課題管理ができます。

弊社では各案件ごとにBacklog上にプロジェクトを作成し、社外の人との連絡手段やタスク管理として活用しています。

さっそくお問い合わせをBacklog連携してみました

結論から言うと、むちゃくちゃ便利です!(笑)
普段から使い慣れているUIということもありますが、お問い合わせ毎に担当者・期限日・ステータス等の設定が可能な上、必要な情報はコメントを残すことで社内で情報を共有することができます!

Bunnyhopでの運用方法

Backlog一覧

参考までに、弊社では下記のような運用をしています。

  1. お問い合わせがあるとAPI経由でBacklogへ課題(タスク)が追加される
  2. 課題の担当者・期限日を設定する
  3. 担当者が対応をおこなったらステータスを完了へ

Backlogでは課題作成・コメントの入力や期限日が近づくとBacklog参加者へメールが送信されますので、自然と社内に状況を周知することができます。
また、Backlogの課題一覧では検索機能も充実しており、完了となった課題を非表示すれば対応しなければいけないお問い合わせだけをひと目で確認することもできますね!

複数のお問い合わせを管理したい場合には

複数のお問い合わせ

Backlogには種別という項目が存在しています。(課題のカテゴリラベルのようなもの)
この種別という項目を各フォーム毎に設定しておけば、複数のお問い合わせフォームであっても一元管理することができます。

Backlog以外での運用も

GitHub

弊社では元々活用していたという理由でBacklogを採用しましたが、Backlog以外の課題管理ツール(RedmineGitHub等)でもAPIが提供されていれば同様にお問い合わせの管理が可能だと思いますので、普段使われている課題管理ツールで利用されてみてはいかがでしょうか。

Backlog連携を実装するためには(技術的なお話)

上記ではお問い合わせをBacklog連携した時のメリットを紹介してきましたが、システム担当者向けに実装例も紹介させていただきます。
※PHP5.2以上を使用した例になります。

Backlogに待望のJSON APIが登場

BacklogApi

Backlogでは今まで「XML-RPC」を利用したAPIが提供されていました。「XML-RPC」ってなんぞやって人も多いと思います。僕もその一人です(笑)
しかし、つい先日APIバージョン2がリリースされ「JSON」を「REST」ベースで通信することができるようになりました!
最近のAPIの主流は「JSON」が使用されていることが多く、「XML-RPC」と比べて参考記事が豊富で実装も容易なので、これからBacklogのAPIを使ってみたいという方にはバージョン2をおすすめします。

ちなみに、弊社では実装当時にバージョン2がリリースされていなかったためやむを得ず「XML-RPC」で実装していますが、PHPで「XML-RPC」を利用するためには「PEAR」や「Zend」等の外部ライブラリを使わないと実装が困難なため、今から「XML-RPC」のAPIを利用することはおすすめできません。

APIを実装する前に

お問い合わせ用のプロジェクト作成

まず始めに、プロジェクトの作成をし、お問い合わせを閲覧するユーザは作成したプロジェクトに参加させておきましょう。

プロジェクトIDの取得

画面上部の「プロジェクト設定」リンクよりプロジェクト設定画面へ遷移してください。
遷移先のURLが「https://~.backlog.jp/EditProject.action?project.id=[プロジェクトID]」の形式になっていますので、このプロジェクトIDを控えておきます。
※プロジェクトIDの他の取得方法が存在しているかもしれませんが、僕は見つけられませんでした…

ユーザの作成

普段使用しているBacklogのユーザを使用しても構わないのですが、運用やセキュリティ上好ましいのでお問い合わせ専用のユーザを作成しておきましょう。
また、作成したユーザは上記で作成したお問い合わせプロジェクトのみ参加するようにして、メールは受信しない設定が望ましいです。

APIキーの発行

上記で作成したユーザでログイン後、API経由で課題登録するために必要なAPIキーの発行をして、キーを控えておきます。

APIの実装

前置きが長くなりましたが、これで準備が整いました!
早速API経由で課題の登録を実装してみます。

これをお問い合わせフォームに仕込むことで、Backlogへ課題が登録されました!されました…が!何故かBacklogから「BadRequest」の文字が… /(^o^)\ナンテコッタイ~~
※nulabさんへお問い合わせ中です。 (2014年7月28日現在)

[2014年7月30日追記]
nulabさんから修正した旨の連絡があり、現在は上記事象が改善されています。

最後に

APIバージョン2はリリースされたばかりで上記のような不具合もあるようですが、ひとまず課題の登録には影響がありませんでしたので運用は可能なはずです。
これでメールボックス内でのお問い合わせ管理とはおさらばできますね!
みなさんも良きBacklog(タスク管理)ライフを!!