Best way to deal with preventing "Attended" transfers to Queue

I am running into an issue with transfers into a call Queue. If a user incorrectly uses Attended transfer rather than Blind transfer, the system doesn’t seem to know how to handle it, and callers are dumped into the voicemail for one of the Queue members, and not the failover location, which in my case is a different voicemail. The issue seems to also be fairly well outlined here:

While training users to use the correct transfer process is worthwhile, it seems like there should be a way to prevent the Attended transfer from causing a failure in the first place. Are there configuration modifications that would help? Is this something that could be addressed in either FreePBX or Asterisk code to interpret Attended transfers to Queues as though they were Blind? Or maybe just outright reject attended transfers to Queues and bounce the call back to the person attempting the transfer?

Any input is appreciated!

How are you doing the transfer? I just tested with Asterisk 13 using both the in-call feature codes (## and *2) with no issues as well as using the built in xfer button on a Yealink phone again with no issues.

Ah, in looking into this more fully, there may be an issue with the software on the phone. The phone is a Grandstream GXP-2160. To get the incorrect behavior, the process is when on a call, press the transfer button, then enter the Queue number, then press the send button. This is apparently performing an attended transfer rather than a blind transfer. I am able to get the transfer to work correctly by pressing the transfer button, then entering the Queue number, and then pressing the transfer button again. Noting that I am using Call Event Logging to see which is actually being triggered.

This may be the answer for my immediate issue. Is the thought that if things are functioning correctly there shouldn’t be a way to trigger an attended transfer to a Queue?