[2026-07-02 00:00:02] [cron_daily_schedule_fcm] Notification Results:
[2026-07-02 00:00:02] [cron_daily_schedule_fcm] -------------------------
[2026-07-02 00:00:02] [cron_daily_schedule_fcm] All schedules reset: sent = 0
[2026-07-02 00:00:02] [cron_mark_yesterday_absent] start
[2026-07-02 00:00:02] [cron_daily_schedule_fcm] Active status updated based on leave dates
[2026-07-02 00:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 00:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 00:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 00:00:02] [cron_mark_yesterday_absent] {"success":true,"date":"2026-07-01","marked_absent":4,"users_absent":[{"user_id":4,"name":"vital"},{"user_id":13,"name":"test"},{"user_id":17,"name":"Sathish"},{"user_id":20,"name":"Tamil"}]}
[2026-07-02 00:00:02] [cron_mark_yesterday_absent] end
[2026-07-02 00:00:03] [cron_daily_schedule_fcm] User Tamil → Schedule 271 (active=1) sent to 1 device(s)
[2026-07-02 00:00:03] [cron_daily_schedule_fcm] User Naveen → Schedule 272 (active=1) sent to 1 device(s)
[2026-07-02 00:00:03] [cron_daily_schedule_fcm] User Sathish → Schedule 273 (active=1) sent to 1 device(s)
[2026-07-02 00:00:04] [cron_daily_schedule_fcm] User Madesh → Schedule 274 (active=1) sent to 1 device(s)
[2026-07-02 00:00:04] [cron_daily_schedule_fcm] User Tamil → Schedule 276 (active=1) sent to 1 device(s)
[2026-07-02 00:00:05] [cron_daily_schedule_fcm] User Naveen → Schedule 277 (active=1) sent to 1 device(s)
[2026-07-02 00:00:05] [cron_daily_schedule_fcm] User Sathish → Schedule 278 (active=1) sent to 1 device(s)
[2026-07-02 00:00:05] [notification_received] Schedule 274 acknowledged by user_id=15 (event=received)
[2026-07-02 00:00:05] [cron_daily_schedule_fcm] User Madesh → Schedule 279 (active=1) sent to 1 device(s)
[2026-07-02 00:00:06] [notification_received] Schedule 279 acknowledged by user_id=15 (event=received)
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] User pooarasan → Schedule 281 (active=1) sent to 1 device(s)
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] User pooarasan → Schedule 282 (active=1) sent to 1 device(s)
[2026-07-02 00:00:06] [notification_received] Schedule 281 acknowledged by user_id=6 (event=received)
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] User pooarasan → Schedule 283 (active=1) sent to 1 device(s)
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] -------------------------
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] Total Sent: 11
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] Total Skipped: 0
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] Execution Time: 4.31 sec
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] -------------------------
[2026-07-02 00:00:06] [cron_daily_schedule_fcm] Done.
[2026-07-02 00:01:27] [notification_received] Schedule 283 acknowledged by user_id=6 (event=received)
[2026-07-02 01:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 01:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 01:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 02:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 02:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 02:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 03:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 03:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 03:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 03:50:03] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-07-02 03:50:45] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-07-02 03:50:49] [attendance_code_created] date=2026-07-02 type=first_half
[2026-07-02 03:55:02] [notification_received] Schedule 282 acknowledged by user_id=6 (event=tapped)
[2026-07-02 04:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 04:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 04:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 04:00:02] [notification_received] Schedule 283 acknowledged by user_id=6 (event=tapped)
[2026-07-02 04:00:03] [fcm_token] FCM token saved/updated: user_id=15 device_type=android
[2026-07-02 04:10:01] [notification_received] Schedule 279 acknowledged by user_id=15 (event=tapped)
[2026-07-02 04:11:54] [attendance_login] user_id=6 date=2026-07-02 first_half
[2026-07-02 04:22:28] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-07-02 04:22:41] [attendance_login] user_id=24 date=2026-07-02 first_half
[2026-07-02 04:25:15] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-07-02 04:25:18] [attendance_login] user_id=7 date=2026-07-02 first_half
[2026-07-02 04:25:44] [fcm_token] FCM token saved/updated: user_id=18 device_type=android
[2026-07-02 04:25:45] [notification_received] Schedule 272 acknowledged by user_id=18 (event=received)
[2026-07-02 04:25:46] [notification_received] Schedule 277 acknowledged by user_id=18 (event=received)
[2026-07-02 04:25:47] [attendance_login] user_id=18 date=2026-07-02 first_half
[2026-07-02 04:25:52] [attendance_login] user_id=15 date=2026-07-02 first_half
[2026-07-02 04:31:03] [login] User logged in: user_id=17 name="Sathish" contact=9042635167
[2026-07-02 04:31:03] [fcm_token] FCM token saved/updated: user_id=17 device_type=android
[2026-07-02 04:31:07] [attendance_login] user_id=17 date=2026-07-02 first_half
[2026-07-02 04:33:15] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-07-02 04:33:34] [attendance_login] user_id=21 date=2026-07-02 first_half
[2026-07-02 04:53:05] [notification_received] Schedule 276 acknowledged by user_id=20 (event=received)
[2026-07-02 04:53:05] [notification_received] Schedule 271 acknowledged by user_id=20 (event=received)
[2026-07-02 05:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 05:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 05:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 05:05:31] [fcm_token] FCM token saved/updated: user_id=20 device_type=android
[2026-07-02 05:05:36] [attendance_login] user_id=20 date=2026-07-02 first_half
[2026-07-02 06:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 06:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 06:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 07:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 07:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 07:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 07:01:11] [fcm_token] FCM token saved/updated: user_id=15 device_type=android
[2026-07-02 07:01:13] [attendance_logout] user_id=15 date=2026-07-02 first_half
[2026-07-02 07:01:54] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-07-02 07:01:56] [attendance_logout] user_id=7 date=2026-07-02 first_half
[2026-07-02 07:02:39] [verify_attendance_fail] Invalid or expired QR code: user_id=15 today=2026-07-02 shift=second_half code_len=32
[2026-07-02 07:02:40] [verify_attendance_fail] Invalid or expired QR code: user_id=15 today=2026-07-02 shift=second_half code_len=32
[2026-07-02 07:02:40] [verify_attendance_fail] Invalid or expired QR code: user_id=15 today=2026-07-02 shift=second_half code_len=32
[2026-07-02 07:02:44] [fcm_token] FCM token saved/updated: user_id=20 device_type=android
[2026-07-02 07:02:46] [attendance_logout] user_id=6 date=2026-07-02 first_half
[2026-07-02 07:02:48] [attendance_logout] user_id=20 date=2026-07-02 first_half
[2026-07-02 07:02:53] [verify_attendance_fail] Invalid or expired QR code: user_id=20 today=2026-07-02 shift=second_half code_len=32
[2026-07-02 07:03:44] [attendance_code_created] date=2026-07-02 type=second_half
[2026-07-02 07:03:54] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-07-02 07:04:33] [attendance_logout] user_id=21 date=2026-07-02 first_half
[2026-07-02 07:07:04] [fcm_token] FCM token saved/updated: user_id=20 device_type=android
[2026-07-02 07:07:18] [attendance_login] user_id=20 date=2026-07-02 second_half
[2026-07-02 07:07:56] [attendance_login] user_id=15 date=2026-07-02 second_half
[2026-07-02 07:07:58] [attendance_logout] user_id=15 date=2026-07-02 second_half
[2026-07-02 07:10:12] [attendance_login] user_id=6 date=2026-07-02 second_half
[2026-07-02 07:11:07] [attendance_login] user_id=7 date=2026-07-02 second_half
[2026-07-02 07:15:23] [fcm_token] FCM token saved/updated: user_id=17 device_type=android
[2026-07-02 07:15:27] [attendance_logout] user_id=18 date=2026-07-02 first_half
[2026-07-02 07:15:32] [attendance_login] user_id=18 date=2026-07-02 second_half
[2026-07-02 07:15:35] [attendance_logout] user_id=17 date=2026-07-02 first_half
[2026-07-02 07:15:40] [attendance_login] user_id=17 date=2026-07-02 second_half
[2026-07-02 07:31:03] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-07-02 07:31:07] [attendance_login] user_id=21 date=2026-07-02 second_half
[2026-07-02 07:32:25] [attendance_logout] user_id=18 date=2026-07-02 second_half
[2026-07-02 07:57:01] [fcm_token] FCM token saved/updated: user_id=17 device_type=android
[2026-07-02 08:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 08:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 08:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 08:38:48] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-07-02 08:39:12] [attendance_logout] user_id=24 date=2026-07-02 first_half
[2026-07-02 08:39:19] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-07-02 08:39:21] [attendance_login] user_id=24 date=2026-07-02 second_half
[2026-07-02 08:39:27] [attendance_logout] user_id=24 date=2026-07-02 second_half
[2026-07-02 09:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 09:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 09:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 10:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 10:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 10:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 10:21:45] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-07-02 11:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 11:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 11:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 12:00:02] [cron_daily_schedule_fcm] Notification Results:
[2026-07-02 12:00:02] [cron_daily_schedule_fcm] -------------------------
[2026-07-02 12:00:02] [cron_daily_schedule_fcm] All schedules reset: sent = 0
[2026-07-02 12:00:02] [cron_daily_schedule_fcm] Active status updated based on leave dates
[2026-07-02 12:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 12:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 12:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 12:00:02] [cron_daily_schedule_fcm] User Tamil → Schedule 271 (active=1) sent to 1 device(s)
[2026-07-02 12:00:03] [cron_daily_schedule_fcm] User Naveen → Schedule 272 (active=1) sent to 1 device(s)
[2026-07-02 12:00:03] [cron_daily_schedule_fcm] User Sathish → Schedule 273 (active=1) sent to 1 device(s)
[2026-07-02 12:00:03] [cron_daily_schedule_fcm] User Madesh → Schedule 274 (active=1) sent to 1 device(s)
[2026-07-02 12:00:03] [cron_daily_schedule_fcm] User Tamil → Schedule 276 (active=1) sent to 1 device(s)
[2026-07-02 12:00:03] [cron_daily_schedule_fcm] User Naveen → Schedule 277 (active=1) sent to 1 device(s)
[2026-07-02 12:00:03] [cron_daily_schedule_fcm] User Sathish → Schedule 278 (active=1) sent to 1 device(s)
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] User Madesh → Schedule 279 (active=1) sent to 1 device(s)
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] User pooarasan → Schedule 281 (active=1) sent to 1 device(s)
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] User pooarasan → Schedule 282 (active=1) sent to 1 device(s)
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] User pooarasan → Schedule 283 (active=1) sent to 1 device(s)
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] -------------------------
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] Total Sent: 11
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] Total Skipped: 0
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] Execution Time: 2.28 sec
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] -------------------------
[2026-07-02 12:00:04] [cron_daily_schedule_fcm] Done.
[2026-07-02 12:00:05] [notification_received] Schedule 279 acknowledged by user_id=15 (event=received)
[2026-07-02 12:00:05] [notification_received] Schedule 274 acknowledged by user_id=15 (event=received)
[2026-07-02 12:00:05] [notification_received] Schedule 281 acknowledged by user_id=6 (event=received)
[2026-07-02 12:00:05] [notification_received] Schedule 282 acknowledged by user_id=6 (event=received)
[2026-07-02 12:00:05] [notification_received] Schedule 278 acknowledged by user_id=17 (event=received)
[2026-07-02 12:00:05] [notification_received] Schedule 273 acknowledged by user_id=17 (event=received)
[2026-07-02 12:00:07] [notification_received] Schedule 283 acknowledged by user_id=6 (event=received)
[2026-07-02 12:16:23] [notification_received] Schedule 276 acknowledged by user_id=20 (event=received)
[2026-07-02 12:16:23] [notification_received] Schedule 271 acknowledged by user_id=20 (event=received)
[2026-07-02 13:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 13:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 13:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 14:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 14:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 14:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 14:37:05] [notification_received] Schedule 272 acknowledged by user_id=18 (event=received)
[2026-07-02 14:37:05] [notification_received] Schedule 277 acknowledged by user_id=18 (event=received)
[2026-07-02 15:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 15:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 15:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 16:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 16:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 16:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 16:07:12] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-07-02 17:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 17:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 17:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 17:05:56] [fcm_token] FCM token saved/updated: user_id=20 device_type=android
[2026-07-02 17:06:21] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-07-02 17:06:25] [attendance_logout] user_id=7 date=2026-07-02 second_half
[2026-07-02 17:06:28] [attendance_logout] user_id=20 date=2026-07-02 second_half
[2026-07-02 17:07:13] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-07-02 17:07:20] [attendance_logout] user_id=6 date=2026-07-02 second_half
[2026-07-02 17:22:53] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-07-02 18:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 18:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 18:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 18:46:59] [fcm_token] FCM token saved/updated: user_id=17 device_type=android
[2026-07-02 19:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 19:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 19:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 19:33:48] [fcm_token] FCM token saved/updated: user_id=23 device_type=android
[2026-07-02 20:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 20:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 20:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 21:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 21:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 21:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 21:04:37] [fcm_token] FCM token saved/updated: user_id=20 device_type=android
[2026-07-02 22:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 22:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 22:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-07-02 23:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-07-02 23:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-07-02 23:00:01] [cron_deactivate_schedules_for_inactive_users] end
