【GAS】Backlog의 잔여 태스크(과제 티켓)를 GAS로 취득하여 채팅 워크에 흘린다
소개
티켓 구동의 개발을 계속하고 있다면, 일상적인 되돌아가서 나머지 티켓 태스크를 확인할 기회가 있다고 생각합니다.
그것이 아침회의 장소이거나, 저녁회이기도 합니다만, 그때마다 Backlog를 열어 검색을 걸어-하고 하면 귀찮습니다. 모처럼 API가 공개되어 있다면 정기적으로 티켓 목록을 채팅 워크에 게시하면 확인도 빠르지 않을까 생각했습니다.
채팅 워크에 게시할 뿐만 아니라 스프레드시트에도 쓸 수 있도록 하고 있습니다.
어려운 GAS 스크립트로 죄송합니다, 뭔가 도움이되면.
Backlog API 참조는 여기
ぇぇぺぺr. 누아 b-in c. 코 m / 그럼 / 두 cs / 바 ck ぉ g
테카 GAS는 무엇입니까?
GoogleAppsScript의 약자로 간단히 말하면 Google 제품의 프로그램 환경입니다. JavaScript로 작성할 수 있습니다. 프로그램을 작성하는 것으로, 예를 들면 스프레드시트를 자동화하거나, 서비스간의 제휴를 실시하는 것이 가능하게 됩니다.
쉽게 사용하는 경우
새 스프레드시트 만들기 > 도구 > 스크립트 편집기
온라인 편집기가 열리고 JavaScript를 작성합니다.
필요한 것
API 키는 각 참조를 참조로 얻습니다.
GoogleAppsScript의 약자로 간단히 말하면 Google 제품의 프로그램 환경입니다. JavaScript로 작성할 수 있습니다. 프로그램을 작성하는 것으로, 예를 들면 스프레드시트를 자동화하거나, 서비스간의 제휴를 실시하는 것이 가능하게 됩니다.
쉽게 사용하는 경우
새 스프레드시트 만들기 > 도구 > 스크립트 편집기
온라인 편집기가 열리고 JavaScript를 작성합니다.
필요한 것
API 키는 각 참조를 참조로 얻습니다.
GAS 스크립트
function task() {
// スプレットシート取得
var mySS = SpreadsheetApp.openById("***スプレットシートのID***");
// スプレットシートの書き込む位置
var range= mySS.getSheetByName("**シートの名前**").getRange(1, 1);
// BacklogプロジェクトのID
var pjid = **PJ ID**;
// ChatWorkに投稿する本文
var honbun = "";
// APIキーでBacklog認証&取得
var resissue = UrlFetchApp.fetch("https://***.backlog.jp/api/v2/issues?apiKey=*******APIキー*******&projectId[]="+pjid+"&statusId[]=1&statusId[]=2&statusId[]=3&order=&count=100");
if (resissue.getResponseCode() != 200) {
return false;
}
var issuelist = JSON.parse(resissue.getContentText());
// 一旦、シートをクリアにする
mySS.getSheetByName("**シートの名前**").getRange("A2:G"+issuelist.length+"").clearContent();
for(var i=1; i<issuelist.length; i++) {
// スプレッドシートに書き込む
range.offset(i, 0).setValue(issuelist[i]["issueKey"]);
range.offset(i, 1).setValue(issuelist[i]["summary"]);
range.offset(i, 2).setValue(issuelist[i]["description"]);
range.offset(i, 3).setValue(issuelist[i]["assignee"]["name"]);
range.offset(i, 4).setValue(issuelist[i]["priority"]["name"]);
range.offset(i, 5).setValue(issuelist[i]["status"]["name"]);
range.offset(i, 6).setValue(issuelist[i]["dueDate"]);
// 投稿するメッセージの本文
honbun += issuelist[i]["issueKey"] + " ";
honbun += issuelist[i]["summary"] + " ";
honbun += "担当:" + issuelist[i]["assignee"]["name"] + " ";
honbun += "優先度:" + issuelist[i]["priority"]["name"] + " ";
honbun += "ステータス:" + issuelist[i]["status"]["name"] + "\n";
honbun += "https://****.backlog.jp/view/" + issuelist[i]["issueKey"] + "\n[hr]";
}
//ここからはChatWork
var client = ChatWorkClient.factory({token: "***ChatWorkのAPIキー***"});
/* 決められた記法をもとに整形。
投稿する部屋のIDと共に
メッセージを投稿します。*/
client.sendMessage({
room_id:***room ID***,
body: "[info][title]残タスク一覧[/title]\n"+honbun+"\n現在の残タスクになります。完了しているタスクについてはステータスを変更してください。\n [/info]"
});
}
과제 목록 얻기
https://***.backlog.jp/api/v2/issues?apiKey=*******APIキー*******&projectId[]="+pjid+"&statusId[]=1&statusId[]=2&statusId[]=3&order=&count=100
쿼리 status
는 과제의 상태이므로, 완료 이외의 「미 대응(ID:1)」 「처리중(ID:2)」 「처리 완료(ID: 3)」를 지정.
마지막 쿼리 count
는 취득할 건수를 지정하고 있습니다.
여기서는 100건.
쿼리 매개 변수에 대한 자세한 내용은 여기에서
ぇぇぺぺr. 누구 b-in c. 코 m / 그럼 / 두 cs / 바 ck ぉ g / 아피 / 2 / 게 t- issue s
ChatWorkClient 라이브러리 추가
ChatWork에 메시지를 게시하려면 GAS 측에서 ChatWork 클라이언트 라이브러리를 추가해야 합니다.
스크립트 편집기
리소스> 라이브러리
에서 라이브러리를 추가합니다. 프로젝트 키는 아래에 설명되어 있습니다.
htps : // 기주 b. 코 m / cw - 시부야 / 짱 rk - c ぃ 엔 t
확장자를 "ChatWorkClient"로 설정하십시오.
그리고는 스크립트 에디터로부터 시계와 같은 아이콘(트리거)으로 원하는 시간에 이 함수가 실행되도록(듯이) 설정.
결과
스프레드시트
ChatWork
GAS는 재미있다.
Reference
이 문제에 관하여(【GAS】Backlog의 잔여 태스크(과제 티켓)를 GAS로 취득하여 채팅 워크에 흘린다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kingpanda/items/44667f2ddc39e760ea8b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
function task() {
// スプレットシート取得
var mySS = SpreadsheetApp.openById("***スプレットシートのID***");
// スプレットシートの書き込む位置
var range= mySS.getSheetByName("**シートの名前**").getRange(1, 1);
// BacklogプロジェクトのID
var pjid = **PJ ID**;
// ChatWorkに投稿する本文
var honbun = "";
// APIキーでBacklog認証&取得
var resissue = UrlFetchApp.fetch("https://***.backlog.jp/api/v2/issues?apiKey=*******APIキー*******&projectId[]="+pjid+"&statusId[]=1&statusId[]=2&statusId[]=3&order=&count=100");
if (resissue.getResponseCode() != 200) {
return false;
}
var issuelist = JSON.parse(resissue.getContentText());
// 一旦、シートをクリアにする
mySS.getSheetByName("**シートの名前**").getRange("A2:G"+issuelist.length+"").clearContent();
for(var i=1; i<issuelist.length; i++) {
// スプレッドシートに書き込む
range.offset(i, 0).setValue(issuelist[i]["issueKey"]);
range.offset(i, 1).setValue(issuelist[i]["summary"]);
range.offset(i, 2).setValue(issuelist[i]["description"]);
range.offset(i, 3).setValue(issuelist[i]["assignee"]["name"]);
range.offset(i, 4).setValue(issuelist[i]["priority"]["name"]);
range.offset(i, 5).setValue(issuelist[i]["status"]["name"]);
range.offset(i, 6).setValue(issuelist[i]["dueDate"]);
// 投稿するメッセージの本文
honbun += issuelist[i]["issueKey"] + " ";
honbun += issuelist[i]["summary"] + " ";
honbun += "担当:" + issuelist[i]["assignee"]["name"] + " ";
honbun += "優先度:" + issuelist[i]["priority"]["name"] + " ";
honbun += "ステータス:" + issuelist[i]["status"]["name"] + "\n";
honbun += "https://****.backlog.jp/view/" + issuelist[i]["issueKey"] + "\n[hr]";
}
//ここからはChatWork
var client = ChatWorkClient.factory({token: "***ChatWorkのAPIキー***"});
/* 決められた記法をもとに整形。
投稿する部屋のIDと共に
メッセージを投稿します。*/
client.sendMessage({
room_id:***room ID***,
body: "[info][title]残タスク一覧[/title]\n"+honbun+"\n現在の残タスクになります。完了しているタスクについてはステータスを変更してください。\n [/info]"
});
}
https://***.backlog.jp/api/v2/issues?apiKey=*******APIキー*******&projectId[]="+pjid+"&statusId[]=1&statusId[]=2&statusId[]=3&order=&count=100
쿼리
status
는 과제의 상태이므로, 완료 이외의 「미 대응(ID:1)」 「처리중(ID:2)」 「처리 완료(ID: 3)」를 지정.마지막 쿼리
count
는 취득할 건수를 지정하고 있습니다.여기서는 100건.
쿼리 매개 변수에 대한 자세한 내용은 여기에서
ぇぇぺぺr. 누구 b-in c. 코 m / 그럼 / 두 cs / 바 ck ぉ g / 아피 / 2 / 게 t- issue s
ChatWorkClient 라이브러리 추가
ChatWork에 메시지를 게시하려면 GAS 측에서 ChatWork 클라이언트 라이브러리를 추가해야 합니다.
스크립트 편집기
리소스> 라이브러리
에서 라이브러리를 추가합니다. 프로젝트 키는 아래에 설명되어 있습니다.
htps : // 기주 b. 코 m / cw - 시부야 / 짱 rk - c ぃ 엔 t
확장자를 "ChatWorkClient"로 설정하십시오.
그리고는 스크립트 에디터로부터 시계와 같은 아이콘(트리거)으로 원하는 시간에 이 함수가 실행되도록(듯이) 설정.
결과
스프레드시트
ChatWork
GAS는 재미있다.
Reference
이 문제에 관하여(【GAS】Backlog의 잔여 태스크(과제 티켓)를 GAS로 취득하여 채팅 워크에 흘린다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/kingpanda/items/44667f2ddc39e760ea8b
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
스프레드시트
ChatWork
GAS는 재미있다.
Reference
이 문제에 관하여(【GAS】Backlog의 잔여 태스크(과제 티켓)를 GAS로 취득하여 채팅 워크에 흘린다), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/kingpanda/items/44667f2ddc39e760ea8b텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)