[2026-06-12 00:00:01] [cron_mark_yesterday_absent] start
[2026-06-12 00:00:01] [cron_daily_schedule_fcm] Notification Results:
[2026-06-12 00:00:01] [cron_daily_schedule_fcm] -------------------------
[2026-06-12 00:00:01] [cron_daily_schedule_fcm] All schedules reset: sent = 0
[2026-06-12 00:00:01] [cron_daily_schedule_fcm] Active status updated based on leave dates
[2026-06-12 00:00:02] [cron_mark_yesterday_absent] {"success":true,"date":"2026-06-11","marked_absent":4,"users_absent":[{"user_id":4,"name":"vital"},{"user_id":13,"name":"test"},{"user_id":17,"name":"Sathish"},{"user_id":22,"name":"Mangamma"}]}
[2026-06-12 00:00:02] [cron_mark_yesterday_absent] end
[2026-06-12 00:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 00:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 00:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 00:00:02] [cron_daily_schedule_fcm] User Tamil → Schedule 271 (active=1) sent to 1 device(s)
[2026-06-12 00:00:02] [cron_daily_schedule_fcm] User Naveen → Schedule 272 (active=1) failed (no device accepted)
[2026-06-12 00:00:02] [cron_daily_schedule_fcm] User Sathish → Schedule 273 (active=1) no active devices
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] User Tamil → Schedule 276 (active=1) sent to 1 device(s)
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] User Naveen → Schedule 277 (active=1) no active devices
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] User Sathish → Schedule 278 (active=1) no active devices
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] User pooarasan → Schedule 281 (active=1) sent to 1 device(s)
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] User pooarasan → Schedule 282 (active=1) sent to 1 device(s)
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] User pooarasan → Schedule 283 (active=1) sent to 1 device(s)
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] -------------------------
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] Total Sent: 5
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] Total Skipped: 3
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] Execution Time: 1.54 sec
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] -------------------------
[2026-06-12 00:00:03] [cron_daily_schedule_fcm] Done.
[2026-06-12 00:00:04] [notification_received] Schedule 281 acknowledged by user_id=6 (event=received)
[2026-06-12 00:00:04] [notification_received] Schedule 282 acknowledged by user_id=6 (event=received)
[2026-06-12 00:00:06] [notification_received] Schedule 283 acknowledged by user_id=6 (event=received)
[2026-06-12 01:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 01:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 01:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 02:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 02:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 02:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 03:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 03:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 03:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 03:50:03] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-06-12 03:51:49] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-06-12 03:51:59] [attendance_code_created] date=2026-06-12 type=first_half
[2026-06-12 03:55:01] [notification_received] Schedule 282 acknowledged by user_id=6 (event=tapped)
[2026-06-12 03:59:33] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-06-12 04:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 04:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 04:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 04:00:02] [update_attendance] Attendance updated: date=2026-06-11 updated=2 user_ids=22,17
[2026-06-12 04:00:03] [fcm_token] FCM token saved/updated: user_id=15 device_type=android
[2026-06-12 04:00:05] [notification_received] Schedule 283 acknowledged by user_id=6 (event=tapped)
[2026-06-12 04:17:21] [fcm_token] FCM token saved/updated: user_id=20 device_type=android
[2026-06-12 04:17:23] [notification_received] Schedule 271 acknowledged by user_id=20 (event=received)
[2026-06-12 04:17:23] [notification_received] Schedule 276 acknowledged by user_id=20 (event=received)
[2026-06-12 04:20:27] [notification_received] Schedule 277 acknowledged by user_id=18 (event=tapped)
[2026-06-12 04:20:37] [fcm_token] FCM token saved/updated: user_id=18 device_type=android
[2026-06-12 04:20:42] [attendance_login] user_id=18 date=2026-06-12 first_half
[2026-06-12 04:21:13] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-06-12 04:21:17] [attendance_login] user_id=24 date=2026-06-12 first_half
[2026-06-12 04:26:44] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-06-12 04:26:49] [attendance_login] user_id=6 date=2026-06-12 first_half
[2026-06-12 04:38:05] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-06-12 04:38:12] [attendance_login] user_id=21 date=2026-06-12 first_half
[2026-06-12 05:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 05:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 05:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 06:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 06:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 06:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 07:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 07:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 07:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 08:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 08:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 08:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 08:01:40] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-06-12 08:01:45] [attendance_logout] user_id=21 date=2026-06-12 first_half
[2026-06-12 08:09:11] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-06-12 08:09:15] [attendance_logout] user_id=24 date=2026-06-12 first_half
[2026-06-12 09:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 09:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 09:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 10:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 10:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 10:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 11:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 11:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 11:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 12:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 12:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 12:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 12:00:01] [cron_daily_schedule_fcm] Notification Results:
[2026-06-12 12:00:01] [cron_daily_schedule_fcm] -------------------------
[2026-06-12 12:00:01] [cron_daily_schedule_fcm] All schedules reset: sent = 0
[2026-06-12 12:00:01] [cron_daily_schedule_fcm] Active status updated based on leave dates
[2026-06-12 12:00:02] [cron_daily_schedule_fcm] User Tamil → Schedule 271 (active=1) sent to 1 device(s)
[2026-06-12 12:00:02] [cron_daily_schedule_fcm] User Naveen → Schedule 272 (active=1) sent to 1 device(s)
[2026-06-12 12:00:02] [cron_daily_schedule_fcm] User Sathish → Schedule 273 (active=1) no active devices
[2026-06-12 12:00:02] [cron_daily_schedule_fcm] User Tamil → Schedule 276 (active=1) sent to 1 device(s)
[2026-06-12 12:00:03] [cron_daily_schedule_fcm] User Naveen → Schedule 277 (active=1) sent to 1 device(s)
[2026-06-12 12:00:03] [cron_daily_schedule_fcm] User Sathish → Schedule 278 (active=1) no active devices
[2026-06-12 12:00:03] [cron_daily_schedule_fcm] User pooarasan → Schedule 281 (active=1) sent to 1 device(s)
[2026-06-12 12:00:03] [cron_daily_schedule_fcm] User pooarasan → Schedule 282 (active=1) sent to 1 device(s)
[2026-06-12 12:00:04] [cron_daily_schedule_fcm] User pooarasan → Schedule 283 (active=1) sent to 1 device(s)
[2026-06-12 12:00:04] [cron_daily_schedule_fcm] -------------------------
[2026-06-12 12:00:04] [cron_daily_schedule_fcm] Total Sent: 7
[2026-06-12 12:00:04] [cron_daily_schedule_fcm] Total Skipped: 2
[2026-06-12 12:00:04] [cron_daily_schedule_fcm] Execution Time: 2.78 sec
[2026-06-12 12:00:04] [cron_daily_schedule_fcm] -------------------------
[2026-06-12 12:00:04] [cron_daily_schedule_fcm] Done.
[2026-06-12 12:00:04] [notification_received] Schedule 281 acknowledged by user_id=6 (event=received)
[2026-06-12 12:00:04] [notification_received] Schedule 282 acknowledged by user_id=6 (event=received)
[2026-06-12 12:00:05] [notification_received] Schedule 277 acknowledged by user_id=18 (event=received)
[2026-06-12 12:00:05] [notification_received] Schedule 272 acknowledged by user_id=18 (event=received)
[2026-06-12 12:00:06] [notification_received] Schedule 283 acknowledged by user_id=6 (event=received)
[2026-06-12 13:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 13:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 13:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 13:12:51] [notification_received] Schedule 276 acknowledged by user_id=20 (event=received)
[2026-06-12 13:12:51] [notification_received] Schedule 271 acknowledged by user_id=20 (event=received)
[2026-06-12 14:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 14:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 14:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 14:46:56] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-06-12 14:47:27] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-06-12 15:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 15:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 15:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 16:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 16:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 16:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 16:46:38] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-06-12 16:46:54] [attendance_logout] user_id=6 date=2026-06-12 first_half
[2026-06-12 16:51:20] [attendance_code_created] date=2026-06-12 type=second_half
[2026-06-12 16:51:20] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-06-12 17:00:02] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 17:00:02] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 17:00:02] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 17:00:56] [fcm_token] FCM token saved/updated: user_id=18 device_type=android
[2026-06-12 17:01:13] [attendance_logout] user_id=18 date=2026-06-12 first_half
[2026-06-12 17:01:14] [fcm_token] FCM token saved/updated: user_id=24 device_type=android
[2026-06-12 17:01:17] [attendance_login] user_id=18 date=2026-06-12 second_half
[2026-06-12 17:01:21] [attendance_login] user_id=24 date=2026-06-12 second_half
[2026-06-12 18:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 18:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 18:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 18:18:13] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-06-12 18:18:17] [attendance_login] user_id=7 date=2026-06-12 second_half
[2026-06-12 18:28:51] [attendance_logout] user_id=24 date=2026-06-12 second_half
[2026-06-12 18:31:18] [attendance_logout] user_id=7 date=2026-06-12 second_half
[2026-06-12 18:31:56] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-06-12 18:31:57] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-06-12 18:32:07] [attendance_login] user_id=6 date=2026-06-12 second_half
[2026-06-12 18:33:09] [attendance_logout] user_id=18 date=2026-06-12 second_half
[2026-06-12 18:52:42] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-06-12 18:54:53] [attendance_login] user_id=21 date=2026-06-12 second_half
[2026-06-12 19:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 19:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 19:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 19:12:27] [attendance_logout] user_id=21 date=2026-06-12 second_half
[2026-06-12 19:41:29] [attendance_logout] user_id=6 date=2026-06-12 second_half
[2026-06-12 20:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 20:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 20:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 21:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 21:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 21:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 22:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 22:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 22:00:01] [cron_deactivate_schedules_for_inactive_users] end
[2026-06-12 23:00:01] [cron_deactivate_schedules_for_inactive_users] start
[2026-06-12 23:00:01] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-06-12 23:00:01] [cron_deactivate_schedules_for_inactive_users] end
