Delayed IVR with FIFO

We have a customer with multiple locations that typically has 1-2 people staffing phones at a front desk location. If both extensions are busy, any new call will overflow to an announcement that all agents are busy, and on a 30 second timeout action, it will then try the extensions again. There is no intelligence to the queue, just a 30 second timer. In short, if you call in and an agent becomes available 1 second after you hit the queue, you are guaranteed at least a 29 second wait and you could actually get cut off by a new inbound call coming in before your timer expires. Yea.. pretty crappy setup.

We are rolling out FusionPBX for their locations and we would like to replace their current ring strategy with a ring group for the front desk extensions that will overflow to a FIFO queue if the extensions are busy. The desired result is to have the queued caller ring to an extension immediately when it becomes available.

I see queues, call centers, all kinds of ring group and IVR options and I'm just not sure where the best place to start would be. Can anyone offer some advice?
So will a queue based setup require the extensions be associated with a user and that user must sign into the queue as an agent, etc?

Teaching their staff how to log in and out as an agent in a queue sounds like a massive liability. They are just not that savvy or diligent.

We played around briefly with the call center and queues and calls rang into the queue just fine - they hit music on hold but we didnt get them ringing the extension. We must be missing something and the docs were pretty thin.