Name

ChanIsAvail() — Finds out if a specified channel is currently available

Synopsis

ChanIsAvail(technology1/resource1[&technology2/resource2...][,option])

Checks to see if any of the requested channels are available. This application also sets the following channel variables:

AVAILCHAN

The name of the available channel, including the call session number used to perform the test

AVAILORIGCHAN

The canonical channel name that was used to create the channel—that is, the channel name without any session number

AVAILSTATUS

The status code for the channel

If the option s (which stands for “state”) is specified, Asterisk will consider the channel unavailable whenever it is in use, even if it can take another call.

If the j option is specified, and none of the requested channels are available, the new priority will be n+101 (where n is the current priority), if that priority exists.

; check both Zap/1 and Zap/2 to see if they're available
exten => 123,1,ChanIsAvail(Zap/1&Zap/2)
; print the available channel name to the Asterisk CLI
exten => 123,2,Verbose(0,${AVAILORIGCHAN})

Warning

This application does not work correctly on MGCP channels.