Once a call has hung up the call state will return to IDLE and the clearing cause will be one of these.
If an incoming call is rejected, a subset of these causes can be given as the cause for the rejection in the reject function.
Call clearing causes:
Usage example:
state = channel.call('sip:3301@127.0.0.1:5060;user=phone')
if state != channel.State.ANSWERED:
if channel.cause() == channel.Cause.BUSY:
print("Busy, try again")