ChanIsAvail([Technology/Resource,options])
Dialplan Builder
-- build your ChanIsAvail() command
Specification of the device(s) to check. These must be in the format of `Technology/Resource`, where *Technology* represents a particular channel driver, and *Resource* represents a resource available to that particular channel driver.
Check for all available channels, not only the first one
Consider the channel unavailable if the channel is in use at all
Simply checks if specified channels exist in the channel list
Full arguments reference
Technology/ResourceTechnology/Resourcerequired - Specification of the device(s) to check. These must be in the format ofTechnology/Resource, where Technology represents a particular channel driver, and Resource represents a resource available to that particular channel driver.Technology2/Resource2- Optional extra devices to check (multiple)
optionsa- Check for all available channels, not only the first ones- Consider the channel unavailable if the channel is in use at allt- Simply checks if specified channels exist in the channel list
Description
This application will check to see if any of the specified channels are available.
This application sets the following channel variables:
- AVAILCHAN - The name of the available channel, if one exists
- AVAILORIGCHAN - The canonical channel name that was used to create the channel
- AVAILSTATUS - The device state for the device
- AVAILCAUSECODE - The cause code returned when requesting the channel
Arguments
Technology/ResourceTechnology/Resourcerequired - Specification of the device(s) to check. These must be in the format ofTechnology/Resource, where Technology represents a particular channel driver, and Resource represents a resource available to that particular channel driver.Technology2/Resource2- Optional extra devices to check (multiple)
optionsa- Check for all available channels, not only the first ones- Consider the channel unavailable if the channel is in use at allt- Simply checks if specified channels exist in the channel list
User Notes
Know a tip or gotcha for this topic? Share it below and help others.
Contribute a note
Share a tip, gotcha, or practical example. Keep it under 2000 characters. No questions (use the Asterisk community forums for support). Wrap code in backticks.
Related
Applications
MusicOnHold()
ADSIProg()
AELSub()
AGI()
AMD()
AddQueueMember()
AgentLogin()
AgentRequest()
AlarmReceiver()
Answer()
AttendedTransfer()
AudioSocket()
Authenticate()
Background()
BackgroundDetect()
BlindTransfer()
Bridge()
BridgeAdd()
BridgeWait()
Broadcast()
Busy()
CELGenUserEvent()
CallCompletionCancel()
CallCompletionRequest()
ChanIsAvail()
ChanSpy()
ChangeMonitor()
ChannelRedirect()
ClearHash()
ConfBridge()
ConfKick()
Congestion()
ContinueWhile()
ControlPlayback()
DAHDIAcceptR2Call()
DAHDIRAS()
DAHDIScan()
DAHDISendCallreroutingFacility()
DAHDISendKeypadFacility()
DBdeltree()
DISA()
DateTime()
DeadAGI()
Dial()
Dictate()
Directory()
DumpChan()
EAGI()
Echo()
Else()
ElseIf()
EndIf()
EndWhile()
Exec()
ExecIf()
ExecIfTime()
ExitIf()
ExitWhile()
ExtenSpy()
ExternalIVR()
Festival()
Flash()
FollowMe()
ForkCDR()
GetCPEID()
Gosub()
GosubIf()
Goto()
GotoIf()
GotoIfTime()
Hangup()
HangupCauseClear()
IAX2Provision()
ICES()
IVRDemo()
If()
ImportVar()
Incomplete()
JACK()
JabberJoin()
JabberLeave()
JabberSend()
JabberSendGroup()
JabberStatus()
Log()
MP3Player()
MSet()
Macro()
MacroExclusive()
MacroExit()
MacroIf()
MailboxExists()
MeetMe()
MeetMeAdmin()
MeetMeChannelAdmin()
MeetMeCount()
MessageSend()
Milliwatt()
MinivmAccMess()
MinivmDelete()
MinivmGreet()
MinivmMWI()
MinivmNotify()
MinivmRecord()
MixMonitor()
Monitor()
Morsecode()
NBScat()
NoCDR()
NoOp()
ODBCFinish()
ODBC_Commit()
ODBC_Rollback()
OSPAuth()
OSPFinish()
OSPLookup()
OSPNext()
Originate()
PJSIPHangup()
PJSIPNotify()
Page()
Park()
ParkAndAnnounce()
ParkedCall()
PauseMonitor()
PauseQueueMember()
Pickup()
PickupChan()
PlayTones()
Playback()
PrivacyManager()
Proceeding()
Progress()
Queue()
QueueLog()
QueueUpdate()
RaiseException()
Read()
ReadExten()
ReceiveFAX()
ReceiveMF()
ReceiveSF()
ReceiveText()
Record()
Reload()
RemoveQueueMember()
ResetCDR()
RetryDial()
Return()
Ringing()
SIPAddHeader()
SIPDtmfMode()
SIPRemoveHeader()
SIPSendCustomINFO()
SLAStation()
SLATrunk()
SMS()
SayAlpha()
SayAlphaCase()
SayCountedAdj()
SayCountedNoun()
SayDigits()
SayMoney()
SayNumber()
SayOrdinal()
SayPhonetic()
SayUnixTime()
SendDTMF()
SendFAX()
SendImage()
SendMF()
SendSF()
SendText()
SendURL()
Set()
SetAMAFlags()
Signal()
SkelGuessNumber()
SoftHangup()
SpeechActivateGrammar()
SpeechBackground()
SpeechCreate()
SpeechDeactivateGrammar()
SpeechDestroy()
SpeechLoadGrammar()
SpeechProcessingSound()
SpeechStart()
SpeechUnloadGrammar()
StackPop()
StartMusicOnHold()
Stasis()
StatsD()
StopMixMonitor()
StopMonitor()
StopMusicOnHold()
StopPlayTones()
StoreDTMF()
StreamEcho()
System()
TestClient()
TestServer()
ToneScan()
Transfer()
TryExec()
TrySystem()
UnpauseMonitor()
UnpauseQueueMember()
UserEvent()
VMAuthenticate()
VMSayName()
Verbose()
VoiceMail()
VoiceMailMain()
VoiceMailPlayMsg()
Wait()
WaitDigit()
WaitExten()
WaitForCondition()
WaitForNoise()
WaitForRing()
WaitForSignal()
WaitForSilence()
WaitForTone()
WaitUntil()
While()
Zapateller()