Do you have a wrap-up timer set? This behavior is normal, as an agent must be in Ready state in order to answer an ACD call. When the call completes, you can set a wrap-up timer to give the agent time to finish documentation, but the system will then automatically put the agent back into Ready (unless the agent goes into a Not Ready state manually).