土曜日, 5月 10, 2025
No menu items!
ホームニューステックニュース出退勤打刻漏れを防ごう! #Windows - Qiita

出退勤打刻漏れを防ごう! #Windows – Qiita



出退勤打刻漏れを防ごう! #Windows - Qiita

現在、弊社では「出退勤打刻の漏れ」が問題となっている。

弊社の打刻方法は、各社員に配布されたICカードを専用端末に読み込ませることで行う方式である。打刻が完了すると、専用の勤怠管理サイト上で出退勤時刻を確認できるようになる。

しかし、打刻を忘れた場合は、後でPCの起動ログなどを証跡として提出し、勤怠時間の修正依頼を行わなければならない。依頼を受けた人事部は、その証跡を目視で確認し、必要な修正を手動で許可する。件数が少なければ大した手間ではないが、毎日十数件に及ぶと負荷が非常に大きくなる。

このような背景から、「出退勤打刻の漏れを防ぐ」ための仕組みを考案した。

筆者はそこら辺にいる一般社員であり、以下のような制約が存在する。

  • 有料ツールは導入不可
  • 管理者権限を必要とするPC設定の変更は不可
  • 勤怠管理サイトのAPIは使用不可
  • 実装に割ける時間は数時間程度

このような制約下でも、以下のようなシンプルな仕組みであれば実現可能と判断した。

  1. PCの起動・シャットダウン時に何らかの通知を発行する。
  2. 通知を私用のスマートフォンで受信する。
  3. 通知経由で勤怠管理サイトをすぐに開けるようにする。

システムイメージ.png

専用のスマホアプリを自作し、リッチなUIで実装することも検討したが、時間的な制約から断念した。代替案として、Pushbulletという外部サービスを利用し、通知機能を簡単に実現することにした。

Pushbulletとは?
PC・スマートフォン間で手軽に通知やファイルを送信できるサービスである。
気になる方は公式ホームページへ→ https://www.pushbullet.com/

まずは退勤打刻の漏れを防ぐことを目指し、以下の手順で仕組みを構築した。

やったこと

  1. Pushbulletのアカウントを作成し、アクセストークンを生成
  2. Pushbulletのスマホアプリを私用のスマホにインストール
  3. PushbulletのAPIを叩くだけの.batファイルを作成
  4. タスクスケジューラで新しいタスクを作成
    トリガー:ユーザーセッションからの切断時
    操作:上記.batファイルを実行

スクリーンショット 2025-05-08 134924.png
スクリーンショット 2025-05-08 134954.png

.batファイルの中身

@echo off
curl -X POST "https://api.pushbullet.com/v2/pushes" ^
  -H "access-token: Pushbullet上で生成したアクセストークン" ^
  -H "content-type: application/json" ^
  --data-raw "{\"type\":\"link\",\"title\":\"おつかれさん\",\"body\":\"勤怠打刻を確認してね\",\"url\":\"勤怠管理サイトのURL\"}"

初期実装後、PCをシャットダウンして動作確認を行ったが、プッシュ通知は届かなかった。調査の結果、タスクスケジューラの「ユーザーがログオンしているときのみ実行する」という設定が原因であることが判明した。

「ユーザーがログオンしているかに関係なく実行する」という設定への変更を試みたが、一般ユーザーの権限では変更できなかった。

image.png

意地でも自分の権限で出来る範囲で納めたかったので、再度方針を見直し、手動操作を前提とした構成に変更した。

やったこと(修正版)

  1. Pushbulletのアカウントを作成し、アクセストークンを生成(変更なし)
  2. Pushbulletのスマホアプリを私用のスマホにインストール(変更なし)
  3. プッシュ通知送信とPCシャットダウンを同時に実行する.batファイルを作成
  4. 作成した.batファイルをデスクトップ等に配置してすぐ実行できるようにした

修正版.batファイル

@echo off
curl -X POST "https://api.pushbullet.com/v2/pushes" ^
  -H "access-token: Pushbullet上で生成したアクセストークン" ^
  -H "content-type: application/json" ^
  --data-raw "{\"type\":\"link\",\"title\":\"おつかれさん\",\"body\":\"勤怠打刻を確認してね\",\"url\":\"勤怠管理サイトのURL\"}"
shutdown /s /f /t 5

退勤時にこのファイルを実行すれば、通知の送信とPCのシャットダウンを一括で行える。ログオフ前に通知が発行されるため、権限不足による実行失敗の心配もない。

Screenshot_20250508-175331.png

今回作成したシステムには明確な問題が存在する。

それは、「.batファイルの実行を忘れず行えるなら、そもそも打刻を忘れることがない」ということである。

とはいえ、何も対策しないよりは遥かにマシでなので、今後もしより良い仕組みを思いついたら改善したい。

ちなみに、出勤打刻の漏れについては「ロック画面の画像を変更する」という力技である程度防止できることが判明したので、実装する気が起きなかった。

1000015645.jpg



フラッグシティパートナーズ海外不動産投資セミナー 【DMM FX】入金

Source link

Views: 2

RELATED ARTICLES

返事を書く

あなたのコメントを入力してください。
ここにあなたの名前を入力してください

- Advertisment -

Most Popular

Recent Comments