/l3/users/sbond/nt-voip-2011-06/linux8.unix.nt/root :1 :2 :3 :4 :5 :6 :7 :8 :9 :10 :11 :12 :13 :14 :15 :16 :17 :18 :19 :20 :21 :22 :23 :24 :25 :26 :27 :28 :29 :30 :31 :32 :33 :34 :35 :36 :37 :38 :39 |
|
#!v
[general] context=default allowoverlap=no udpbindaddr=0.0.0.0 tcpenable=no tcpbindaddr=0.0.0.0 srvlookup=yes register => lvov:password@192.168.107.1/kiev register => lvov:password@192.168.103.1/paris [2401] ... language=de callgroup=100 pickugroup=100 [2402] username=lvov canreinvite=no context=gr4 callgroup=100 pickugroup=100 type=friend 24,0-1 Top |
#!v
register => lvov:password@192.168.107.1/kiev register => lvov:password@192.168.103.1/paris [2401] type=friend secret=password host=dynamic user=2401 callerid="VoIP Phone <2401>" context=gr3isk/sip.conf" 58L, 866C mailbox=2401@default ... secret=password [paris]namic [ ] username=lvov canreinvite=no context=gr4 callgroup=100 pickugrou=30 =30 "sip.conf" 58L, 858C written |
#!v
[general] context=default allowoverlap=no udpbindaddr=0.0.0.0 tcpenable=no tcpbindaddr=0.0.0.0 srvlookup=yes register => lvov:password@192.168.107.1/kiev register => lvov:password@192.168.103.1/paris [2401] ... [paris]namic [ ] username=lvov canreinvite=no context=gr4 callgroup=100 pickugrou=30 =30 "sip.conf" 58L, 858C written callgroup=100 |
#!v
[general] context=default allowoverlap=no udpbindaddr=0.0.0.0 tcpenable=no tcpbindaddr=0.0.0.0 srvlookup=yes "/etc/asterisk/sip.conf" 58L, 866C canreinvite=no context=gr4 ... =30 "sip.conf" 58L, 858C written secret=password host=dynamic user=2402 callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de callgroup=100 |
#vim /etc/asterisk/extensions.conf
|
#vim /etc/asterisk/extensions.conf
--- /tmp/l3-saved-22920.8386.18634 2011-06-24 10:35:37.000000000 +0300 +++ /etc/asterisk/extensions.conf 2011-06-24 10:36:11.000000000 +0300 @@ -152,7 +152,7 @@ exten => _24XX,n,Monitor(wav,${MON_FILENAME},m) ;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)}) ;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})}) -exten => _24XX,n,Dial(SIP/${EXTEN},10) +exten => _24XX,n,Dial(SIP/${EXTEN},20) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call) exten => _24XX,n,Hangup() |
#!v
[ ] [2402] type=friend secret=pa=20 =20 host=dynamic [2402]402 [ ] callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de pickugroup=30 =20 =20 [kiev] [kiev] type=friend "sip.conf" 54L, 804C written |
#!v
[ ] [2402] type=friend secret=pa=20 =20 host=dynamic [2402]402 [ ] callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de pickugroup=30 =20 =20 [kiev] [kiev] type=friend "sip.conf" 54L, 804C written |
#!v
[ ] [2402] type=friend secret=pa=20 =20 host=dynamic [2402]402 [ ] callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de pickugroup=30 =20 =20 [kiev] [kiev] type=friend "sip.conf" 54L, 804C written |
#!v
[ ] [2402] type=friend secret=pa=20 =20 host=dynamic [2402]402 [ ] callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de pickugroup=30 =20 =20 [kiev] [kiev] type=friend "sip.conf" 54L, 804C written |
#!v
upgroup=20 [kiev] [2402] [ ] secret=password host=dynamic username=lvov canreinvite=no upgroup=20 context=gr4 [kiev] [paris] [paris] secret=password [paris] host=dynamic username=lvov canreinvite=no "sip.conf" 54L, 806C written |
#!v
upgroup=20 [kiev] [2402] [ ] secret=password host=dynamic username=lvov canreinvite=no upgroup=20 context=gr4 [kiev] [paris] [paris] secret=password [paris] host=dynamic username=lvov canreinvite=no "sip.conf" 54L, 806C written |
#!v
upgroup=20 [kiev] [2402] [ ] secret=password host=dynamic username=lvov canreinvite=no upgroup=20 context=gr4 [kiev] [paris] [paris] secret=password [paris] host=dynamic username=lvov canreinvite=no "sip.conf" 54L, 806C written |
#!v
upgroup=20 [kiev] [2402] [ ] secret=password host=dynamic username=lvov canreinvite=no upgroup=20 context=gr4 [kiev] [paris] [paris] secret=password [paris] host=dynamic username=lvov canreinvite=no "sip.conf" 54L, 806C written |
#!v
context=gr3isk/sip.conf" 54L, 806C mailbox=2401@default language=de callgroup=20 pickupgroup=20 [2401] [ ] [2402] type=friend secret=password ;perehvat ;perehvat host=dynamic user=2402 callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de "sip.conf" 54L, 846C written |
#!v
context=gr3isk/sip.conf" 54L, 806C mailbox=2401@default language=de callgroup=20 pickupgroup=20 [2401] [ ] [2402] type=friend secret=password ;perehvat ;perehvat host=dynamic user=2402 callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de "sip.conf" 54L, 846C written |
#!v
[general] context=default allowoverlap=no udpbindaddr=0.0.0.0 tcpenable=no tcpbindaddr=0.0.0.0 srvlookup=yes register => lvov:password@192.168.107.1/kiev register => lvov:password@192.168.103.1/paris [2401] ... type=friend secret=password ;perehvat ;perehvat host=dynamic user=2402 callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de "sip.conf" 54L, 846C written |
#!v
[general] context=default allowoverlap=no udpbindaddr=0.0.0.0 tcpenable=no tcpbindaddr=0.0.0.0 srvlookup=yes register => lvov:password@192.168.107.1/kiev register => lvov:password@192.168.103.1/paris [2401] ... secret=password host=dynamic ;perehvat ;perehvat user=2402 callerid="Softphone <2402>" context=gr3 mailbox=2402@default language=de callgroup=20 "sip.conf" 54L, 846C written |
#vim /etc/asterisk/queues.conf
--- /tmp/l3-saved-22920.11980.28882 2011-06-24 11:20:04.000000000 +0300 +++ /etc/asterisk/queues.conf 2011-06-24 11:20:54.000000000 +0300 @@ -498,3 +498,6 @@ ;member => Agent/:1,1 ; Any agent in group 1, wait for first ; available, but consider with penalty +[queue1] +member => SIP/2401 +member => SIP/2402 |
#vim /etc/asterisk/extensions.conf
--- /tmp/l3-saved-27557.21090.13847 2011-06-24 11:21:13.000000000 +0300 +++ /etc/asterisk/extensions.conf 2011-06-24 11:25:44.000000000 +0300 @@ -145,6 +145,12 @@ [local] + +exten => 2405,1,Answer +exten => 2405,n,SetMusicOnHold(default) +exten => 2405,n,Queue(queue1) + + ;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer ;exten => _24XX,n,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLER ID(num)}) |
#!v
[lang-menu] [ ] exten => s,1,Answer exten => s,n(startmenu),Background(/var/tmp/asterisk/record10) ;hi exten => s,n,WaitExten(1) exten => 7,1,Set(MENU_LANG=ru) exten => 7,n,Goto(menu,s,1) exten => 8,1,Set(MENU_LANG=uk) exten => 8,n,Goto(menu,s,1) exten => i,1,Background(/var/tmp/asterisk/record05) ;error (i-znachit ne izvestnii) ... ;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer ;exten => _24XX,n,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLER ID(num)}) exten => _24XX,n,Set(MON_FILENAME=record-${EXTEN}-${CALLERID(num)}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}) exten => _24XX,n,Monitor(wav,${MON_FILENAME},m) ;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)}) ;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})}) exten => _24XX,n,Dial(SIP/${EXTEN},20) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call) "/etc/asterisk/extensions.conf" 217L, 7147C written |
#!v
exten => s,n,WaitExten(3) exten => s,n,Background(/var/tmp/asterisk/record09) ; vy slihkom dolgo zhdete exten => i,1,Background(/var/tmp/asterisk/record05) ; oshibka exten => i,n,WaitExten(1) exten => i,n,Goto(menu,s,start-menu) ;exten => 1,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-kiev.txt) exten => 1,1,Goto(kievmenu,s,1) exten => 2,1,Goto(submenu,s,1) exten => 3,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-asterisk.txt) exten => 4,1,Playback(/var/tmp/asterisk/record06) ;svyaz s operatorom ... ;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer ;exten => _24XX,n,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLER ID(num)}) exten => _24XX,n,Set(MON_FILENAME=record-${EXTEN}-${CALLERID(num)}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}) exten => _24XX,n,Monitor(wav,${MON_FILENAME},m) ;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)}) ;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})}) exten => _24XX,n,Dial(SIP/${EXTEN},20) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call) "/etc/asterisk/extensions.conf" 217L, 7147C written |
#member => SIP/1102
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 19127) ... == Using SIP RTP CoS mark 5 [Jun 24 11:28:38] WARNING[23269]: chan_sip.c:5467 create_addr: No such host: 2405 [Jun 24 11:28:38] WARNING[23269]: app_dial.c:1747 dial_exec_full: Unable to create channel of type 'SIP' (cause 20 - Unknown) == Everyone is busy/congested at this time (1:0/0/1) -- Executing [2405@gr4:5] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:6] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:7] Hangup("SIP/kiev-00000091", "") in new stack == Spawn extension (gr4, 2405, 7) exited non-zero on 'SIP/kiev-00000091' linux8*CLI> exit Executing last minute cleanups |
#member => SIP/1102
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 19127) ... == Using SIP RTP CoS mark 5 [Jun 24 11:28:38] WARNING[23269]: chan_sip.c:5467 create_addr: No such host: 2405 [Jun 24 11:28:38] WARNING[23269]: app_dial.c:1747 dial_exec_full: Unable to create channel of type 'SIP' (cause 20 - Unknown) == Everyone is busy/congested at this time (1:0/0/1) -- Executing [2405@gr4:5] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:6] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:7] Hangup("SIP/kiev-00000091", "") in new stack == Spawn extension (gr4, 2405, 7) exited non-zero on 'SIP/kiev-00000091' linux8*CLI> exit Executing last minute cleanups |
#member => SIP/1102
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 19127) ... == Using SIP RTP CoS mark 5 [Jun 24 11:28:38] WARNING[23269]: chan_sip.c:5467 create_addr: No such host: 2405 [Jun 24 11:28:38] WARNING[23269]: app_dial.c:1747 dial_exec_full: Unable to create channel of type 'SIP' (cause 20 - Unknown) == Everyone is busy/congested at this time (1:0/0/1) -- Executing [2405@gr4:5] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:6] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:7] Hangup("SIP/kiev-00000091", "") in new stack == Spawn extension (gr4, 2405, 7) exited non-zero on 'SIP/kiev-00000091' linux8*CLI> exit Executing last minute cleanups |
#member => SIP/1102
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 19127) ... == Using SIP RTP CoS mark 5 [Jun 24 11:28:38] WARNING[23269]: chan_sip.c:5467 create_addr: No such host: 2405 [Jun 24 11:28:38] WARNING[23269]: app_dial.c:1747 dial_exec_full: Unable to create channel of type 'SIP' (cause 20 - Unknown) == Everyone is busy/congested at this time (1:0/0/1) -- Executing [2405@gr4:5] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:6] GotoIf("SIP/kiev-00000091", "0?missed_call") in new stack -- Executing [2405@gr4:7] Hangup("SIP/kiev-00000091", "") in new stack == Spawn extension (gr4, 2405, 7) exited non-zero on 'SIP/kiev-00000091' linux8*CLI> exit Executing last minute cleanups |
#/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#vim /etc/asterisk/agents.conf
--- /tmp/l3-saved-27557.25322.32739 2011-06-24 11:40:12.000000000 +0300 +++ /etc/asterisk/agents.conf 2011-06-24 11:40:22.000000000 +0300 @@ -109,5 +109,5 @@ ; ; agent => agentid,agentpassword,name ; -;agent => 1001,4321,Mark Spencer -;agent => 1002,4321,Will Meadows +agent => 1001,4321,Mark Spencer +agent => 1002,4321,Will Meadows |
#vim /etc/asterisk/extensions.conf
--- /tmp/l3-saved-27557.19183.16089 2011-06-24 11:41:23.000000000 +0300 +++ /etc/asterisk/extensions.conf 2011-06-24 11:42:18.000000000 +0300 @@ -150,6 +150,8 @@ exten => 2405,n,SetMusicOnHold(default) exten => 2405,n,Queue(queue1) +exten => 2406,1,AgentLogin(1001) +exten => 2406,1,AgentLogin(1002) ;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer |
#vim /etc/asterisk/queues.conf
--- /tmp/l3-saved-27557.21338.30766 2011-06-24 11:42:29.000000000 +0300 +++ /etc/asterisk/queues.conf 2011-06-24 11:42:58.000000000 +0300 @@ -499,5 +499,6 @@ ; available, but consider with penalty [queue1] -member => SIP/2401 -member => SIP/2402 +member => Agent/1101 +;member => SIP/2401 +;member => SIP/2402 |
#!v
[general] ; ; Global settings for call queues ; "/etc/asterisk/queues.conf" 504L, 22521C ; Persistent Members ; Store each dynamic member in each queue in the astdb so that ; when asterisk is restarted, each member will be automatically ; read into their recorded queues. Default is 'yes'. ; ... ; probably more along the lines of how a queue should work and ; in most cases, you will want to enable this behavior. If you ; do not specify or comment out this option, it will default to no ; to keep backward compatibility with the old behavior. ; autofill = yes ; ; Monitor Type ; By setting monitor-type = MixMonitor, when specifying monitor-format ; to enable recording of queue member conversations, app_queue will |
#!v
; were trying to get to. The next waiting caller in line then ; becomes the head caller, and they are then connected with the ; next available member and all available members and waiting callers ; waits while this happens. The new behavior, enabled by setting ; autofill=yes makes sure that when the waiting callers are connecting ; with available members in a parallel fashion until there are ; no more available members or no more waiting callers. This is ; probably more along the lines of how a queue should work and ; in most cases, you will want to enable this behavior. If you ; do not specify or comment out this option, it will default to no ; to keep backward compatibility with the old behavior. ; autofill = yes ; ; Monitor Type ; By setting monitor-type = MixMonitor, when specifying monitor-format ; to enable recording of queue member conversations, app_queue will |
#;member => SIP/2402
exten => 2405,1,Answer exten => 2405,n,SetMusicOnHold(default)/record12) ; incorrect password exten => 2405,n,Queue(queue1) exten => 2406,1,AgentLogin(1001) exten => 2406,1,AgentLogin(1002) ;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer ;exten => _24XX,n,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLER ID(num)}) exten => _24XX,n,Set(MON_FILENAME=record-${EXTEN}-${CALLERID(num)}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}) exten => _24XX,n,Monitor(wav,${MON_FILENAME},m) ;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)}) ;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})}) exten => _24XX,n,Dial(SIP/${EXTEN},20) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call) |
#;member => SIP/2402
exten => 2405,1,Answer exten => 2405,n,SetMusicOnHold(default)/record12) ; incorrect password exten => 2405,n,Queue(queue1) exten => 2406,1,AgentLogin(1001) exten => 2406,1,AgentLogin(1002) ;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer ;exten => _24XX,n,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLER ID(num)}) exten => _24XX,n,Set(MON_FILENAME=record-${EXTEN}-${CALLERID(num)}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}) exten => _24XX,n,Monitor(wav,${MON_FILENAME},m) ;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)}) ;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})}) exten => _24XX,n,Dial(SIP/${EXTEN},20) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call) |
#exten => _24XX,n,Hangup()
; in that the queue will make all waiting callers wait in the queue ; even if there is more than one available member ready to take ; calls until the head caller is connected with the member they ; were trying to get to. The next waiting caller in line then ; becomes the head caller, and they are then connected with the ; next available member and all available members and waiting callers ; waits while this happens. The new behavior, enabled by setting ; autofill=yes makes sure that when the waiting callers are connecting ; with available members in a parallel fashion until there are ; no more available members or no more waiting callers. This is ... member => Agent/11012 ;member => SIP/240100@default,0,John Smith,SIP/1000 ; ; Note that using agent groups is probably not what you want. Strategies do ; not propagate down to the Agent system so if you want round robin, least ; recent, etc, you should list all the agents in this file individually and not ; use agent groups. ; ;member => Agent/@1 ; Any agent in group 1 ;member => Agent/:1,1 ; Any agent in group 1, wait for first |
#exten => _24XX,n,Hangup()
[general] ; ; Global settings for call queues ; ; Persistent Members ; Store each dynamic member in each queue in the astdb so that ; when asterisk is restarted, each member will be automatically ; read into their recorded queues. Default is 'yes'. ; persistentmembers = yes ... member => Agent/11012 ;member => SIP/240100@default,0,John Smith,SIP/1000 ; ; Note that using agent groups is probably not what you want. Strategies do ; not propagate down to the Agent system so if you want round robin, least ; recent, etc, you should list all the agents in this file individually and not ; use agent groups. ; ;member => Agent/@1 ; Any agent in group 1 ;member => Agent/:1,1 ; Any agent in group 1, wait for first |
#;member => SIP/2402
;recordformat=gsm ; ; The text to be added to the name of the recording. Allows forming a url link. ;urlprefix=http://localhost/calls/ ; ; The optional directory to save the conversations in. The default is ; /var/spool/asterisk/monitor ;savecallsin=/var/calls ; ; An optional custom beep sound file to play to always-connected agents. ;custom_beep=beep ; ; -------------------------------------------------- ; ; This section contains the agent definitions, in the form: ; ; agent => agentid,agentpassword,name ; agent => 1001,4321,Mark Spencer |
#;member => SIP/2402
; ;group=3 ;group=1,2 ;group= ; ; -------------------------------------------------- ; This section is devoted to recording agent's calls ; The keywords are global to the chan_agent channel driver ; ; Enable recording calls addressed to agents. It's turned off by default. ... ; An optional custom beep sound file to play to always-connected agents. ;custom_beep=beep ; ; -------------------------------------------------- ; ; This section contains the agent definitions, in the form: ; ; agent => agentid,agentpassword,name ; agent => 1001,4321,Mark Spencer |
#agent => 1002,4321,Will Meadows
/etc/init.d/asterisk restart Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#agent => 1002,4321,Will Meadows
/etc/init.d/asterisk restart Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#asterisk -rvvvvvvvvvvvv
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 23649) ... -- Music class requested but no musiconhold loaded. == Agent '1001' logged out == Spawn extension (gr3, 2406, 1) exited non-zero on 'SIP/2401-00000002' -- Remote UNIX connection == Spawn extension (gr3, 2405, 3) exited non-zero on 'SIP/2402-00000003' Executing last minute cleanups == Destroying musiconhold processes linux8*CLI> Disconnected from Asterisk server Executing last minute cleanups |
#asterisk -rvvvvvvvvvvvv
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 23649) ... -- Music class requested but no musiconhold loaded. == Agent '1001' logged out == Spawn extension (gr3, 2406, 1) exited non-zero on 'SIP/2401-00000002' -- Remote UNIX connection == Spawn extension (gr3, 2405, 3) exited non-zero on 'SIP/2402-00000003' Executing last minute cleanups == Destroying musiconhold processes linux8*CLI> Disconnected from Asterisk server Executing last minute cleanups |
#asterisk -rvvvvvvvvvvvv
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 23649) ... -- Music class requested but no musiconhold loaded. == Agent '1001' logged out == Spawn extension (gr3, 2406, 1) exited non-zero on 'SIP/2401-00000002' -- Remote UNIX connection == Spawn extension (gr3, 2405, 3) exited non-zero on 'SIP/2402-00000003' Executing last minute cleanups == Destroying musiconhold processes linux8*CLI> Disconnected from Asterisk server Executing last minute cleanups |
#asterisk -rvvvvvvvvvvvv
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 23649) ... -- Music class requested but no musiconhold loaded. == Agent '1001' logged out == Spawn extension (gr3, 2406, 1) exited non-zero on 'SIP/2401-00000002' -- Remote UNIX connection == Spawn extension (gr3, 2405, 3) exited non-zero on 'SIP/2402-00000003' Executing last minute cleanups == Destroying musiconhold processes linux8*CLI> Disconnected from Asterisk server Executing last minute cleanups |
#exten => _24XX,n,Hangup()
;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer ;exten => _24XX,n,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLER ID(num)}) exten => _24XX,n,Set(MON_FILENAME=record-${EXTEN}-${CALLERID(num)}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}) (1001) ;agenti dlya ocheredei exten => _24XX,n,Monitor(wav,${MON_FILENAME},m) ;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)}) ;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})}) exten => _24XX,n,Dial(SIP/${EXTEN},20) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call) exten => _24XX,n,Hangup() D(num)}) ;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL exten => _24XX,n,Wait(1) ;LERID(num)}) exten => _24XX,n,Dial(SIP/kiev/${DB(mobile/${EXTEN})},10,m) exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default) "/etc/asterisk/extensions.conf" 219L, 7243C written |
#exten => _24XX,n,Hangup()
;-----------------------------------LOCAL DIALPLAN exten => _24XX,1,Answer ;exten => _24XX,n,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLER ID(num)}) exten => _24XX,n,Set(MON_FILENAME=record-${EXTEN}-${CALLERID(num)}-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}) (1001) ;agenti dlya ocheredei exten => _24XX,n,Monitor(wav,${MON_FILENAME},m) ;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)}) ;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})}) exten => _24XX,n,Dial(SIP/${EXTEN},20) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call) exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call) exten => _24XX,n,Hangup() D(num)}) ;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL exten => _24XX,n,Wait(1) ;LERID(num)}) exten => _24XX,n,Dial(SIP/kiev/${DB(mobile/${EXTEN})},10,m) exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default) "/etc/asterisk/extensions.conf" 219L, 7243C written |
#vim /etc/asterisk/queues.conf
--- /tmp/l3-saved-27557.11568.21188 2011-06-24 11:49:46.000000000 +0300 +++ /etc/asterisk/queues.conf 2011-06-24 11:50:03.000000000 +0300 @@ -499,6 +499,6 @@ ; available, but consider with penalty [queue1] -member => Agent/1101 +member => Agent/2406 ;member => SIP/2401 ;member => SIP/2402 |
#!/
/etc/init.d/asterisk restart Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#!/
/etc/init.d/asterisk restart Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#asterisk -rvvvvvvvvvvvv
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 23847) ... -- Executing [2405@gr3:2] SetMusicOnHold("SIP/2402-00000008", "default") in new stack -- Executing [2405@gr3:3] Queue("SIP/2402-00000008", "queue1") in new stack -- Music class requested but no musiconhold loaded. -- Remote UNIX connection == Spawn extension (gr3, 2405, 3) exited non-zero on 'SIP/2402-00000008' Executing last minute cleanups == Destroying musiconhold processes linux8*CLI> Disconnected from Asterisk server Executing last minute cleanups |
#asterisk -rvvvvvvvvvvvv
Asterisk 1.6.2.9-2+squeeze2, Copyright (C) 1999 - 2010 Digium, Inc. and others. Created by Mark Spencer <markster@digium.com> Asterisk comes with ABSOLUTELY NO WARRANTY; type 'core show warranty' for details. This is free software, with components licensed under the GNU General Public License version 2 and other licenses; you are welcome to redistribute it under certain conditions. Type 'core show license' for details. ========================================================================= == Parsing '/etc/asterisk/asterisk.conf': == Found == Parsing '/etc/asterisk/extconfig.conf': == Found Connected to Asterisk 1.6.2.9-2+squeeze2 currently running on linux8 (pid = 23847) ... -- Executing [2405@gr3:2] SetMusicOnHold("SIP/2402-00000008", "default") in new stack -- Executing [2405@gr3:3] Queue("SIP/2402-00000008", "queue1") in new stack -- Music class requested but no musiconhold loaded. -- Remote UNIX connection == Spawn extension (gr3, 2405, 3) exited non-zero on 'SIP/2402-00000008' Executing last minute cleanups == Destroying musiconhold processes linux8*CLI> Disconnected from Asterisk server Executing last minute cleanups |
Время первой команды журнала | 09:28:44 2011- 6-24 | |||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 10:50:05 2011- 6-24 | |||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 101 | |||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 0.00 | |||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | |||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 0.79 | |||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 2.14 | |||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.
Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
$ l s-l bash: l: command not found |
Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
$ test 5 -lt 4 |
Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
$ find / -name abc find: /home/devi-orig/.gnome2: Keine Berechtigung find: /home/devi-orig/.gnome2_private: Keine Berechtigung find: /home/devi-orig/.nautilus/metafiles: Keine Berechtigung find: /home/devi-orig/.metacity: Keine Berechtigung find: /home/devi-orig/.inkscape: Keine Berechtigung ^C |
Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
# id uid=0(root) gid=0(root) Gruppen=0(root) |
Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
$ vi ~/.bashrc
|
Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
$ patch ~/.bashrc |
Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.
Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.
Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.
Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора
Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.
Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.
Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:
$ whoami
user
$ #^ Интересно, кто я?в журнале это будет выглядеть так:
$ whoami
user
Интересно, кто я? |
Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:
$ whoami
user
$ cat > /dev/null #^ Интересно, кто я?
Программа whoami выводит имя пользователя, под которым мы зарегистрировались в системе. - Она не может ответить на вопрос о нашем назначении в этом мире.В журнале это будет выглядеть так:
$ whoami user
|
Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=
1 2 3 4Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.
LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008