作成
キーワード
, ,

iPaaS活用術 | SlackからKING OF TIMEに打刻登録を行う(後編)

BizteX Connectを用いて、SlackからKING OF TIME(以下、KOT)に打刻登録を行う方法を紹介します。 この連携を用いることで、KOTを都度開くことなく、Slack上のボタンをクリックしたりするだけで、出勤や退勤、休憩などの打刻登録を行うことが可能です。 3部に分けてご紹介しており、後編では中編で作成したボタンの押下を検知してKOTに打刻する設定を行います。   

LINEで送る
Pocket

BizteX Connectを活用した業務自動化方法を解説

SlackからKING OF TIMEに打刻登録を行う方法(後編:ボタン押下を検知してKOTに打刻)

BizteX Connectを用いて、SlackからKING OF TIME(以下、KOT)に打刻登録を行う方法を紹介します。

この連携を用いることで、KOTを都度開くことなく、Slack上のボタンをクリックしたりするだけで、出勤や退勤、休憩などの打刻登録を行うことが可能です。
少し連携手順が複雑になりますので、3部に分けてご紹介します。

【設定手順】 ボタン押下を検知してKOTに打刻

中編で作成したボタンの押下を検知してKOTに打刻する設定を行います。
出勤、退勤、休憩のそれぞれでKOTに対して設定するアクションが異なりますので、このシナリオはそれぞれの処理に対して個別で作成する必要があります。

以下では、出勤打刻を設定する例を取って説明します。

①Slack ボタンが押されたことの検知

新規シナリオ作成画面において、アプリの一覧からSlackを選択し、イベント選択画面で『ボタンが押されたことの検知』を選択します。

認証コネクタを選択し、次へをクリックします。

基本設定画面では、中編で各ボタンに設定したアクションIDを入力します。

出勤ボタンに設定したアクションIDを入力します。

アクションIDが思い出せない場合には、中編で作成したシナリオ内の、ボタン設定画面から、各ボタンの編集画面を開けば確認することができます。

入力が完了したら、次へをクリックします。

出力確認画面で、実際にボタンの押下を検知できるか確認します。
サンプル待機をクリックし、続いて、イベント待機ボタンをクリックします。

イベント待機中に、Slackで出勤ボタンをクリックします。
検知ができると、待機中のウィンドウが自動でクローズし、ボタン押下の内容が出力確認画面に反映されます。

問題がなければ、完了して次へをクリックします。

②Slack ユーザ情報の取得 

KOTに打刻する際に、『誰の打刻なのか』を設定する必要があります。
前編のシナリオで、KOTに登録されている従業員情報は取得できていますが、SlackのユーザがKOT上のどのユーザと一致するのかがまだ分かっていません。

そのために、Slackでボタンを押したユーザのメールアドレスなどの情報を取得する必要があります。

アプリの一覧から、Slackを選択して、アクション一覧から、『ユーザ情報の取得』を選択します。

基本設定画面では、どのユーザの情報を取得するのかの設定を行います。
ボタンを押下したユーザの情報を取得したいので、画面右部の出力データの一覧より、『ボタンが押されたことの検知』内の『id』を、『ユーザID』の箇所に入力します。

入力出来たら、次へをクリックして出力確認を行います。

テスト実行をクリックします。
設定したユーザIDから、ユーザ情報を取得します。

取得した内容が正しく表示できれば設定は完了です。
完了して次へをクリックします。

③Google Sheets データの検索

続いて、Slackから取得したユーザ情報がKOTのどの従業員と一致するのかを特定します。
KOTの従業員情報はスプレッドシートに一覧で出力しているので、その一覧からSlackに登録されているメールアドレスで検索をかけ、一致する従業員情報でKOTに打刻を行います。

アプリの一覧から、Google Sheetsを選択し、アクション一覧から、『データの検索』を選択します。

認証コネクタを選択し、次へをクリックします。

ファイル選択画面において、スプレッドシートを選択をクリックします。
表示されるウィンドウから、KOTの従業員情報を出力しているシートを選択します。

スプレッドシートを選択出来たら、次へをクリックします。

基本設定画面で、検索対象のデータが含まれるシートを選択します。
ヘッダ行、取得する行数はデフォルト設定のままで構いません。

選択出来たら、次へをクリックします。

続いて、検索条件を設定します。
スプレッドシートの各列のヘッダとヘッダ列の名前が表示されています。

どのヘッダをどのデータで検索するかを指定することができます。

今回は、KOTの情報をSlackに登録されているメールアドレスで検索します。
検索条件の『メールアドレス』の項目に対し、Slackのユーザ情報の取得アクションの出力データ内の、『profile』内の『email』を入力します。

入力できたら次へをクリックします。

検索ができるかテストを行います。
テスト実行をクリックすると、実際に設定した内容でスプレッドシートから検索を行います。

検索結果が正しく表示されれば問題ありません。
完了して次へをクリックします。

④一般コネクタ 日時フォーマットの変換①

KOTに打刻する際は、『2021-09-01T09:00:00+09:00』および『 2021-09-01 』のような形式で日時データを設定する必要があります。
しかし、Slackでの時刻の表現はUNIX時間になっているので、時刻のフォーマットが合っていません。
そこで、Connect内で時刻のフォーマットをKOTに登録するために変換する必要があります。

アプリの一覧から、一般を選択し、アクションの一覧から、日時フォーマットの変換をクリックします。

