Asterisk-core

From 탱이의 잡동사니
Revision as of 14:25, 17 October 2016 by Pchero (talk | contribs)
Jump to navigation Jump to search

Overview

Asterisk core 명령어 내용 정리

Basic

core 모듈은 Asterisk 의 가장 기본적인 모듈이다. Asterisk 의 전체적인 동작 방식과 설정들을 담당한다.

help

pluto*CLI> help core
core abort shutdown            -- Cancel a running shutdown
core clear profile             -- Clear profiling info
core ping taskprocessor        -- Ping a named task processor
core reload                    -- Global reload
core restart gracefully        -- Restart Asterisk gracefully
core restart now               -- Restart Asterisk immediately
core restart when convenient   -- Restart Asterisk at empty call volume
core set debug channel         -- Enable/disable debugging on a channel
core set debug                 -- Set level of debug chattiness
core set verbose               -- Set level of verbose chattiness
core show applications [like|describing] -- Shows registered dialplan applications
core show application          -- Describe a specific dialplan application
core show calls [uptime]       -- Display information on calls
core show channels [concise|verbose|count] -- Display information on channels
core show channel              -- Display information on a specific channel
core show channeltypes         -- List available channel types
core show channeltype          -- Give more details on that channel type
core show codecs [audio|video|image|text] -- Displays a list of registered codecs
core show codec                -- Shows a specific codec
core show config mappings      -- Display config mappings (file names to config engines)
core show file formats         -- Displays file formats
core show file version [like]  -- List versions of files used to build Asterisk
core show functions [like]     -- Shows registered dialplan functions
core show function             -- Describe a specific dialplan function
core show hanguphandlers all   -- Show hangup handlers of all channels
core show hanguphandlers       -- Show hangup handlers of a specified channel
core show help                 -- Display help list, or specific help on a command
core show hints                -- Show dialplan hints
core show hint                 -- Show dialplan hint
core show image formats        -- Displays image formats
core show license              -- Show the license(s) for this copy of Asterisk
core show profile              -- Display profiling info
core show settings             -- Show some core settings
core show sounds               -- Shows available sounds
core show sound                -- Shows details about a specific sound
core show switches             -- Show alternative switches
core show sysinfo              -- Show System Information
core show taskprocessors       -- List instantiated task processors and statistics
core show threads              -- Show running threads
core show translation          -- Display translation matrix
core show uptime [seconds]     -- Show uptime information
core show version              -- Display version info
core show warranty             -- Show the warranty (if any) for this copy of Asterisk
core stop gracefully           -- Gracefully shut down Asterisk
core stop now                  -- Shut down Asterisk immediately
core stop when convenient      -- Shut down Asterisk at empty call volume
core waitfullybooted           -- Wait for Asterisk to be fully booted

abort shutdown

진행중인 shutdown 명령을 취소한다.

pluto*CLI> help core abort shutdown 
Usage: core abort shutdown
       Causes Asterisk to abort an executing shutdown or restart, and resume normal
       call operations.

clear profile

profile 을 초기화한다.

pluto*CLI> help core clear profile
Usage: core clear profile
       clear profile information

ping taskprocessor

지정된 taskprocessor 로 ping 을 보낸다.

pluto*CLI> core ping taskprocessor 
Usage: core ping taskprocessor <taskprocessor>
	Displays the time required for a task to be processed

Example

pluto*CLI> core ping taskprocessor subp:SIP/200-00000013 

pinging subp:SIP/200-00000013 ...
	   subp:SIP/200-00000013 ping time: 0.000392 sec

reload

전체 reload 를 한다.

pluto*CLI> help core reload
Usage: core reload
       Execute a global reload.

Example

