When the channel is in any state > 1 , i.e. up and connected, the value of the relevant channel variables is as follows:-AVAILCHAN=""
AVAILORIGCHAN=""
AVAILSTATUS=(the enumerated value corrosponding to the state)

Looking at the code, the application does not set the AVAILCHAN & AVAILORIGCHAN channel variables (tmp_availchan and tmp_availorig) when the state is > 1
Any clues why its been done so?

For reference:-
host123f4a*CLI> core show application ChanIsAvailhost123f4a*CLI> -= Info about application 'ChanIsAvail' =-[Synopsis] Check channel availability[Description] ChanIsAvail(Technology/resource[&Technology2/resource2...][,options]):This application will check to see if any of the specified channels are available. Options: a - Check for all available channels, not only the first one. s - Consider the channel unavailable if the channel is in use at all. t - Simply checks if specified channels exist in the channel list (implies option s). This application sets the following channel variable upon completion: AVAILCHAN - the name of the available channel, if one exists AVAILORIGCHAN - the canonical channel name that was used to create the channel AVAILSTATUS - the status code for the available channel