Check your CO Trunk Circuit Descriptors and make sure Calling Party Disconnect is set to Yes, and Ignore Far End Disconnect is set to No... The timer that looks for how long battery must be removed from the circuit to be considered a disconnect is there too, Disconnect Timer is 500ms by default (1/2 second), which is usually long enough for most CO trunks, but you might have to shorten it a little. I wouldn't recommend going below 250ms as phantom disconnects could occur. There are a few other parameters that might affect this, but this is where I would check first.