pluto*CLI> core reload 
[Oct 17 14:02:48] WARNING[30629]: res_phoneprov.c:1231 get_defaults: Unable to find a valid server address or name.
[Oct 17 14:02:48] ERROR[30629]: ari/config.c:312 process_config: No configured users for ARI
[Oct 17 14:02:48] NOTICE[30629]: chan_skinny.c:8418 config_load: Configuring skinny from skinny.conf
[Oct 17 14:02:49] NOTICE[30629]: cel_custom.c:97 load_config: No mappings found in cel_custom.conf. Not logging CEL to custom CSVs.
[Oct 17 14:02:49] NOTICE[30629]: app_queue.c:8700 reload_queue_rules: queuerules.conf has not changed since it was last loaded. Not taking any action.

restart gracefully

Asterisk 를 재시작한다. 더이상의 새로운 Call 에 대해서는 허용하지 않고, 현재 있는 콜들이 모두 종료된 이후, Asterisk 를 재시작 한다.

pluto*CLI> help core restart gracefully
Usage: core restart gracefully
       Causes Asterisk to stop accepting new calls and exec() itself performing a cold
       restart when all active calls have ended.

Example

pluto*CLI> core restart gracefully
pluto*CLI> 
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups

restart now

즉시 Asterisk 를 재시작한다.

pluto*CLI> help core restart now
Usage: core restart now
       Causes Asterisk to hangup all calls and exec() itself performing a cold
       restart.

Example

pluto*CLI> core restart now
pluto*CLI> 
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups

restart when convenient

모든 Active 콜들이 종료 되었을 때 Asterisk 를 재시작한다. 새로운 Call 역시 계속 Accept 된다.

pluto*CLI> help core restart when convenient 
Usage: core restart when convenient
       Causes Asterisk to perform a cold restart when all active calls have ended.

Example

pluto*CLI> core restart when convenient
Waiting for inactivity to perform restart
pluto*CLI> 
Disconnected from Asterisk server
Asterisk cleanly ending (0).
Executing last minute cleanups

set debug channel

특정/모든 채널에 대해 debug 옵션을 설정한다.

pluto*CLI> help core set debug channel
Usage: core set debug channel <all|channel> [off]
       Enables/disables debugging on all or on a specific channel.

set debug

모듈의 debug 레벨을 설정한다.

pluto*CLI> help core set debug
Usage: core set debug [atleast] <level> [module]
       core set debug off

       Sets level of debug messages to be displayed or
       sets a module name to display debug messages from.
       0 or off means no messages should be displayed.
       Equivalent to -d[d[...]] on startup

set verbose

verbose 레벨을 설정한다.

pluto*CLI> help core set verbose 
Usage: core set verbose [atleast] <level> [silent]
       core set verbose off

       Sets level of verbose messages to be displayed.
       0 or off means no verbose messages should be displayed.
       The silent option means the command does not report what
       happened to the verbose level.
       Equivalent to -v[v[...]] on startup

show applications

입력과 매칭되는 내용을 가진 Asterisk application 를 나타낸다.

pluto*CLI> help core show applications
Usage: core show applications [{like|describing} <text>]
       List applications which are currently available.
       If 'like', <text> will be a substring of the app name
       If 'describing', <text> will be a substring of the description

Example

pluto*CLI> core show applications like park
    -= Matching Asterisk Applications =-
                  Park: Park yourself. 
       ParkAndAnnounce: Park and Announce. 
            ParkedCall: Retrieve a parked call. 
    -= 3 Applications Matching =-

show application

입력한 application 의 상세 설명을 보여준다.

pluto*CLI> help core show application
Usage: core show application <application> [<application> [<application> [...]]]
       Describes a particular application.

Example

pluto*CLI> core show application park

  -= Info about application 'Park' =- 

[Synopsis]
Park yourself. 

[Description]
Used to park yourself (typically in combination with an attended transfer to
know the parking space).
...

show calls

현재 진행중인 콜의 숫자와 현재까지 진행된 콜의 숫자를 보여준다.

pluto*CLI> help core show calls
Usage: core show calls [uptime] [seconds]
       Lists number of currently active calls and total number of calls
       processed through PBX since last restart. If 'uptime' is specified
       the system uptime is also displayed. If 'seconds' is specified in
       addition to 'uptime', the system uptime is displayed in seconds.

