External Call held problem

Whenever we get a call from an external source and then places them on hold using the phones hold button picks up another line and dials an internal extension, then hangs up with that internal extension and tries to pickup the external call they put on hold it does not work and the caller remains on hold.

On our phones the line light will stop flashing as they seem to have picked up the line, but the LCD display says the line is still holding, the caller continues to hear hold music. And if user hangs up the line the caller will continue to hear hold music.

I’ve looked at our logs and when this happens I see a warning stating the below

Usage of cc_callback_macro is deprecated. Please use cc_callback_sub instead

FreePBX is running on Asterisk (Ver. 11.5.1)
and all of our phones are Grandstream GCP2100

Anyone have any ideas of what might be causing this. As a work around I’ve instructed users to put calls in our parking lot if they don’t want to just transfer it to the other person first

when you want to pick up a call. you may have to select the call before you can pick it up. if I remember correctly the grandstream phones do not allow you to simply press the line key to pick up a call that is on hold.