Calls keeping active after hangup

It happened a few times now, our customers stop making/receiving calls because the call is not terminated properly on asterisk, and the call limit is 1.

Restarting the ATA (linksys pap) does not help, the call is still there in >core show channels.
hanging up the call (>hangup SIP/xxxxxxx) solves the problem, but we need to wait for the customer to complain to know that the call is kind a zombie in the system.

Is there any setting to automatically force the call to terminate if there is no traffic, or some other trigger to shut the call down in the system in this type of situation?
Is this a bug? It seems to happen when the call is abruptly stopped, as if the power in the ATA went down during the call.

Thanks

rtptimeout

quailify might do it, but I’m not sure it does anything for calls that are in progress.

session timers.

SIP Session Timers are best experienced in 1.8.20 or newer, i.e. we fixed some bugs.

I have qualify=yes for each user account.
we’ll try to upgrade to the newest version then…
thanks