8
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

エンジニアのエンジニアによるノンプログラミングのためのZapier(課題管理をやりたかった)

Last updated at Posted at 2019-12-23

この記事は ハンズラボ Advent Calendar 2019 24日目の記事です。

今年も、この季節がやってまいりました。
去年も一人で過ごしていました。
今年も一人です。

本当はAWS re:Inventで発表されたDeepComposerを試してみた!
というモノを書きたかったのですが、間に合わず。

次回はカラオケ平均70点の音痴男性がDeepComposer試してみたでお会いしましょう。:microphone:

ではなく。

はじめに

弊社はチームにもよりますが、Backlogを主に利用しています。
合わせて、Slackも使用しています。(Slackに関する弊社AdbentCalendar記事)

POSチームは決済ログの調査依頼がきたら調査しなければなりません。
そのためチケット制にしようという声が上がり、今回の記事になりました。

要はSlackからBacklogに課題登録したい。

序章

  • 1863年11月19日リンカーンはゲスティバーグ演説を行った。
  • 2019年11月19日私はBacklogを整理行った。
  • 同年12月20日POSチームBacklogが荒廃した。

Backlogにない課題もちらほら。
世紀末です。

現代の知恵を使用する

  • チケット制にしよう。
  • Backlogの課題追加自動化できるらしいよ。
  • SlackのWorkflowもあります。
  • ノンコーディングのほうがなんかネタになりそう

ここから導き出されたモノ。

Zapier
IFTTTよりも優れてるらしい。
制限は。うん。。。

フロー(制作側)

  1. Slack Workflowで雛形を作る。
  2. ZapierでZapを作る。

フロー(利用側)

  1. Workflowの雛形で入力
  2. リアクションをつける。

ではまいろう。

Slack Workflowで雛形を作る。

Workflowを利用します。
まずなんだと思われる方は、こちらの記事をお読みいただければと思います。

名前決め

image.png

Actions menuを選択

Pasted_Image_2019_12_23_18_10.png

導入するチャンネルの決定

image.png

雛形フォームの作成

Pasted_Image_2019_12_23_18_20.png

image.png

今回は

  • summary(Short answer) -> Backlogの課題名
  • discription(Long answer) -> 課題の詳細

をそれぞれ入力させるようにしました。

画像では、Send submitted responses to a channel...にチェックはついていませんが
つけて、回答の吐き出し先を導入するチャンネルへしてください。

Zapの作成

Zapierってなんぞやって方は、こちらの記事をご覧ください。
非常にわかりやすくまとめられており、参考になりました。

リアクションがつけられたら発火させる

Pasted_Image_2019_12_23_18_35.png

image.png
Choose Trigger Event -> New Reaction Addedを選択。

image.png
Reaction -> あまり頻繁に使用されないリアクションを選択しましょう。(カスタムリアクションも選択可)
Channel -> 導入するチャンネルを選択。

一度スプレッドシートへ吐き出す。

image.png

data1 data2 data3

上記の表のようなスプレッドシート(シート1)を作成します。

image.png

slackで特定のリアクションをつけた投稿を取得します。

  • data1 -> リアクションをつけたslackの本文
  • data2 -> リアクションをつけた人の名前
  • data3 -> タイムスタンプ

あとで使いやすいようにログとして保存するのが目的です。

フォーマットする。

遅くなりましたが、Slackから取得できる本文は以下のようになります。

Slackでリアクションをつけた本文
*testform* submission from @daisudaisuke 
*sample* てすとだす 
*sample2* ここは何も関係ない 
*discription* 来週末(12/26)帰ります。 皆さんお元気で。 良いお年を。 お体にはお気をつけて。

image.png

先ほどの手順で取得した、テキストを整形します。
image.png

Separatorは*にしているので、summary,discription内にあればそこで改行されてしまいますのでご注意を。

スプレッドシートに整形したものを連携する。

from backlog_title discription

上記の表のようなスプレッドシート(シート2)を作成します。

image.png

image.png

  • from -> フォームの回答者
  • backlog_title -> Backlogの課題名
  • discription -> 課題の詳細

となっています。
backlog_titleは上記のsummaryと同じです。

ちなみにoutput_itemはこれでも指定できます。

output_item
{{xxxxxxx__output__Item 3}} // submission from @daisudaisuke
{{xxxxxxx__output__Item 5}} // てすとだす
{{xxxxxxx__output__Item 7}} // ここは何も関係ない
{{xxxxxxx__output__Item 9}} // 来週末(12/26)帰ります。 皆さんお元気で...

BacklogにPOSTしよう。

image.png

貼り付けた画像_2019_12_24_2_00.png
  • BacklogAPIキー
  • projectId
  • issuTypeId

これはcurlとかで頑張って取得してください。

あとはBacklogAPIを読んで課題登録に必要なものをかけば終わりです。

ね。簡単でしょ?

この記事が書かれているということは、コーディングしたくてウズウズしているはずです。
ノンコーディングってしんどいということがわかりました。

もうやりたくないです。:innocent:

というのは嘘で。
コーディングできるのであればもっと自由にできると信じています。

さくっと作るときとても便利な機能だと感じました。

もちろん、重複登録できるし、BacklogAPIキーが自分のとかは内緒だよ。
サンタさんが来てくれないよ:santa:

ハンズラボ Advent Calendar 2019」 記念すべきクリスマス:christmas_tree:の25日目は @Angelan1720 さんです!

8
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?