Hello
@Tiago Martins
There is a workaround for this. The issue here is to avoid ending the call when no agents are in the Queue. For this, you'll need to have a dummy extension as an agent of the Queue. Assuming you are using priority hunting, push the dummy extension down in the agents list so it won't be pulled when "real" agents are logged in the Queue.
Now the "trick" here is that the dummy extension should always be registered and logged in the Queue. To achieve this, make sure that your dummy extension has enabled PUSH for smartphones and provision the extension to a smartphone(android/ios). Once it's registered, you can go ahead and remove the account from your smartphone. PBX will always consider the dummy extension as registered, since it is using PUSH.
Now all left to do is to set the dummy extension to Available & logged in from Management Console >> Extensions >> Status
With the above way, even if no "real" agents are in the Queue, the caller will be placed in Queue, with option to leave a call back and when real agents log in, they will receive the call.
As this is a work around, test it thoroughly before applying in production environment.
A possible drawback with this approach, is that polls/calls to the dummy extension will reflect in the reports as well.
Alternatively, if you think that this is something that should be available as an, out of the box feature, feel free to post this as a feature request in the Ideas part of the Forum here
https://www.3cx.com/community/forums/3cx-ideas/