基本設定では、変換元となるUNIX時間と、変換先のフォーマットを指定します。
UNIX時間は、Slackでボタンが押された時刻を指定します。
出力データの一覧から、『ボタンが押されたことの検知』内の『actions』内の『action_ts』を選択して入力します。
※tsはtimestampの略であり、UNIX時刻でそれが行われた時刻を表現しています

日時フォーマットは、『2021-09-01T09:00:00+09:00』を指定します。

出力確認を行い、正しく時刻が変換されたら問題ありません。
完了して次へをクリックします。

⑤一般コネクタ 日時フォーマットの変換②

『2021-09-01T09:00:00+09:00』の形式の時刻が取得できましたが、KOTへの打刻のためには、『2021-09-01』形式の日付データも必要になります。
もう一つ日時フォーマットの変換アクションを作成します。

アプリの一覧から、一般を選択し、アクションの一覧から、日時フォーマットの変換をクリックします。

先ほどと同じく、基本設定では、変換元となるUNIX時間と、変換先のフォーマットを指定します。
出力データの一覧から、『ボタンが押されたことの検知』内の『actions』内の『action_ts』を選択して入力します。

今回は、日時フォーマットは、『2021-09-01』を指定します。

出力確認を行い、正しく時刻が変換されたら問題ありません。
完了して次へをクリックします。

⑥KOT 打刻データの登録

続いて、ここまで取得してきたデータを基に、KOTに打刻するアクションを設定します。

アプリの一覧から、KING OF TIMEを選択し、アクションの一覧から、打刻データの登録を選択します。

基本設定では、打刻する内容を入力します。

従業員識別キーの項目には、スプレッドシートからSlackのメールアドレスで検索をした結果の情報を入力します。
出力データの一覧から、『データの検索』内の、『values』内の『従業員識別キー』を入力します。

打刻時間および勤務日は、先ほど変換した日時データを入力します。
※入力する日付のデータ形式が異なりますので、入力間違いに注意してください

入力が完了したら、次へをクリックします。

出力確認画面で、正しく打刻ができるかテストを行います。
テスト実行をクリックすると実際に打刻が行われ、打刻された内容が表示されます。

内容に問題が無ければ完了して次へをクリックします。

⑦Slack メッセージ内のブロックの削除(任意)

最後に、打刻に使用したSlackのボタンメッセージを削除する設定を行います。
打刻に使用したブロックが残っていると、再度打刻をしてしまうことが可能なので、打刻ミスにつながる可能性があります。

そのため、同じブロックで再度打刻ができないようにブロックを削除します。
なお、必ずしもこのアクションは設定する必要はありません。

アプリの一覧から、Slackを選択し、アクション一覧から、『メッセージ内のブロックの削除』を選択します。

基本設定画面で、削除するブロックの情報を設定します。

出力データの一覧の中の、『ボタンが押されたことの検知』内から、チャンネルID、メッセージのts(タイムスタンプ)、ブロックIDを入力します。
※ブロックIDは、『0』の方ではなく、『1』の方を指定してください

入力が完了したら、次へをクリックします。

テスト実行を行い、実際にブロックの削除ができるか確認します。
Slackを確認し、実際にブロックが無くなっていれば問題ありません。

Slackではこのような形式でボタンが削除されています

⑧Slack メッセージの投稿 (任意)

最後に、打刻が完了した旨のメッセージを、ボタン付きのメッセージに対するスレッドでの返信形式でSlackに投稿します。
なお、この設定は必ずしも行っていただく必要はありません。

アプリの一覧から、Slackを選択し、アクション一覧から、『メッセージの投稿』を選択します。
認証コネクタを設定し、次へをクリックします。

ボタンを表示させたチャンネルにメッセージを投稿します。

メッセージの種類はチャンネルを選択します。
チャンネルの入力欄の『カスタム入力』をONにします。
右側の出力データの一覧から、『ボタンが押されたことの検知』内の『channel』内の『id』を入力します。
メッセージには任意のメッセージを入力します。

入力が完了したら、次へをクリックします。

オプション設定画面で、スレッド形式での返信を行うための設定を行います。

スレッド返信を行うためには、スレッドTSの入力項目に、返信先のメッセージのタイムスタンプ(ts)を設定します。
画面右側の出力データの一覧から、『ボタンが押されたことの検知』内の『message』内の『ts』を入力します。

入力が完了したら、次へをクリックします。

出力確認画面で、テストを行います。
テスト実行をクリックすると、実際にSlackへのメッセージ投稿が行われます。
ブロック付きメッセージにスレッド返信ができていれば、成功です。

⑨シナリオの保存と有効化

3つ目のシナリオの設定はこれで完了です。
最後に、右上の保存ボタンをクリックしてシナリオを保存します。

シナリオ有効化をONにしておくと、このシナリオがボタンの検知をもとに自動で稼働します。

退勤や休憩開始や休憩終了などの設定を行う場合は、それぞれでシナリオを作成してください。

おわりに

これで、Slackでのメッセージ投稿とボタンのクリックだけでKOTに打刻を自動で行う設定が完了しました。
SlackからKOTの打刻ができることで、打刻を行う手間が減りますし、打刻漏れの減少にも繋げることができます。
出退勤だけでなく、休憩開始や休憩終了などの他の勤怠登録も行うことができます。

是非、本記事を参照いただき自動化をお試しいただければと思います。

LINEで送る
Pocket