【kintone→Chatwork API連携】kintoneでレコード追加したら自動でChatworkに通知する

働き方改革

kintoneに情報を登録しても、誰も見てくれない…。
そんなときは、kintoneとチャットワークをAPIで連携させちゃいましょう。
初心者でも無料で簡単に設定することができます。

できること

kintoneでレコードを作成したらチャットワークに通知を送信できます。
※ただし、PCでレコード作成した場合のみ。

設定手順

  1. kintoneでカスタムJSを使用する際は、「JSEdit for kintone」プラグインの導入がマジでおすすめです。
    こちらのサイトを参考に、プラグインのインストールと、プラグインの追加をしてください。
  2. プラグインを追加したら、プラグインの設定画面から「PC用のJavaScriptファイル」を選び「新規作成」をクリック。
    ファイル名入力画面がでたら適当に名前をつけて「OK」します。
  3. デフォルトで入力されているスクリプトは全部消します。
  4. 下のスクリプトをまるっとコピーして、テキストエディタに貼り付けます。
  5. スクリプトの上部に初期設定の部分があるので、少なくとも以下の3項目を書き換えます。
    ・kintoneのサブドメイン
    ・チャットワークAPIトークン(チャットワークのAPI設定で取得できます)
    ・メッセージを送信したいチャットルームID(URLが https://www.chatwork.com/#!rid99999999 なら 99999999 )
  6. 修正が終わったら、「保存」ボタンをクリックして保存したら準備完了です。
(function() {
"use strict";
kintone.events.on("app.record.create.submit.success", function(event) {

//初期設定ここから

// kintone サブドメイン (xxxxx.cybozu.com の xxxxxの部分)
var subdomain = "xxxxx";
// chatwork APIトークン(チャットワークのAPI設定で取得)
var cw_token = 'xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx';
// chatworkルームID(チャットワークURLの最後の数字部分 https://www.chatwork.com/#!rid99999999 なら 99999999)
var room_id = '99999999'; 
// 送信したメッセージを自分から見て未読とするか
// 未読としない:0 未読にする:1
var self_unread = 1;

 //初期設定ここまで

        var body = "";
        // レコードのデータ取得

        var user = kintone.getLoginUser();
        body += user["name"] + "さんが〇〇を登録しました!:)";
        body += "\n https://" + subdomain + ".cybozu.com/k/"+ event.appId +"/show#record=" + event.recordId;

        if(!body) return;
        
        var url = 'https://api.chatwork.com/v2/rooms/'+ room_id +'/messages';
        var headers = {
            'X-ChatWorkToken': cw_token,
            'Content-Type': 'application/x-www-form-urlencoded'
        };
        var params = 'body=' + body + "&self_unread=" + self_unread;
                
        kintone.proxy(url, 'POST', headers, params).then(function(args) {
            //success
            console.log(args[1], JSON.parse(args[0]), args[2]);
            
        }, function(error) {
            //error
            console.log(error);  //proxy APIのレスポンスボディ(文字列)を表示
        });
   });
})();
 

通知する文章のカスタマイズ

23行目付近にある、

body += user["name"] + "さんが〇〇を登録しました!:)";

の部分は適切な文言に修正してみてください。

まとめ

今回はkintoneにカスタムJavaScriptを設定してチャットワークに通知をとばす方法とスクリプトをお伝えしました。
kintoneのイベント app.record.create.submit.success がPCのみ利用可のため、PCからしか利用できませんが、少しの作業で簡単にAPI連携することができました。
kintoneとチャットワークを密に連携させて、よりスマートに働き方改革しましょう!

弊社ではkintoneの導入や運用サポートも行っています。お気軽にお問い合わせください!

コメント