Line status in VoiceXML is handled by VXML exceptions. The following are the exception values:
"telephone.noanswer"
"telephone.noline"
"telephone.linebusy"
"telephone.linedrop"
You can certainly catch these exceptions in your own VXML code and handle these exception accordingly.
Actually, these exceptions are caught by the gateway by default. And you can get the line status from the call status request page as defined in Voicent Gateway Outbound Call Scheduler Reference.
One thing that is not handled by VoiceXML standard is whether the phone call is answered by live person or answering machine. Here we simply record this fact in the application attributes also. The following is the updated file:
<?xml
version="1.0"?>
<vxml version="1.0">