Call transfer causes¶
- class UASCallChannel
- class TransferCause
Calling any of the transfer functions results in one of these transfer causes being set.
Transfer causes:
- NONE
no transfer cause is currently available, no transfer function has yet been called, or one has but hasn’t yet finished
- NORMAL
the call was transferred successfully.
- TIMEOUT
the transfer took longer than allowed to complete.
- HANGUP
the call being transferred was hung up before transfer occurred.
- TARGETREJECT
the transfer target rejected the call, for example it may have been busy.
- TARGETHANGUP
the transfer target was hung up before transfer occurred.
- FAIL
the transfer failed.
Usage example:
state = channel.retrievable_transfer(other_call, 'sip:3301@127.0.0.1:5060;user=phone') if state != channel.State.TRANSFERRED: if channel.transfer_cause() == channel.TransferCause.HANGUP: print("could not transfer the call, the call has hung up")