コガネブログ

平日更新を目標に Unity や C#、Visual Studio、ReSharper などのゲーム開発アレコレを書いていきます

【Unity】ゲーム再生中に Trello にバグを報告できる「Trello Bug Tracker [PRO]」紹介($17.27)

概要

2017/2/4 に、Trello 連携用のアセット
「Trello Bug Tracker [PRO]」がリリースされました

「Trello Bug Tracker [PRO]」を導入すると、
ゲーム再生中に Trello にバグを報告できるようになります

検証環境

  • Unity 2017.1.1 f1
  • Trello Bug Tracker [PRO] 2.0.1

はじめに

「Trello Bug Tracker [PRO]」を使用するためには
下記のページから Trello のキーとトークンを入手する必要があります

https://trello.com/1/appKey/generate

f:id:baba_s:20170922150557p:plain

トークンは「Token」のリンクを選択して表示されるページで
「認証」ボタンを押すと入手できます

f:id:baba_s:20170922150842p:plain

入手したキーとトークンは後ほど使用するのでどこかにメモしておきます

使用例

「Trello Bug Tracker [PRO]」では Trello にバグを報告するための機能が
プレハブとして用意されているので今回はそちらを紹介していきます

f:id:baba_s:20170922152731p:plain

「Assets/Trello Bug Tracker - Pro/Example/Prefabs」内の

  • Example.prefab
  • Trello Tool.prefab

をシーンに配置します

f:id:baba_s:20170922152744p:plain

そして、Hierarchy ビューで「Trello Tool」オブジェクトを選択して
Inspector で「Personal Trello Infomation」の項目を入力します

項目名 内容
Your Key Trello のキー
Your Token Trello のトークン
Current Board バグの報告先のボードの名前

これで Trello にバグを報告する準備が整いました

f:id:baba_s:20170922152757p:plain

この状態でゲームを開始すると上記のような UI が表示されます

f:id:baba_s:20170922152804p:plain

そして、画面右下のボタンを押すと Trello にバグを報告するための UI が表示されます
ここで、「バグの種類」「名前」「説明文」を入力して
「Send Report」ボタンを押すと、Trello にバグが報告されます

f:id:baba_s:20170922152825p:plain

以上が簡単な使い方の説明になります

カスタマイズ

「Trello Bug Tracker [PRO]」では Trello と連携するためのクラスが用意されているので
自前で Trello にバグを報告する機能を実装することができます

以下に Trello にカードを追加するプログラムを記載しておきます

using DG.TrelloAPI;
using DG.Util;
using System.Collections;
using UnityEngine;

public class Example : MonoBehaviour
{
    private IEnumerator Start()
    {
        var key             = "【Trello のキー】";
        var token           = "【Trello のトークン】";
        var boardName       = "【ボードの名前】";
        var title           = "【カードのタイトル】";
        var description     = "【カードの説明文】";
        var listName        = "【リストの名前】";
        var newCardsOnTop   = false; // カードをリストの上部に追加する場合 true

        // Trello 連携用のインスタンスを作成
        var trello = new Trello( key, token );

        // ボードの情報を取得
        yield return trello.PopulateBoardsRoutine(); 

        // ボードを設定
        trello.SetCurrentBoard( boardName );

        // リストの情報を取得
        yield return trello.PopulateListsRoutine();
        
        // カードを作成
        var card = trello.NewCard( title, description, listName, newCardsOnTop );

        // カードを Trello に送信
        var coroutine = new CustomCoroutine( this, trello.UploadCardRoutine( card ) );
        yield return coroutine.coroutine;

        Debug.Log( "送信完了" );
    }
}

関連記事