+++ATH in the data stream did not close the connection unless the modem was really stupid, or misconfigured. The actual protocol was:
<pause>+++<pause>ATH<CR>
The pauses, I think 1 second by default, were exactly for this reason. "+++ATH" racing by in a data stream would be transmitted as is.