Example

pluto*CLI> core show calls uptime seconds
0 active calls
0 calls processed
System uptime: 33863

pluto*CLI> core show calls uptime 
0 active calls
0 calls processed
System uptime: 9 hours, 24 minutes, 27 seconds

show channels

현재 설정된 채널들의 목록을 보여준다.

pchero*CLI> help core show channels
Usage: core show channels [concise|verbose|count]
       Lists currently defined channels and some information about them. If
       'concise' is specified, the format is abridged and in a more easily
       machine parsable format. If 'verbose' is specified, the output includes
       more and longer fields. If 'count' is specified only the channel and call
       count is output.
	The 'concise' option is deprecated and will be removed from future versions
	of Asterisk.

Example normal

pluto*CLI> core show channels
Channel              Location             State   Application(Data)             
Local/200@DialA      s@DialAccount:1      Ringing AppQueue((Outgoing Line))     
Local/200@DialA      s@DialAccount:12     Ring    Dial(Local/45200@DialLine
Local/45200@Dia      s@DialLine:1         Ringing AppDial((Outgoing Line))      
Local/45200@Dia      45200@DialLine:      Ring    Dial(SIP/+45200@csbc02,18
Local/0002@CallFromI (None)               Up      AppDial((Outgoing Line))      
Local/0002@CallFromI s@queue_metallica:22 Up      Queue(Metallica,cti ,,,3600)  
SIP/403-test_403_sof s@CallFromSipDevice: Up      Dial(Local/0002@CallFromIntern
SIP/csbc02-00001399  45200@CallFromC      Ringing AppDial((Outgoing Line))      
8 active channels
4 active calls
9224 calls processed

Example verbose

상세 정보를 칼럼 내용과 같이 나타낸다.

pchero*CLI> core show channels verbose
Channel              Context              Extension        Prio State   Application  Data                      CallerID        Duration Accountcode PeerAccount BridgedTo           
Local/200-pcherosoft DialLine             200-pcherosoftph   88 Up      Dial         SIP/200-pcherosoftphone20 600             00:03:08                         SIP/200-pcherosoftph
Local/200-pcherosoft DialLine                                 1 Up      AppDial      (Outgoing Line)           200             00:03:08                         Local/200@DialAccoun
Local/200@DuetNumber DuetNumber                               1 Up      AppDial      (Outgoing Line)           200             00:03:08                         Local/200@CallFromIn
Local/200@DuetNumber DuetNumber           s                  12 Up      Dial         Local/200@DialAccount,360 600             00:03:08                         Local/200@DialAccoun
SIP/600-pchero-softp CallFromSipDevice    s                  43 Up      Dial         Local/200@CallFromInterna 600             00:03:08                         Local/200@CallFromIn
Local/200@CallFromIn pcheroDialDirect     s                   7 Up      Dial         Local/200@DuetNumber,30,  600             00:03:08                         Local/200@DuetNumber
Local/200@CallFromIn CallFromInternal                         1 Up      AppDial      (Outgoing Line)           200             00:03:08                         SIP/600-pchero-softp
Local/200@DialAccoun DialAccount          s                  12 Up      Dial         Local/200-fake00085d13c6a 600             00:03:08                         Local/200-pcherosoft
Local/200@DialAccoun DialAccount                              1 Up      AppDial      (Outgoing Line)           200             00:03:08                         Local/200@DuetNumber
SIP/200-pcherosoftph app_dial_gosub_virtu s                   2 Up      AppDial      (Outgoing Line)           200             00:03:08                         Local/200-pcherosoft
10 active channels
5 active calls
1242 calls processed

Example concise

상세 정보를 구분자(!)와 함께 나타낸다.

pchero*CLI> core show channels concise
Local/200@DialAccount-e8d1;1!DialAccount!s!1!Ringing!AppQueue!(Outgoing Line)!200!!!3!9!(None)!1474977577.5519
Local/200@DialAccount-e8d1;2!DialAccount!s!12!Ring!Dial!Local/45200@DialLine/n,3600!503!!!3!9!(None)!1474977577.5520
Local/0002@CallFromInternal-9407;2!queue_metallica!s!19!Up!Queue!Metallica,ti ,,,3600!503!!!3!120!(None)!1474977466.5503
Local/0002@CallFromInternal-9407;1!CallFromInternal!!1!Up!AppDial!(Outgoing Line)!s!!!3!120!SIP/503-pcherosoftphone503-1-0000056c!1474977466.5502
SIP/csbc04-00000570!CallFromCSBC!45200!1!Ringing!AppDial!(Outgoing Line)!45200!!!3!9!(None)!1474977577.5523
SIP/503-pcherosoftphone503-1-0000056c!CallFromSipDevice!s!43!Up!Dial!Local/0002@CallFromInternal/n,3600,!503!!!3!120!Local/0002@CallFromInternal-9407;1!1474977466.5501
Local/45200@DialLine-9c29;2!DialLine!45200!74!Ring!Dial!SIP/+45200@csbc04,180,tciU(SetCalledIDNum^200^45200^Providertdcdanmark^200^200)!503!!!3!9!(None)!1474977577.5522
Local/45200@DialLine-9c29;1!DialLine!s!1!Ringing!AppDial!(Outgoing Line)!200!!!3!9!(None)!1474977577.5521

Example count

count 와 관련된 내용만을 표시한다.

pchero*CLI> core show channels count
8 active channels
4 active calls
2174 calls processed

show channel

지정된 채널의 상세 정보를 표시한다. Tab 키를 입력하면 확인 가능한 채널 이름의 목록이 나타난다.

pluto*CLI> help core show channel
Usage: core show channel <channel>
       Shows lots of information about the specified channel.

Example

pluto*CLI> core show channel SIP/403-test_403_softphone-1-00001394
 -- General --
           Name: SIP/403-test_403_softphone-1-00001394
           Type: SIP
       UniqueID: 1476432524.22708
       LinkedID: 1476432524.22708
      Caller ID: 403
 Caller ID Name: test3
Connected Line ID: (N/A)
Connected Line ID Name: (N/A)
    DNID Digits: 0002
       Language: da
          State: Up (6)
          Rings: 0
  NativeFormats: 0x8 (alaw)
    WriteFormat: 0x8 (alaw)
     ReadFormat: 0x8 (alaw)
 WriteTranscode: No 
  ReadTranscode: No 
1st File Descriptor: 30
      Frames in: 38657
     Frames out: 38465
 Time to Hangup: 0
   Elapsed Time: 0h12m50s
...

show channeltypes

사용가능한 채널 타입의 목록을 표시한다.

pluto*CLI> help core show channeltypes
Usage: core show channeltypes
       Lists available channel types registered in your
       Asterisk server.

Example

pluto*CLI> core show channeltypes
Type             Description                              Devicestate  Indications  Transfer    
-----------      -----------                              -----------  -----------  ----------- 
USTM             UNISTIM Channel Driver                   no           yes          no          
Recorder         Bridge Media Recording Channel Driver    no           yes          no          
Announcer        Bridge Media Announcing Channel Driver   no           yes          no          
Phone            Standard Linux Telephony API Driver      no           yes          no          
Console          OSS Console Channel Driver               no           yes          no          
CBAnn            Conference Bridge Announcing Channel     no           yes          no          
CBRec            Conference Bridge Recording Channel      no           no           no          
Skinny           Skinny Client Control Protocol (Skinny)  yes          yes          no          
SIP              Session Initiation Protocol (SIP)        yes          yes          yes         
UnicastRTP       Unicast RTP Media Channel Driver         no           no           no          
MulticastRTP     Multicast RTP Paging Channel Driver      no           no           no          
IAX2             Inter Asterisk eXchange Driver (Ver 2)   yes          yes          yes         
MGCP             Media Gateway Control Protocol (MGCP)    yes          yes          no          
Local            Local Proxy Channel Driver               yes          yes          no          
Surrogate        Surrogate channel used to pull channel f no           no           no          
----------
15 channel drivers registered.

show channeltype

입력한 채널타입의 상세정보를 표시한다.

pluto*CLI> help core show channeltype 
Usage: core show channeltype <name>
	Show details about the specified channel type, <name>.

Example

pluto*CLI> core show channeltype SIP
-- Info about channel driver: SIP --
  Device State: yes
    Indication: yes
     Transfer : yes
  Capabilities: (g723|ulaw|alaw|gsm|g726|g726aal2|adpcm|slin|slin|slin|slin|slin|slin|slin|slin|slin|lpc10|g729|speex|speex|speex|ilbc|g722|siren7|siren14|testlaw|g719|opus|silk|silk|silk|silk)
   Digit Begin: yes
     Digit End: yes
    Send HTML : yes
 Image Support: no
  Text Support: yes

show codecs

사용가능한 코덱 리스트를 보여준다.

pluto*CLI> help core show codecs
Usage: core show codecs [audio|video|image|text]
       Displays codec mapping

Example

pluto*CLI> core show codecs
Disclaimer: this command is for informational purposes only.
	It does not indicate anything about your configuration.
      ID TYPE  NAME         FORMAT           DESCRIPTION
------------------------------------------------------------------------------------------------
      30 image png          png              (PNG Image)
       5 audio g726         g726             (G.726 RFC3551)
       3 audio alaw         alaw             (G.711 a-law)
       1 audio g723         g723             (G.723.1)
      19 audio speex        speex            (SpeeX)
      20 audio speex        speex16          (SpeeX 16khz)
      21 audio speex        speex32          (SpeeX 32khz)
      23 audio g722         g722             (G722)
      31 video h261         h261             (H.261 video)
      32 video h263         h263             (H.263 video)
...

Example text

pluto*CLI> core show codecs text
Disclaimer: this command is for informational purposes only.
	It does not indicate anything about your configuration.
      ID TYPE  NAME         FORMAT           DESCRIPTION
------------------------------------------------------------------------------------------------
      37 text  red          red              (T.140 Realtime Text with redundancy)
      38 text  t140         t140             (Passthrough T.140 Realtime Text)

show codec

지정한 순서의 코덱 맵핑을 보여준다.

pluto*CLI> help core show codec
Usage: core show codec <number>
       Displays codec mapping

Example

pluto*CLI> core show codec 2
          2 G.711 u-law (ulaw)

show config mappings

config mapping 을 보여준다.

pluto*CLI> help core show config mappings 
Usage: core show config mappings
	Shows the filenames to config engines.

Example

pluto*CLI> core show config mappings 
Config Engine: sqlite3

show file formats

설정된 전체 file format 들을 보여준다.

pluto*CLI> help core show file formats 
Usage: core show file formats
       Displays currently registered file formats (if any).

Example

pluto*CLI> core show file formats
Format     Name       Extensions          
------     ----       ----------          
siren7     siren7     siren7              
h264       h264       h264                
gsm        gsm        gsm                 
slin16     wav16      wav16               
slin       wav        wav                 
g723       g723sf     g723|g723sf         
slin192    sln192     sln192              
slin96     sln96      sln96               
slin48     sln48      sln48               
slin44     sln44      sln44               
slin32     sln32      sln32               
slin24     sln24      sln24               
slin16     sln16      sln16               
slin12     sln12      sln12               
slin       sln        sln|raw             
adpcm      vox        vox                 
gsm        wav49      WAV|wav49           
g722       g722       g722                
ulaw       au         au                  
alaw       alaw       alaw|al|alw         
ulaw       pcm        pcm|ulaw|ul|mu|ulw  
g729       g729       g729                
g726       g726-16    g726-16             
g726       g726-24    g726-24             
g726       g726-32    g726-32             
g726       g726-40    g726-40             
ilbc       iLBC       ilbc                
siren14    siren14    siren14             
h263       h263       h263                
g719       g719       g719                
30 file formats registered.

show file version

현재 작동중인 Asterisk 와 모듈의 컴파일 버전 정보를 표시한다.

pluto*CLI> help core show file version 
Usage: core show file version [like <pattern>]
       Lists the files along with the Asterisk version.
       Optional regular expression pattern is used to filter the file list.

Example

pluto*CLI> core show file version like out
File                      Revision                                
----                      --------                                
sip/route.c               13.11.2                                 
func_timeout.c            13.11.2                                 
src/res_outbound.c        13.11.2                                 
stasis_message_router.c   13.11.2                                 
4 files listed.

show functions

dialplan 에서 사용가능한 application 목록을 표시한다.

pluto*CLI> help core show functions
Usage: core show functions [like <text>]
       List builtin functions, optionally only those matching a given string

Example

pluto*CLI> core show functions
Installed Custom Functions:
--------------------------------------------------------------------------------
AES_DECRYPT           AES_DECRYPT(key,string)              Decrypt a string encoded in base64 with AES given a 16 character key. 
AES_ENCRYPT           AES_ENCRYPT(key,string)              Encrypt a string with AES given a 16 character key. 
AGENT                 AGENT(AgentId[:item])                Gets information about an Agent 
...

show function

지정한 function 의 상세 설명을 표시한다.

pluto*CLI> help core show function
Usage: core show function <function>
       Describe a particular dialplan function.

Example

pluto*CLI> core show function AGENT

  -= Info about function 'AGENT' =- 

[Synopsis]
Gets information about an Agent 

[Description]
Not available

[Syntax]
AGENT(AgentId[:item])

[Arguments]
item
    The valid items to retrieve are:
    status - (default) The status of the agent (LOGGEDIN | LOGGEDOUT)
    password - Deprecated.  The dialplan handles any agent authentication.
    name - The name of the agent
    mohclass - MusicOnHold class
    channel - The name of the active channel for the Agent (AgentLogin)
    fullchannel - The untruncated name of the active channel for the Agent
    (AgentLogin)

[See Also]
Not available

show settings

Asterisk 설정 정보를 표시한다.

pluto*CLI> help core show settings
Usage: core show settings
       Show core misc settings

Example

PBX Core settings
-----------------
  Version:                     GIT-13-14b4111
  Build Options:               AST_DEVMODE, LOADABLE_MODULES, BUILD_NATIVE, OPTIONAL_API
  Maximum calls:               Not set
  Maximum open file handles:   Not set
  Root console verbosity:      0
  Current console verbosity:   0
  Debug level:                 0
  Maximum load average:        0.000000
  Minimum free memory:         0 MB
  Startup time:                00:39:41
  Last reload time:            06:29:11
  System:                      Linux/3.16.0-4-amd64 built by pchero on x86_64 2015-12-08 11:42:30 UTC
  System name:                 
  Entity ID:                   08:00:27:1f:0a:4b
  Default language:            en
  Language prefix:             Enabled
  User name and group:         /
  Executable includes:         Disabled
  Transcode via SLIN:          Enabled
  Transmit silence during rec: Disabled
  Generic PLC:                 Enabled
  Min DTMF duration::          80

* Subsystems
  -------------
  Manager (AMI):               Enabled
  Web Manager (AMI/HTTP):      Disabled
  Call data records:           Enabled
  Realtime Architecture (ARA): Disabled

* Directories
  -------------
  Configuration file:          
  Configuration directory:     /etc/asterisk
  Module directory:            /usr/lib/asterisk/modules
  Spool directory:             /var/spool/asterisk
  Log directory:               /var/log/asterisk
  Run/Sockets directory:       /var/run/asterisk
  PID file:                    /var/run/asterisk/asterisk.pid
  VarLib directory:            /var/lib/asterisk
  Data directory:              /var/lib/asterisk
  ASTDB:                       /var/lib/asterisk/astdb
  IAX2 Keys directory:         /var/lib/asterisk/keys
  AGI Scripts directory:       /var/lib/asterisk/agi-bin




References

<references />