The iphone can only set up an unconditional transfer answer, so there are some hidden commands to set up a transfer answer.
The following methods have been validated to be available.
Specifically as follows
All calls
Query Status: * #21 #
Set transfer: **21* transferred to the phone number #
Cancel Transfer: # #21 #
No answer calls:
Query Status: * #61 #
Set transfer: **61* transferred to number * seconds (minimum 5 seconds, up to 30 seconds) # (for example: **61*13809812345*11*30#)
Cancel Transfer: # #61 #
Shutdown or no signal when the caller:
Query Status: * #62 #
Set transfer: **62* transferred to the phone number #
Cancel Transfer: # #62 #
Call when busy:
Query Status: * #67 #
Set transfer: **67* transferred to the phone number #
Cancel Transfer: # #67 #
Call forwarding for voice call type
All voice calls
Query Status: * #21 *11#
Set transfer: **21* transferred to the phone number *11#
Cancel transfer: # #21 *11#
No answering voice calls:
Query Status: * #61 *11#
Set transfer: **61* transferred to phone number *11* seconds (minimum 5 seconds, up to 30 seconds) # (for example: **61*13809812345*11*30#)
Cancel transfer: # #61 *11#
Voice calls when shutdown or no signal:
Query Status: * #62 *11#
Set transfer: **62* transferred to the phone number *11#
Cancel transfer: # #62 *11#
Voice calls when busy:
Query Status: * #67 *11#
Set transfer: **67* transferred to the phone number *11#
Cancel transfer: # #67 *11#
Other features
SMS Center Number
Query Status: * #5005 *7672# Setup number: *5005*7672* SMS Center number #
Delete Number: # #5005 *7672#
Call Waiting
Query Status: * #43 #
Enable wait: *43#
Cancel wait: #43 #