[2026-03-28 00:00:08] [cron_mark_yesterday_absent] start
[2026-03-28 00:00:08] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 00:00:08] [cron_daily_schedule_fcm] Notification Results:
[2026-03-28 00:00:08] [cron_daily_schedule_fcm] -------------------------
[2026-03-28 00:00:08] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 00:00:08] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 00:00:09] [cron_daily_schedule_fcm] All schedules reset: sent = 0
[2026-03-28 00:00:09] [cron_daily_schedule_fcm] Active status updated based on leave dates
[2026-03-28 00:00:09] [cron_mark_yesterday_absent] {"success":true,"date":"2026-03-27","marked_absent":3,"users_absent":[{"user_id":4,"name":"vital"},{"user_id":13,"name":"test"},{"user_id":22,"name":"Mangamma"}]}
[2026-03-28 00:00:09] [cron_mark_yesterday_absent] end
[2026-03-28 00:00:19] [cron_daily_schedule_fcm] User pooarasan → Schedule 50 (active=1) sent to 1 device(s)
[2026-03-28 00:00:19] [cron_daily_schedule_fcm] User pooarasan → Schedule 51 (active=1) sent to 1 device(s)
[2026-03-28 00:00:20] [cron_daily_schedule_fcm] User pooarasan → Schedule 153 (active=1) sent to 1 device(s)
[2026-03-28 00:00:20] [cron_daily_schedule_fcm] User Sathish → Schedule 162 (active=1) sent to 1 device(s)
[2026-03-28 00:00:20] [cron_daily_schedule_fcm] User Sathish → Schedule 163 (active=1) sent to 1 device(s)
[2026-03-28 00:00:20] [notification_received] Schedule 51 acknowledged by user_id=6 (event=received)
[2026-03-28 00:00:20] [notification_received] Schedule 50 acknowledged by user_id=6 (event=received)
[2026-03-28 00:00:20] [cron_daily_schedule_fcm] User Sathish → Schedule 164 (active=1) sent to 1 device(s)
[2026-03-28 00:00:20] [cron_daily_schedule_fcm] User Naveen → Schedule 165 (active=1) sent to 1 device(s)
[2026-03-28 00:00:21] [cron_daily_schedule_fcm] User Naveen → Schedule 166 (active=1) sent to 1 device(s)
[2026-03-28 00:00:21] [cron_daily_schedule_fcm] User Naveen → Schedule 167 (active=1) sent to 1 device(s)
[2026-03-28 00:00:21] [cron_daily_schedule_fcm] User Tamil → Schedule 168 (active=1) sent to 1 device(s)
[2026-03-28 00:00:21] [cron_daily_schedule_fcm] User Tamil → Schedule 169 (active=1) sent to 1 device(s)
[2026-03-28 00:00:21] [cron_daily_schedule_fcm] User Tamil → Schedule 170 (active=1) sent to 1 device(s)
[2026-03-28 00:00:21] [cron_daily_schedule_fcm] User Sathish → Schedule 172 (active=1) sent to 1 device(s)
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] User Madesh → Schedule 226 (active=1) sent to 1 device(s)
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] User Madesh → Schedule 227 (active=1) sent to 1 device(s)
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] User test → Schedule 259 (active=1) no active devices
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] -------------------------
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] Total Sent: 15
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] Total Skipped: 1
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] Execution Time: 13.71 sec
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] -------------------------
[2026-03-28 00:00:22] [cron_daily_schedule_fcm] Done.
[2026-03-28 00:00:22] [notification_received] Schedule 153 acknowledged by user_id=6 (event=received)
[2026-03-28 00:00:23] [notification_received] Schedule 227 acknowledged by user_id=15 (event=received)
[2026-03-28 00:00:23] [notification_received] Schedule 226 acknowledged by user_id=15 (event=received)
[2026-03-28 01:00:05] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 01:00:05] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 01:00:05] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 02:00:09] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 02:00:09] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 02:00:09] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 03:00:05] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 03:00:05] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 03:00:05] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 03:45:02] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-03-28 03:50:01] [notification_received] Schedule 50 acknowledged by user_id=6 (event=tapped)
[2026-03-28 03:56:12] [notification_received] Schedule 50 acknowledged by user_id=6 (event=tapped)
[2026-03-28 04:00:02] [notification_received] Schedule 51 acknowledged by user_id=6 (event=tapped)
[2026-03-28 04:00:04] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 04:00:04] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 04:00:04] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 04:05:01] [fcm_token] FCM token saved/updated: user_id=15 device_type=android
[2026-03-28 04:07:38] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-03-28 04:07:42] [attendance_code_created] date=2026-03-28 type=first_half
[2026-03-28 04:10:01] [notification_received] Schedule 227 acknowledged by user_id=15 (event=tapped)
[2026-03-28 04:12:06] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-03-28 04:12:08] [attendance_login] user_id=7 date=2026-03-28 first_half
[2026-03-28 04:12:15] [attendance_login] user_id=6 date=2026-03-28 first_half
[2026-03-28 04:26:43] [fcm_token] FCM token saved/updated: user_id=17 device_type=android
[2026-03-28 04:26:53] [notification_received] Schedule 162 acknowledged by user_id=17 (event=received)
[2026-03-28 04:26:53] [notification_received] Schedule 163 acknowledged by user_id=17 (event=received)
[2026-03-28 04:26:54] [notification_received] Schedule 164 acknowledged by user_id=17 (event=received)
[2026-03-28 04:26:54] [notification_received] Schedule 172 acknowledged by user_id=17 (event=received)
[2026-03-28 04:26:57] [attendance_login] user_id=17 date=2026-03-28 first_half
[2026-03-28 04:28:02] [attendance_login] user_id=15 date=2026-03-28 first_half
[2026-03-28 04:43:55] [notification_received] Schedule 166 acknowledged by user_id=18 (event=tapped)
[2026-03-28 04:43:56] [fcm_token] FCM token saved/updated: user_id=18 device_type=android
[2026-03-28 04:43:57] [notification_received] Schedule 165 acknowledged by user_id=18 (event=received)
[2026-03-28 04:43:59] [notification_received] Schedule 166 acknowledged by user_id=18 (event=received)
[2026-03-28 04:44:02] [notification_received] Schedule 167 acknowledged by user_id=18 (event=received)
[2026-03-28 04:45:25] [attendance_login] user_id=18 date=2026-03-28 first_half
[2026-03-28 05:00:05] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 05:00:05] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 05:00:05] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 05:03:29] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-03-28 05:03:37] [attendance_login] user_id=21 date=2026-03-28 first_half
[2026-03-28 05:36:31] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-03-28 06:00:08] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 06:00:08] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 06:00:08] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 06:22:20] [notification_received] Schedule 170 acknowledged by user_id=20 (event=received)
[2026-03-28 06:22:20] [notification_received] Schedule 168 acknowledged by user_id=20 (event=received)
[2026-03-28 06:22:20] [notification_received] Schedule 169 acknowledged by user_id=20 (event=received)
[2026-03-28 07:00:07] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 07:00:07] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 07:00:07] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 07:39:00] [attendance_code_created] date=2026-03-28 type=second_half
[2026-03-28 07:39:23] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-03-28 07:39:49] [update_attendance] Attendance updated: date=2026-03-27 updated=3 user_ids=23,22,5
[2026-03-28 07:39:50] [update_attendance] Attendance updated: date=2026-03-27 updated=3 user_ids=23,22,5
[2026-03-28 07:39:52] [update_attendance] Attendance updated: date=2026-03-27 updated=3 user_ids=23,22,5
[2026-03-28 07:39:52] [update_attendance] Attendance updated: date=2026-03-27 updated=3 user_ids=23,22,5
[2026-03-28 08:00:05] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 08:00:05] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 08:00:05] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 08:09:55] [attendance_logout] user_id=18 date=2026-03-28 first_half
[2026-03-28 08:10:01] [attendance_login] user_id=18 date=2026-03-28 second_half
[2026-03-28 08:10:05] [attendance_logout] user_id=18 date=2026-03-28 second_half
[2026-03-28 08:14:38] [fcm_token] FCM token saved/updated: user_id=15 device_type=android
[2026-03-28 08:14:40] [attendance_logout] user_id=15 date=2026-03-28 first_half
[2026-03-28 08:14:48] [attendance_login] user_id=15 date=2026-03-28 second_half
[2026-03-28 08:15:26] [fcm_token] FCM token saved/updated: user_id=21 device_type=android
[2026-03-28 08:15:37] [attendance_logout] user_id=21 date=2026-03-28 first_half
[2026-03-28 08:15:43] [attendance_login] user_id=21 date=2026-03-28 second_half
[2026-03-28 08:15:46] [attendance_logout] user_id=21 date=2026-03-28 second_half
[2026-03-28 08:38:59] [attendance_logout] user_id=15 date=2026-03-28 second_half
[2026-03-28 09:00:05] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 09:00:05] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 09:00:05] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 09:41:59] [fcm_token] FCM token saved/updated: user_id=17 device_type=android
[2026-03-28 09:42:17] [attendance_logout] user_id=17 date=2026-03-28 first_half
[2026-03-28 09:42:22] [attendance_login] user_id=17 date=2026-03-28 second_half
[2026-03-28 09:42:26] [attendance_logout] user_id=17 date=2026-03-28 second_half
[2026-03-28 10:00:08] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 10:00:08] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 10:00:08] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 10:00:40] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-03-28 10:00:54] [attendance_logout] user_id=7 date=2026-03-28 first_half
[2026-03-28 10:00:59] [attendance_login] user_id=7 date=2026-03-28 second_half
[2026-03-28 10:01:02] [attendance_logout] user_id=7 date=2026-03-28 second_half
[2026-03-28 10:01:26] [fcm_token] FCM token saved/updated: user_id=6 device_type=android
[2026-03-28 10:01:32] [attendance_logout] user_id=6 date=2026-03-28 first_half
[2026-03-28 10:01:36] [attendance_login] user_id=6 date=2026-03-28 second_half
[2026-03-28 10:01:38] [attendance_logout] user_id=6 date=2026-03-28 second_half
[2026-03-28 11:00:11] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 11:00:12] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 11:00:12] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 12:00:09] [cron_daily_schedule_fcm] Notification Results:
[2026-03-28 12:00:09] [cron_daily_schedule_fcm] -------------------------
[2026-03-28 12:00:09] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 12:00:09] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 12:00:09] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 12:00:09] [cron_daily_schedule_fcm] All schedules reset: sent = 0
[2026-03-28 12:00:09] [cron_daily_schedule_fcm] Active status updated based on leave dates
[2026-03-28 12:00:09] [cron_daily_schedule_fcm] User pooarasan → Schedule 50 (active=1) sent to 1 device(s)
[2026-03-28 12:00:10] [cron_daily_schedule_fcm] User pooarasan → Schedule 51 (active=1) sent to 1 device(s)
[2026-03-28 12:00:10] [cron_daily_schedule_fcm] User pooarasan → Schedule 153 (active=1) sent to 1 device(s)
[2026-03-28 12:00:10] [notification_received] Schedule 50 acknowledged by user_id=6 (event=received)
[2026-03-28 12:00:10] [cron_daily_schedule_fcm] User Sathish → Schedule 162 (active=1) sent to 1 device(s)
[2026-03-28 12:00:10] [cron_daily_schedule_fcm] User Sathish → Schedule 163 (active=1) sent to 1 device(s)
[2026-03-28 12:00:11] [cron_daily_schedule_fcm] User Sathish → Schedule 164 (active=1) sent to 1 device(s)
[2026-03-28 12:00:11] [cron_daily_schedule_fcm] User Naveen → Schedule 165 (active=1) sent to 1 device(s)
[2026-03-28 12:00:11] [cron_daily_schedule_fcm] User Naveen → Schedule 166 (active=1) sent to 1 device(s)
[2026-03-28 12:00:11] [cron_daily_schedule_fcm] User Naveen → Schedule 167 (active=1) sent to 1 device(s)
[2026-03-28 12:00:12] [cron_daily_schedule_fcm] User Tamil → Schedule 168 (active=1) sent to 1 device(s)
[2026-03-28 12:00:12] [notification_received] Schedule 163 acknowledged by user_id=17 (event=received)
[2026-03-28 12:00:12] [notification_received] Schedule 162 acknowledged by user_id=17 (event=received)
[2026-03-28 12:00:12] [cron_daily_schedule_fcm] User Tamil → Schedule 169 (active=1) sent to 1 device(s)
[2026-03-28 12:00:12] [notification_received] Schedule 165 acknowledged by user_id=18 (event=received)
[2026-03-28 12:00:12] [notification_received] Schedule 166 acknowledged by user_id=18 (event=received)
[2026-03-28 12:00:12] [notification_received] Schedule 167 acknowledged by user_id=18 (event=received)
[2026-03-28 12:00:12] [cron_daily_schedule_fcm] User Tamil → Schedule 170 (active=1) sent to 1 device(s)
[2026-03-28 12:00:12] [notification_received] Schedule 51 acknowledged by user_id=6 (event=received)
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] User Sathish → Schedule 172 (active=1) sent to 1 device(s)
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] User Madesh → Schedule 226 (active=1) sent to 1 device(s)
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] User Madesh → Schedule 227 (active=1) sent to 1 device(s)
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] User test → Schedule 259 (active=1) no active devices
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] -------------------------
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] Total Sent: 15
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] Total Skipped: 1
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] Execution Time: 4.39 sec
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] -------------------------
[2026-03-28 12:00:13] [cron_daily_schedule_fcm] Done.
[2026-03-28 12:00:14] [notification_received] Schedule 164 acknowledged by user_id=17 (event=received)
[2026-03-28 12:00:17] [notification_received] Schedule 172 acknowledged by user_id=17 (event=received)
[2026-03-28 12:00:40] [notification_received] Schedule 153 acknowledged by user_id=6 (event=received)
[2026-03-28 13:00:05] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 13:00:05] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 13:00:05] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 13:02:18] [notification_received] Schedule 226 acknowledged by user_id=15 (event=received)
[2026-03-28 13:02:18] [notification_received] Schedule 227 acknowledged by user_id=15 (event=received)
[2026-03-28 14:00:08] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 14:00:08] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 14:00:08] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 15:00:06] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 15:00:06] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 15:00:06] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 16:00:07] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 16:00:08] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 16:00:08] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 16:15:19] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-03-28 16:16:07] [update_attendance] Attendance updated: date=2026-03-28 updated=3 user_ids=23,22,5
[2026-03-28 16:16:07] [update_attendance] Attendance updated: date=2026-03-28 updated=3 user_ids=23,22,5
[2026-03-28 16:16:09] [update_attendance] Attendance updated: date=2026-03-28 updated=3 user_ids=23,22,5
[2026-03-28 16:57:49] [fcm_token] FCM token saved/updated: user_id=7 device_type=android
[2026-03-28 17:00:08] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 17:00:08] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 17:00:08] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 18:00:07] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 18:00:07] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 18:00:07] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 19:00:10] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 19:00:10] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 19:00:10] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 20:00:07] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 20:00:07] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 20:00:07] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 21:00:07] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 21:00:07] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 21:00:07] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 22:00:07] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 22:00:07] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 22:00:07] [cron_deactivate_schedules_for_inactive_users] end
[2026-03-28 22:54:47] [fcm_token] FCM token saved/updated: user_id=5 device_type=android
[2026-03-28 23:00:05] [cron_deactivate_schedules_for_inactive_users] start
[2026-03-28 23:00:05] [cron_deactivate_schedules_for_inactive_users] {"success":true,"message":"No inactive users","inactive_user_ids":[],"schedules_updated":0}
[2026-03-28 23:00:05] [cron_deactivate_schedules_for_inactive_users] end
