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