Enable verbose logging, leave a vm for this user. Then download SystemService.log and filter by BoxesMonitor.
The last few lines will help with troubleshooting.
Here is the log file from the VM I left on the users extension. I cannot see any different from the logs when I left myself a VM and it was delivered correctly.
2025/11/20 08:57:18.210|0005|Trac| [_3CX.BoxesMonitor] 1000.VoiceMailBox has been updated: 3/2
2025/11/20 08:57:18.210|0005|Trac| [_3CX.BoxesMonitor] state= for 1000/vmail_2010_1000_20251120135707
2025/11/20 08:57:18.210|0005|Trac| [TCXSpeech.TranscriptionService] SPEECH Mail Transcription not needed by 1000
2025/11/20 08:57:18.210|0005|Trac| [_3CX.BoxesMonitor] DELIVER 1000/vmail_2010_1000_20251120135707 now
2025/11/20 08:57:18.210|0046|Debg| Dequeue Inserted.S_VOICEMAIL.8766
2025/11/20 08:57:18.211|0038|Debg| [_3CX.BoxesMonitor] Schedule delivery of 1000/vmail_2010_1000_20251120135707: 1
2025/11/20 08:57:18.211|0038|Trac| [_3CX.BoxesMonitor] state= for 1000/vmail_2010_1000_20251120135707
2025/11/20 08:57:18.211|0038|Trac| [TCXSpeech.TranscriptionService] SPEECH Mail Transcription not needed by 1000
2025/11/20 08:57:18.211|0038|Debg| [_3CX.BoxesMonitor] Delivery in progress
2025/11/20 08:57:18.211|0038|Info| [_3CX.BoxesMonitor] Creating email notification for 1000
2025/11/20 08:57:18.211|0038|Trac| [Npgsql.Connection] Opening connection to /var/run/postgresql:5432/database_single...
2025/11/20 08:57:18.211|0038|Debg| [Npgsql.Connection] Opened connection to /var/run/postgresql:5432/database_single
2025/11/20 08:57:18.211|0038|Trac| [Npgsql.Connection] Start user action
2025/11/20 08:57:18.211|0038|Debg| [Npgsql.Command] Executing command: SELECT contact FROM crm_cache WHERE number=$1 ORDER BY last_checked DESC LIMIT 1
2025/11/20 08:57:18.213|0007|Trac| [Npgsql.Command] Cleaning up reader
2025/11/20 08:57:18.214|0007|Info| [Npgsql.Command] Command execution completed (duration=2ms): SELECT contact FROM crm_cache WHERE number=$1 ORDER BY last_checked DESC LIMIT 1
2025/11/20 08:57:18.214|0007|Trac| [Npgsql.Connection] End user action
2025/11/20 08:57:18.214|0007|Trac| [Npgsql.Connection] Closing connection to /var/run/postgresql:5432/database_single...
2025/11/20 08:57:18.214|0007|Trac| [Npgsql.Connection] Start user action
2025/11/20 08:57:18.214|0007|Trac| [Npgsql.Connection] End user action
2025/11/20 08:57:18.214|0007|Debg| [Npgsql.Connection] Closed connection to /var/run/postgresql:5432/database_single
2025/11/20 08:57:18.214|0007|Trac| [_3cxSystemService.OtherTasks.ContactResolver] CRM contact for 2010: (null)
2025/11/20 08:57:18.214|0007|Trac| [_3CX.BoxesMonitor] Contact has been resolved
2025/11/20 08:57:18.214|0007|Info| [_3CX.BoxesMonitor] Attaching vmail_2010_1000_20251120135707 to email
2025/11/20 08:57:18.214|0007|Info| [_3CX.BoxesMonitor] Sending email notification to Useremail@My_Company.com
2025/11/20 08:57:18.225|0038|Info| [_3CX.Push.PushTransport] Response from FCM: projects/cx-firebase-push/messages/0:1763647038196970%fc376129f9fd7ecd
2025/11/20 08:57:18.247|0007|Info| [_3CX.HttpClient] Sending 'POST/2.0' to '
https://graph.microsoft.com/v1.0/users/3CXPhoneSystem@My_Company.com/sendMail'
2025/11/20 08:57:18.441|0038|Info| [_3CX.HttpClient] Received '202 Accepted' after 270.9ms
2025/11/20 08:57:18.516|0038|Info| [_3CX.HttpClient] Received '202 Accepted' after 268.9ms
2025/11/20 08:57:18.516|0038|Info| [_3CX.BoxesMonitor] Email sent to Useremail@My_Company.com
2025/11/20 08:57:18.516|0038|Debg| [_3CX.BoxesMonitor] Delivery removed: 0
2025/11/20 08:57:18.520|0005|Debg| Enqueue Updated.S_VOICEMAIL.8766
2025/11/20 08:57:18.520|0038|Debg| Dequeue Updated.S_VOICEMAIL.8766
2025/11/20 08:57:18.520|0005|Trac| [_3CX.BoxesMonitor] Delivery finished for 1000/vmail_2010_1000_20251120135707
2025/11/20 08:57:19.212|0005|Debg| Enqueue Updated.VMBOXINFO.5
2025/11/20 08:57:19.212|0038|Debg| Dequeue Updated.VMBOXINFO.5
2025/11/20 08:57:19.213|0046|Trac| [Npgsql.Connection] Opening connection to /var/run/postgresql:5432/database_single...
2025/11/20 08:57:19.213|0046|Debg| [Npgsql.Connection] Opened connection to /var/run/postgresql:5432/database_single
2025/11/20 08:57:19.213|0046|Trac| [Npgsql.Connection] Start user action
2025/11/20 08:57:19.213|0046|Debg| [Npgsql.Command] Executing command: SELECT id_recording FROM recordings ORDER BY id_recording DESC LIMIT 1
2025/11/20 08:57:19.213|0017|Info| [_3CX.BoxesMonitor] 1000.VoiceMailBox UPDATE: 3/2
2025/11/20 08:57:19.214|0017|Trac| [Npgsql.Command] Cleaning up reader
2025/11/20 08:57:19.214|0017|Info| [Npgsql.Command] Command execution completed (duration=1ms): SELECT id_recording FROM recordings ORDER BY id_recording DESC LIMIT 1
2025/11/20 08:57:19.214|0017|Trac| [Npgsql.Connection] End user action
2025/11/20 08:57:19.214|0017|Trac| [Npgsql.Connection] Closing connection to /var/run/postgresql:5432/database_single...
2025/11/20 08:57:19.214|0017|Trac| [Npgsql.Connection] Start user action
2025/11/20 08:57:19.214|0017|Trac| [Npgsql.Connection] End user action
2025/11/20 08:57:19.214|0017|Debg| [Npgsql.Connection] Closed connection to /var/run/postgresql:5432/database_single
2025/11/20 08:57:19.515|0005|Debg| Enqueue Updated.SBCRUNTIMEDATA.8
2025/11/20 08:57:19.515|0005|Debg| Enqueue Updated.SBCRUNTIMEDATA.7