せでぃのブログ

ブログ初心者おいどんのどうでもいい愚痴やどうでもいい愚痴やどうでもいいマメ知識などを披露するチラシの裏です。

Asteriskの起動モードと専用コマンドについて

f:id:Sediment:20140815223551p:plain
 起動モードについて、何となくわかってきた。
 フォアグラウンドで起動するとすぐに画像のようなasterisk専用のCLIに入る。バックグラウンドの場合、専用のCLIには入らず普通のCentOSCLIのまま。


 バッググラウンドで動かす場合でも、asteriskは裏でちゃんと動いているし、# asterisk -vvvcrなどでasteriskCLIに入れる。CLIからはquitで抜けられる。
 一方、フォアグラウンドはquitコマンドが削除されてる。一応、!で専用画面からは抜けられるものの、今度はCentOSから抜けられなくなる。exitを叩くとasteriskCLIにに入るんだよ……
f:id:Sediment:20140818002827p:plain
 ただ、このCLI画面はSIPデバッグにすごく便利。この画面で電話を使うと、RTPの動きやringingなど、ダイヤルプランのフローやら何やら関係する動きがリアルタイムで流れるのだ。更に、フォアグラウンドで動かすのは、インストール直後のデバッグなどにもいいのかもしれない。素人には情報多すぎてノーセンキューだったが。
 PBX入れるのにパケット見たりチューニングしないところもないだろうし、チューニング中はCLI画面立ち上げっぱなしになりそう。
Asteriskの起動と終了(1.8) - VOIP-Info.jp Wiki


CLI> ?
でコマンド一覧が呼び出せる。11.10.0だとこんな感じ。コマンドの続きは?やtabで補完できる。

! acl ael agent agi
aoc calendar cc cdr cel
channel cli confbridge config core
data database devstate dialplan dnsmgr
dundi event fax features file
group hangup help http iax2
indication keys local logger manager
minivm mixmonitor module moh no
originate parkedcalls phoneprov presencestate pri
queue realtime reload rtcp rtp
say sip stun timing udptl
ulimit unistim voicemail


 最初、主に使うのはこちら。
コンフィグのリロード
CLI> config reload /etc/asterisk/extensions.conf
サービス再起動
CLI> core restart gracefully
サービス停止
CLI> core stop gracefully
ダイヤルプラン(extensions.conf内)で使うコマンドの解説
CLI> core show application ?


 特にダイヤルプランのコマンドは、独自の引数や変数が用意されていて、とてもじゃないが、解説しきれるものではないので、自分で調べる必要がある。一覧がこの量である。特にDialあたりは一読すべきかも。

AddQueueMember AELSub AgentLogin
AgentMonitorOutgoing AGI AlarmReceiver
AMD Answer Authenticate
BackGround BackgroundDetect Bridge
Busy CallCompletionCancel CallCompletionRequest
CELGenUserEvent ChangeMonitor ChanIsAvail
ChannelRedirect ChanSpy ClearHash
ConfBridge Congestion ContinueWhile
ControlPlayback DAHDIScan DateTime
DBdel DBdeltree DeadAGI
Dial Dictate Directory
DISA DumpChan EAGI
Echo EndWhile Exec
ExecIf ExecIfTime ExitWhile
ExtenSpy ExternalIVR Festival
FollowMe ForkCDR GetCPEID
Gosub GosubIf Goto
GotoIf GotoIfTime Hangup
HangupCauseClear IAX2Provision ICES
ImportVar Incomplete Log
Macro MacroExclusive MacroExit
MacroIf MailboxExists MessageSend
Milliwatt MinivmAccMess MinivmDelete
MinivmGreet MinivmMWI MinivmNotify
MinivmRecord MixMonitor Monitor
Morsecode MP3Player MSet
MusicOnHold NBScat NoCDR
NoOp Originate Page
Park ParkAndAnnounce ParkedCall
PauseMonitor PauseQueueMember Pickup
PickupChan Playback PlayTones
PrivacyManager Proceeding Progress
Queue QueueLog RaiseException
Read ReadExten ReceiveFAX
Record RemoveQueueMember ResetCDR
RetryDial Return Ringing
SayAlpha SayDigits SayNumber
SayPhonetic SayUnixTime SendDTMF
SendFAX SendImage SendText
SendURL Set SetAMAFlags
SetMusicOnHold SIPAddHeader SIPDtmfMode
SIPRemoveHeader SMS SoftHangup
SpeechActivateGrammar SpeechBackground SpeechCreate
SpeechDeactivateGrammar SpeechDestroy SpeechLoadGrammar
SpeechProcessingSound SpeechStart SpeechUnloadGrammar
StackPop StartMusicOnHold StopMixMonitor
StopMonitor StopMusicOnHold StopPlayTones
System TestClient TestServer
Transfer TryExec TrySystem
UnpauseMonitor UnpauseQueueMember UserEvent
Verbose VMAuthenticate VMSayName
VoiceMail VoiceMailMain VoiceMailPlayMsg
Wait WaitExten WaitForNoise
WaitForRing WaitForSilence WaitMusicOnHold
WaitUntil While Zapateller


更にデバッグモードに入ればパケットが見られる。
Asterisk CLI SIP - VOIP-Info.jp Wiki



このメッセージが気になっていろいろいじってたけど、ソフトフォン、X-LiteがIAX2というプロトコルに対応してないので、SIPのエラーでなければ問題なさそうだ。
f:id:Sediment:20140816074746p:plain

[Aug 16 07:27:55] WARNING[12491][C-00000024]: app_dial.c:2437 dial_exec_full: Unable to create channel of type 'IAX2' (cause 20 - Subscriber absent)

https://support.counterpath.com/responses/iax2_support