There are times where the Asterisk voicemail files are managed externally. Not until a core "MessageWaiting" event is generated does FOP2's extension mailbox status get updated. Only Voicemail() and VoicemailMain() in Asterisk can generate core "MessageWaiting" events.
I'm suggesting FOP2 honor a FOP2MAILBOXCHECK UserEvent:
=======================
Event: UserEvent
Privilege: user,all
UserEvent: FOP2MAILBOXCHECK
Action: UserEvent
Mailbox: 1234@default
=======================
same => n,UserEvent(FOP2MAILBOXCHECK,Mailbox: 1234@default)
=======================
and then trigger a mailbox check for that mailbox.
Of course if the "Mailbox:' argument does not match any of the extension buttons mailbox= value, the request is ignored.
Reasonable ? Or possibly you already have such a mechanism ?
Lonnie