4
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.

サービス改善提案をGitHub Issue へ半自動転換するNoCode活用事例

Last updated at Posted at 2020-12-19

これは何

NoCode アドベントカレンダー の20日目の記事です。

NoCode ツールである Zapier を使って、
Slack の投稿を半自動で Github Issue へ転換した事例の紹介です。

Zapier とは

Easy automation for busy people. Zapier moves info between your web apps automatically, so you can focus on your most important work.

業務を効率化することを主眼に、アプリケーションとアプリケーションの間を連携するためのツールです。 
類似プロダクトとしてはIFTTTが挙げられます。

今回紹介する Slack と Github はもちろん、Google SpreadSheet や Salesforce などメジャーなツールはだいたい連携可能です。

実現方法

Slack にワークフローを追加する

弊社ではSlack には #サービス改善提案 というチャンネルへサービスへの改善提案を受け付けています。
このチャンネルには Slack Workflow があり、決まった形式で投稿することができます。

image.png

上記のフォームで入力されたものを以下のように繋げます。

image.png

  1. まずは入力内容をSlackに投稿
  2. その投稿のスレッドに、Github Issue のタイトルにあたる入力をできるフォームを作成
  3. Zapier が拾いやすい形式で再度スレッドに投稿

Slack 投稿を Zapier で受け取り

もしかしたらそのままアカウント情報入れて使えるかもしれないので、Zap(Zapierではワークフローをこう呼びます)の雛形を共有しておきます。 => https://zapier.com/shared/4d78a1c85d3648a21a3d54b0cb90fe24c8803de3

image.png

ステップは以下の通りです。

  1. 特定のチャンネル、今回は #サービス改善提案 の投稿を検出

  2. 上の "Zapier が拾いやすい形式" で投稿した中の特徴的な文字列を使って、マッチした時のみ続きを実行(このケースだと issueタイトル です。)。このステップの目的は、無関係な雑談などの投稿がIssue化されることを防ぐことです。

    • image.png
  3. issueタイトル:(.*) の形式で入力されているものを Github Issue タイトルに転換するため抽出

    • image.png
  4. 元の投稿リンクとタイトル、投稿内容を Github Issue として投稿

    • 貼り付けた画像_2020_12_19_22_04.png

終わりに

もともとNoCodeツールはハードル高いイメージだったのですが、使ってみるととても便利でした。
サービス間の連携をコードを書いて実現すると、結構なコード量になるのですが、Zapierだと実質ちょっとだけ正規表現書けば終わりくらいのイメージです。
フルスクラッチで作ると最低でも1〜2日はかかるだろうという連携機能を1~2”時間”もあれは作れてしまいます。

4
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
4
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?