Kintone、Slack、Integromatを利用した社内ヘルプデスクの構築の話【詳細】
以前、構築方法の概要について投稿しましたが、今回は実際の手順について投稿したいと思います。ほとんど、参考にさせて頂いた記事と同じ方法ですが、自分の記録も兼ねて投稿させていただきます。少しでもご参考になれば幸いです。
前提条件
1、Integromatのアカウントを取得済み
2、Kintoneがスタンダードプラン
3、Slackのアカウントを取得済み
Integromatでシナリオを作成
①Create a new scenarioをクリック
②SerchにWebhookを入力し、Webhookを選択しContinueをクリック
③Webhookをクリックし、「Custom Webhook」を選択
④AddをクリックWebhook名に任意の文字を入れて、Saveをクリックし、作成されたWebhookURLをコピー
KintoneにWebhookをセット
①Webhook URLに先ほど取得したURLをセット
コピーしたURLにはhttps://までがついているので、セット時には取り除く。※自分はここでハマりました。
アプリの更新を忘れずに
②レコードを作成し、Integromatに通知が行くことを確認
Slackとの連携
①Slackと連携させるために、モジュールをIntegromatに追加
+マークを押す
②Slackをクリック
③Create a Messageを選択
④Run Onceを押して、Kintoneでレコードを作成
⑤Kintoneの入力フォームの各IDが表示されるので、通知内容を選択し作成
通知テスト
①Run Onceをクリックテスト実施
②アプリにレコードを追加
③以下のようにスラックに通知されます。
ステータス更新の通知を作成
ステータス更新は、Integromatの無料通知枠節約のためJavascriptで行います。
①ソース(抜粋)
以下の内容をステータスごとに作成し、Kintoneに設定
kintone.events.on("app.record.detail.process.proceed", function(e) {
if (e.nextStatus.value == '完了') {
var thisUrl = "https://ドメイン.cybozu.com/k/" + kintone.app.getId() + "/show#record=" + kintone.app.record.getId();
var webhookUrl = 'https://hooks.slack.com/services/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';
var payload = {
"text": "タスク<" + thisUrl + "|「" + e.record.文字列__1行__2.value + "」>が完了しました!"
};
return new kintone.Promise(function(resolve, reject) {
kintone.proxy(webhookUrl, 'POST', {}, payload, function(body, status, headers) {
console.log(status, body);
resolve(e);
});
});
}
以下のように通知されます。
最後の方はだいぶ端折ってしまいましたが、こんな感じで作成してみました。最後までお付き合いいただきありがとうございました。
この記事が気に入ったらサポートをしてみませんか?