2
2

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 1 year has passed since last update.

スマホから2タップでIEYASU(HRMOS)に勤怠登録する

Last updated at Posted at 2022-02-03

身内需要のための記事ですが、せっかくの機会ということでQiita初投稿します。
追記: 弊社 Tech Blog と併せての投稿となりました

実現したいこと

私の勤務先では勤怠管理に IEYASU というシステムを使っています。
追記:「HRMOS勤怠 by IEYASU」に名称が変わりました

個人的に転職したばかりで、前職のものよりはるかに使いやすいシステムのため、日々感謝しております。
ただ1点感じたのは、出退勤時間を打刻するだけなら少し手間が多いことです。

  1. PC/スマホのロックを解除する
  2. Webアプリ/ネイティブアプリを開く
  3. 社員番号とパスワードを入力し、ログインする(Webアプリの場合は都度必要)
  4. 「出勤」または「退勤」ボタンを押す

login.png

このボタンを押すためだけにこれだけのステップを踏むのは、毎日となるとちょっと面倒です。そこで、なるべく簡単に済むようにしました。
なお、手元にあるのがiPhoneのためiOSの例となりますが、Androidでも似たことが可能のようです。

作戦

IEYASUにもAPIはありますがTokenの有効期限があるため、再発行の手間を考えて今回は避けます。

代わりに、IEYASUとSlackの連携機能を利用します。

IEYASUのAppに対して「出勤」または「in」とチャットすることで出勤の打刻が、「退勤」または「out」で退勤ができます。
この方法には有効期限がなく、使い続けることができます。
chat.png
そこで「Slackに定型文チャットを送る操作」をなるべく簡単に済ます作戦を取ります。

IEYASUとSlackの連携

なにはともあれ、まずは連携から始めます。
あとで使用するIDを取得するため、この作業はブラウザ版Slackから行います。

「App」セクションにIEYASUがいればOKです。
いない場合は、「+」ボタンから追加しましょう。
ボタンは2つありますがどちらでも同じです。
chat2.png

追加できたら、「IEYASU」Appとのチャットを開いた状態で、URLを確認します。
URLの書式は
https://app.slack.com/client/{ワークスペースID}/{チャンネルID}
となっているので、チャンネルIDの方をどこかにコピーしておきます。
(チャットでも、チャンネルIDと呼ぶようです。)

SlackAppの作成

続いて、このチャットに投稿するためのSlackAppを作ります。
SlackAPIのページから "Create New App" を選択し、お好みの名前をつけて保存します。

このAppは「ユーザー自身としてチャットに投稿する」ことが必要なので、そのための権限を設定します。「Permissions」をクリックし、
slack_2-2.png

「User Token Scopes」の方に「chat:write」を設定します。
「Bot Token Scopes」は不要です。
slack_3-2.png

以上の準備ができたら、使用するワークスペースにインストールします。
インストール後、Tokenが発行されるのでどこかにコピーしておきます。
slack_4-2.png

iOSショートカットの作成

最後に、SlackAppを実行するための環境をiPhone上に作成します。
iPhoneに「ショートカット」Appをインストールし、新規作成します。

先ほどのチャンネルに投稿するためには、chat.postMessageメソッドを使います。

curl -X POST -d 'token={token}' -d 'channel={channel_id}' -d 'text={text}' 'https://slack.com/api/chat.postMessage'

iOSショートカットでcurlコマンドに相当するのは「URLの内容を取得」というアクションで、このように設定します。textに「in」と入れているので、この場合は出勤となります。
shortcut.png

さらに、出勤と退勤の時間はだいたい決まっているので、こちらの方法を利用して、1ボタンで出勤と退勤がどちらも打てるようにします。

最終的に出来上がったのがこちらです。6時〜14時なら出勤、それ以外なら退勤の登録を行います。
shortcut2.png

できたら、最後にショートカットをお好きな位置に配置します。
私はロック画面から使えるようにしたいので、ウィジェット画面に配置しています。
widget2.png

最後に

以上で完成です。
これで、iPhoneのロック画面からでも勤怠登録ができるようになりました。
私は手動トリガーで運用していますが、GPSやNFCタグも設定できますので、勤務形態に合わせて設定していただくとさらに便利かと思います。

なお、「ショートカット」AppはmacOS(Monterey以降)にも対応しています。私の場合、Macが目の前にある場合はわざわざiPhoneを取り出す方が面倒だと感じるので、メニューバーからも実行できるようにしています。もちろんシェルスクリプト等にすればMac以外でも実行可能なので、環境に合わせてご活用ください。
menubar.png

参考

2
2
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
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?