BUSYDETECT how to detect it in the dial plan?

I am using BUSYDETECT which correctly detects busy signal on an fxo trunk,

DEBUG[4073] dsp.c: ast_dsp_busydetect detected busy, avgtone: 455, avgsilence 500

But the problem is, it just goes to the hangup extension. If I try to catch the dialstatus or hangup cause, I have no useful info.
[2009-10-18 19:15:19] VERBOSE[4073] logger.c: == Spawn extension (context1, s, 16) exited non-zero on 'Zap/1-1’
exten => h,1,NoOp(Hanging up now… DIALSTATUS ${DIALSTATUS} HANGUPCAUSE ${HANGUPCAUSE})

I get:
DIALSTATUS HANGUPCAUSE 0

How can I detect in my dialplan that I am hanging up because I detected busy?