Slackからkintoneへレコード登録する方法 ~AWS Lambda でつなぐ~ 前編

目次

はじめに

今回は、AWS を使って、拡張性の高さから開発者の間で人気を集めているコミュニケーションツール「 Slack (External link) 」と kintone をつないでいきたいと思います。

Slack はフロー型のコミュニケーションツールで、リアルタイムのコミュニケーションに向いています。
ただ、情報をストックしておきたいことがあるかと思います。
もちろん、Slack には POST 機能など情報をストックできる標準機能はありますが、kintone と組み合わせることで、プロセス管理を組み合わせたり過去の情報を検索できたりと言ったメリットが出てきます。

Slack を仕事で使っていて情報のストックがいまいちしっくりきていない!という方は、ご参考いただき Slack と kintone で強力なビジネスツールを作り上げましょう。

Amazon Lambda(以下 Lambda)と Amazon API Gateway(以下 API Gateway)を使います。
最後まで読んでいただくと分りますが実は、今回はほぼ AWS の設定方法を紹介する記事になってしまいました。 すぐにやってみたい!という方は、まず AWS のアカウントを取得後こちらの記事にて試していただければと思います。

概要

Slack 上で特定の文字のを打つと、kintone の ToDo アプリにレコードを登録するシンプルな連携です。

Slack の Outgoing webhooks を使うことで、Slack のコメントなどの情報を外部の URL に POST できます。
問題は、この渡された情報を kintone のフィールド形式に合わせて成形した後、さらに kintone の REST API を使ってレコード登録をする必要があります。

中間でいろいろごにょごしょ自作するのはとても手間なので、今回は AWS を利用します。

ざっくり説明すると、次の流れで設定します。

  1. Slack の Outgoing Webhook で、Amazon API Gateway で発行した API に POST する。
  2. Amazon API Gateway は、あらかじめ作成した Amazon Lambda の function を呼び出す。
  3. この Lambda function で、Slack から受け取った情報を元に、kintone へのリクエストデータを作成し、kintone REST API を実行しレコード登録する。

若干複雑に見えますが、そこまでたいへんな設定ではありません。
それでは、順を追って設定方法を紹介していきたいと思います。

kintoneアプリ

今回は「シンプル ToDo」というシンプルな ToDo アプリを作成します。

フィールド名 フィールドタイプ フィールドコード
タイトル 文字列(1行) title
詳細 文字列(複数行) detail

また、 kintoneヘルプページ (External link) を参考に API トークンを発行しておきましょう。
アクセス権は、「レコード追加」のみでかまいません。
発行した API トークンは後程使うので、テキストエディタなどにメモしておきましょう。

それでは次に AWS の設定に移っていきますが、続きは後半で紹介したいと思います。

Slackからkintoneへレコード登録する方法 ~AWS Lambda でつなぐ~ 後編>>