/l3/users/2014-11-nt-voip/nt-voip/root :1 :2 :3 :4 :5 :6 :7 :8 :9 :10 :11 :12 :13 :14 :15 :16 |
|
#~
; 8015 => комната 115 ; так 10 разных комнат ; 10 это для примера exten => _801X,1,MeetMe(10${EXTEN:3}) exten => 8400,1,System(touch /tmp/someone-called-8400) ; и всё сразу же видно /var/tmp/belki.txt ; тут хорошо видно что это одна строка, хотя мы думали что две exten => _3391,1,NoOp(Conferences for external users) exten => _3391,n,MeetMe(10${EXTEN:3}) exten => _3391,n,Hangup exten => 3392,1,Dial(SIP/3301&SIP/3302) ; звонки на локальные номера exten => _33XX,1,NoOp(Local Phones) ) ; Monitor выполняет запись звонка ; сначала создаём имя файла: ; её нужно вызывать до Dial ; кому звонили, кто звонил и время -- INSERT --XX,n,Dial(SIP/${EXTEN},5,tT) 40,1 37% |
##7, юрий: неправильно, используйте .txt, не .wav; .wav генерится налету
|
##тут смысл как раз в том, чтобы файл динамически генерился
|
#â#инаÑеРможно ÑÐ°Ð¼Ð¾Ð¼Ñ Ð½Ð°Ð´Ð¸ÐºÑоваÑÑ
|
#all grep AGI /etc/asterisk/extensions.conf
1: exten => 8403,1,AGI(/usr/local/bin/asterisk-festival.pl /var/tmp/belki.txt) 1: exten => 8404,1,AGI(/usr/local/bin/asterisk-festival.pl /var/tmp/burunduki.txt) 2: exten => 8403,1,AGI(/usr/local/bin/asterisk-festival.pl /var/tmp/belki.txt) 2: exten => 8404,1,AGI(/usr/local/bin/asterisk-festival.pl /var/tmp/burunduki.txt) 4: exten => 8403,1,AGI(/usr/local/bin/asterisk-festival.pl, /var/tmp/belki.txt) 4: exten => 8404,1,AGI(/usr/local/bin/asterisk-festival.pl, /var/tmp/burunduki.txt) 5: exten => 8403,1,AGI(/usr/local/bin/asterisk-festival.pl,/var/tmp/belki.txt) 5: exten => 8404,1,AGI(/usr/local/bin/asterisk-festival.pl,/var/tmp/burunduki.txt) 6: exten => 8403,1,AGI(/usr/local/bin/asterisk-festival.pl,/var/tmp/belki.txt) 6: exten => 8404,1,AGI(/usr/local/bin/asterisk-festival.pl,/var/tmp/burunduki.txt) 7: exten => 8403,1,AGI(/usr/local/bin/asterisk-festival.pl /var/tmp/belki.txt) 7: exten => 8404,1,AGI(/usr/local/bin/asterisk-festival.pl /var/tmp/burunduki.txt) 8: exten => 8303,1,AGI(/usr/local/bin/asterisk-festival.pl,/var/tmp/belki.txt) 8: exten => 8304,1,AGI(/usr/local/bin/asterisk-festival.pl,/var/tmp/burunduki.txt) |
##all ls -ld /var/
|
## машины 3 и 8 забыли это:
|
## chown asterisk:asterisk /var/lib/asterisk/sounds/tts
|
## 2 3 о пока не сделали остальные сделали
|
#_ +1 +4 + 5 +6 +7 +8
+1 +4 + 5 +6 +7 +8 |
#all ls -l /var/lib/asterisk/sounds/tts/ | ff
2: total 9888 2: -rw-rw---- 1 asterisk asterisk 7077 Nov 27 10:36 say-text-720081e59689e875d48d74392fff12cd.txt 2: -rw-rw---- 1 asterisk asterisk 8155 Nov 27 10:36 say-text-7726ca6e8145e83a1ac38cadb9e05613.txt 2: -rw-rw---- 1 asterisk asterisk 4720692 Nov 27 10:36 tts-720081e59689e875d48d74392fff12cd.wav 2: -rw-rw---- 1 asterisk asterisk 5383632 Nov 27 10:36 tts-7726ca6e8145e83a1ac38cadb9e05613.wav 3: total 0 5: total 9892 5: -rw-r--r-- 1 root root 19642 Nov 27 10:20 tts-4469b2a097c9ae5657bd02b5d206b1c9.wav 5: -rw-rw---- 1 asterisk asterisk 4720692 Nov 27 10:30 tts-720081e59689e875d48d74392fff12cd.wav 5: -rw-rw---- 1 asterisk asterisk 5383632 Nov 27 10:31 tts-7726ca6e8145e83a1ac38cadb9e05613.wav |
#all ls -l /var/lib/asterisk/sounds/tts/ | ff
3: total 0 |
#all ls -l /var/lib/asterisk/sounds/tts/ | ff
3: total 4612 3: -rw-rw---- 1 asterisk asterisk 4720692 Nov 27 10:39 tts-720081e59689e875d48d74392fff12cd.wav |
#alsamixer
|
#ssh m1
l3-agent is already running: pid=3671; pidfile=/root/.lilalo/l3-agent.pid |
# │
exit Connection to m1 closed. |
#alsamixer
cannot open mixer: No such file or directory |
#alsamixer
cannot open mixer: No such file or directory |
#ssh m2
Linux debian2 3.2.0-4-amd64 #1 SMP Debian 3.2.63-2+deb7u1 x86_64 The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright. Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. Last login: Thu Nov 27 11:18:56 2014 from 192.168.12.254 l3-agent is already running: pid=4188; pidfile=/root/.lilalo/l3-agent.pid |
#less /var/log/messages
|
## azx_acquire
|
#lspci | grep Audio
00:01.1 Audio device: Advanced Micro Devices [AMD] nee ATI Trinity HDMI Audio Controller 00:14.2 Audio device: Advanced Micro Devices [AMD] FCH Azalia Controller (rev 01) |
#uptime
11:28:09 up 2 days, 2:11, 8 users, load average: 2.14, 2.58, 2.59 |
#exit
exit Connection to m2 closed. |
#grep Record /etc/asterisk/extensions.conf
exten => _81XX,1,Record(/var/tmp/asterisk/record00:gsm,3) |
#_ ГСоздание голосового меню
|
#all 'ls -l /var/tmp/record*'
1: ls: cannot access /var/tmp/record*: No such file or directory 2: ls: cannot access /var/tmp/record*: No such file or directory 3: ls: cannot access /var/tmp/record*: No such file or directory 4: ls: cannot access /var/tmp/record*: No such file or directory 5: ls: cannot access /var/tmp/record*: No such file or directory 6: ls: cannot access /var/tmp/record*: No such file or directory 7: ls: cannot access /var/tmp/record*: No such file or directory 8: ls: cannot access /var/tmp/record*: No such file or directory |
#all 'ls -l /var/tmp/asterisk/record*'
1: -rw-rw---- 1 asterisk asterisk 6072 Nov 27 11:40 /var/tmp/asterisk/record00.gsm 1: -rw-rw---- 1 asterisk asterisk 1485 Nov 25 12:24 /var/tmp/asterisk/record02.gsm 2: -rw-rw---- 1 asterisk asterisk 5907 Nov 25 12:25 /var/tmp/asterisk/record01.gsm 3: -rw-rw---- 1 asterisk asterisk 4620 Nov 25 12:31 /var/tmp/asterisk/record00.gsm 3: -rw-rw---- 1 asterisk asterisk 759 Nov 27 11:40 /var/tmp/asterisk/record01.gsm 3: -rw-rw---- 1 asterisk asterisk 13662 Nov 26 12:16 /var/tmp/asterisk/record02.gsm 4: -rw-rw---- 1 asterisk asterisk 1221 Nov 26 12:20 /var/tmp/asterisk/record00.gsm 5: -rw-rw---- 1 asterisk asterisk 5049 Nov 25 12:19 /var/tmp/asterisk/record00.gsm 5: -rw-rw---- 1 asterisk asterisk 8019 Nov 27 11:40 /var/tmp/asterisk/record01.gsm 5: -rw-rw---- 1 asterisk asterisk 1650 Nov 26 14:36 /var/tmp/asterisk/record10.gsm 6: -rw-rw---- 1 asterisk asterisk 7854 Nov 27 11:39 /var/tmp/asterisk/record01.gsm 7: -rw-rw---- 1 asterisk asterisk 1914 Nov 26 12:22 /var/tmp/asterisk/record00.gsm 8: ls: cannot access /var/tmp/asterisk/record*: No such file or directory |
#all 'ls -l /var/tmp/asterisk/record*'
1: -rw-rw---- 1 asterisk asterisk 0 Nov 27 11:41 /var/tmp/asterisk/record00.gsm 1: -rw-rw---- 1 asterisk asterisk 1485 Nov 25 12:24 /var/tmp/asterisk/record02.gsm 2: -rw-rw---- 1 asterisk asterisk 0 Nov 27 11:40 /var/tmp/asterisk/record01.gsm 3: -rw-rw---- 1 asterisk asterisk 4620 Nov 25 12:31 /var/tmp/asterisk/record00.gsm 3: -rw-rw---- 1 asterisk asterisk 1617 Nov 27 11:40 /var/tmp/asterisk/record01.gsm 3: -rw-rw---- 1 asterisk asterisk 13662 Nov 26 12:16 /var/tmp/asterisk/record02.gsm 4: -rw-rw---- 1 asterisk asterisk 1221 Nov 26 12:20 /var/tmp/asterisk/record00.gsm 5: -rw-rw---- 1 asterisk asterisk 5049 Nov 25 12:19 /var/tmp/asterisk/record00.gsm 5: -rw-rw---- 1 asterisk asterisk 8019 Nov 27 11:40 /var/tmp/asterisk/record01.gsm 5: -rw-rw---- 1 asterisk asterisk 1650 Nov 26 14:36 /var/tmp/asterisk/record10.gsm 6: -rw-rw---- 1 asterisk asterisk 7854 Nov 27 11:39 /var/tmp/asterisk/record01.gsm 7: -rw-rw---- 1 asterisk asterisk 1914 Nov 26 12:22 /var/tmp/asterisk/record00.gsm 8: ls: cannot access /var/tmp/asterisk/record*: No such file or directory |
## теперь делаем меню
|
#all 'grep "Goto(menu" /etc/asterisk/extensions.conf'
1: exten => 0,1,Goto(menu,1,start) 1: exten => 8405,1,Goto(menu,s,1) 2: exten => 8405,1,Goto(menu,s,1) 3: exten => 8405,1,Goto(menu,s,1) 4: exten => 0,1,Goto(menu,1,start) 4: exten => 8405,1,Goto(menu,s,1) 6: exten => 8405,1,Goto(menu,s,1) 7: exten => 8405,1,Goto(menu,s,1) 8: exten => 0,1,Goto(menu,1,start) 8: exten => 8405,1,Goto(menu,s,1) |
#_ +8
+8 |
#_ +2
+2 |
#_ +4
+4 |
#_ last
Создание голосового меню 1:-- 2:OK 3:-- 4:OK 5:-- 6:-- 7:-- 8:OK |
#_ +1
+1 |
#_ last
Создание голосового меню 1:OK 2:OK 3:-- 4:OK 5:-- 6:-- 7:-- 8:OK |
#_ +7
+7 |
#_ last
Создание голосового меню 1:OK 2:OK 3:-- 4:OK 5:-- 6:-- 7:OK 8:OK |
#_ +3
+3 |
#-- INSERT --
|
## NoSQL-база данных ключ/значение
|
#asterisk -rvvvv
Asterisk 1.8.13.1~dfsg1-3+deb7u3, Copyright (C) 1999 - 2012 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.8.13.1~dfsg1-3+deb7u3 currently running on debian0 (pid = 15667) ... debian0*CLI> database get example a Value: 10 debian0*CLI> data data database debian0*CLI> database del del deltree debian0*CLI> database del example a Database entry removed. debian0*CLI> quit Executing last minute cleanups |
#ls /var/run/asterisk/
alt.asterisk.canary.tweet.tweet.tweet asterisk.ctl asterisk.pid |
#ls /var/spool/asterisk/
dictate meetme monitor outgoing system tmp voicemail |
#find /var -name asterisk
/var/cache/approx/debian/pool/main/a/asterisk /var/tmp/asterisk /var/log/asterisk /var/spool/asterisk /var/lib/asterisk |
#ls /var/lib/asterisk/
astdb moh sounds sqlite.db |
#ls /var/lib/asterisk/astdb
/var/lib/asterisk/astdb |
#file /var/lib/asterisk/astdb
/var/lib/asterisk/astdb: Berkeley DB 1.85/1.86 (Btree, version 3, native byte-order) |
#asterisk -rx "database put order 1 9"
Updated database successfully |
#asterisk -rx "database put order 2 10"
Updated database successfully |
## заказ 1 в ÑоÑÑоÑниÑи 9
|
## заказ 2 в ÐÑоÑÑоÑнии 10
|
## заполним базу случайными числами
|
## заказы от 3 до 20
|
## 18 заказов в ÑлÐÑÑайном ÑоÑÑоÑнии 9 или 10
|
#asterisk -rx 'get database get order 5'
No such command 'get database get order 5' (type 'core show help get database' for other possible commands) |
#asterisk -rx 'database get order 5'
Value: 9 |
#asterisk -rx 'database get order 6'
Value: 9 |
#asterisk -rx 'database get order 7'
Value: 10 |
#vim /etc/asterisk/extensions.conf
--- /tmp/l3-saved-3108.9524.12690 2014-11-27 06:54:31.680247571 -0500 +++ /etc/asterisk/extensions.conf 2014-11-27 07:01:30.188260218 -0500 @@ -58,7 +58,12 @@ ; в этом месте всегда будет готовроить "заказ не существует" ; позже нужно будеть подключить базу данных ; из которой будут браться состояния заказов -exten => 3,n,Playback(/var/tmp/asterisk/record10) + +; обращение к БД из плана набора: +; ${DB(db_name/key)} +; dn_name = order в нашем случае +; key = в нашем случае введённый номер заказа +exten => 3,n,Playback(/var/tmp/asterisk/record${DB(order/${ORDER})}) ; если нажали 4, идём на операторов ; пока что тоже не работает, потому что очередь звонков queue1 |
#_ +4
+4 |
#_ last
Использование внутренней базы данных Asterisk 1:-- 2:-- 3:-- 4:OK 5:-- 6:-- 7:-- 8:-- |
#vim /etc/asterisk/extensions.conf
--- /tmp/l3-saved-3108.2689.24961 2014-11-27 07:06:57.800270117 -0500 +++ /etc/asterisk/extensions.conf 2014-11-27 07:16:05.600286671 -0500 @@ -63,9 +63,14 @@ ; ${DB(db_name/key)} ; dn_name = order в нашем случае ; key = в нашем случае введённый номер заказа -exten => 3,n,Playback(/var/tmp/asterisk/record${DB(order/${ORDER})}) +; довольно хитрая конструкция: +; $[ a = b ]? label +exten => 3,n,GotoIf($["${DB(order/${ORDER})}" = ""]?unknown_order) +exten => 3,n,Playback(/var/tmp/asterisk/record0${DB(order/${ORDER})}) +exten => 3,n,Hangup +exten => 3,n(unknown_order),Playback(/var/tmp/asterisk/record10) -; если нажали 4, идём на операторов + если нажали 4, идём на операторов ; пока что тоже не работает, потому что очередь звонков queue1 ; не настроена, будет работать в следующем пункте exten => 4,1,Queue(queue1) @@ -207,3 +212,4 @@ include => local include => national include => international +toIf($[${DB(order/${ORDER})} = ""]?unknown_order) |
#_ las
|
#_ last
las 1:-- 2:-- 3:-- 4:-- 5:-- 6:-- 7:-- 8:-- |
#vim /opt/course-scripts/log/course-console.log
--- /tmp/l3-saved-3108.3689.16062 2014-11-27 07:18:01.728290179 -0500 +++ /opt/course-scripts/log/course-console.log 2014-11-27 07:18:06.116290312 -0500 @@ -152,4 +152,3 @@ Thu Nov 27 06:42:50 EST 2014 task Использование внутренней базы данных Asterisk Thu Nov 27 07:01:34 EST 2014 +4 Thu Nov 27 07:17:39 EST 2014 +8 -Thu Nov 27 07:17:51 EST 2014 task las |
#_ last
Использование внутренней базы данных Asterisk 1:-- 2:-- 3:-- 4:OK 5:-- 6:-- 7:OK 8:OK |
#_ +2
+2 |
#_ last
Использование внутренней базы данных Asterisk 1:-- 2:OK 3:-- 4:OK 5:-- 6:OK 7:OK 8:OK |
#_ +5
+5 |
#_ +1
+1 |
#_ last
Использование внутренней базы данных Asterisk 1:OK 2:OK 3:-- 4:OK 5:OK 6:OK 7:OK 8:OK |
#_ ÐÑеÑÐµÐ´Ñ Ð·Ð²Ð¾Ð½ÐºÐов
|
#ls -l /etc/asterisk/queue
ls: cannot access /etc/asterisk/queue: No such file or directory |
#ls -l /etc/asterisk/queues.conf
-rw-r----- 1 asterisk asterisk 23843 Jan 3 2014 /etc/asterisk/queues.conf |
#grep Queue /etc/asterisk/extensions.conf
exten => 4,1,Queue(queue1) |
#vim /etc/asterisk/extensions.conf
--- /tmp/l3-saved-3108.26502.19805 2014-11-27 07:47:52.592344295 -0500 +++ /etc/asterisk/extensions.conf 2014-11-27 07:48:28.236345375 -0500 @@ -73,7 +73,11 @@ если нажали 4, идём на операторов ; пока что тоже не работает, потому что очередь звонков queue1 ; не настроена, будет работать в следующем пункте -exten => 4,1,Queue(queue1) + +; есть такой хитрый нюанс: +; перед вызовом Queue обязательно делать Answer +exten => 4,1,Answer +exten => 4,n,Queue(queue1) ; переход на подменю будет по 5 |
#vim /etc/asterisk/extensions.conf
|
#exten => s,1,Answer
; listening to more than one queue can differentiated how they should ; engage the customer ; ;announce = queue-markq ; ; A strategy may be specified. Valid strategies include: ; ; ringall - ring all available channels until one answers (default) ; leastrecent - ring interface which was least recently hung up by this queue ; fewestcalls - ring the one with fewest completed calls from this queue ... ;member => Agent/1002 ;member => Local/1000@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 |
#asterisk -rvvv
Asterisk 1.8.13.1~dfsg1-3+deb7u3, Copyright (C) 1999 - 2012 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.8.13.1~dfsg1-3+deb7u3 currently running on debian0 (pid = 15667) ... No such command 'queue reload' (type 'core show help queue reload' for other possible commands) debian0*CLI> queue reload members parameters rules all debian0*CLI> queue reload members parameters rules all debian0*CLI> queue reload all [Nov 27 07:54:14] NOTICE[27660]: app_queue.c:6476 reload_queue_rules: queuerules.conf has not changed since it was last loaded. Not taking any action. == Parsing '/etc/asterisk/queues.conf': == Found debian0*CLI> quit Executing last minute cleanups |
#grep -B1 Queue /etc/asterisk/extensions.conf
; есть такой хитрый нюанс: ; перед вызовом Queue обязательно делать Answer exten => 4,1,Answer exten => 4,n,Queue(queue1) |
## 7: = > неправильно, должно быть =>
|
#vim /etc/asterisk/queues.conf
--- /tmp/l3-saved-3108.14983.13883 2014-11-27 07:59:29.272365350 -0500 +++ /etc/asterisk/queues.conf 2014-11-27 08:00:26.408367073 -0500 @@ -542,5 +542,8 @@ ; для примера я прописал только один телефон, для начала ; имя канала -member => SIP/3301 +; member => SIP/3301 +; добавим не SIP, а агента: +; допустим у нас есть только агент 007, а других нет +member => Agent/007 |
## пÑопиÑем аÐгенÑа 007 в Ñайле /etc/asterisk/agents.conf
|
#vim /etc/asterisk/agents.conf
--- /tmp/l3-saved-3108.10770.15799 2014-11-27 08:02:32.116370872 -0500 +++ /etc/asterisk/agents.conf 2014-11-27 08:05:08.280375594 -0500 @@ -103,3 +103,6 @@ ; ;agent => 1001,4321,Mark Spencer ;agent => 1002,4321,Will Meadows + +; номер агента, пароль, имя +agent => 007,1234,James Bond |
## сделаем чтобы на ангента можно было залогиниться
|
#vim /etc/asterisk/extensions.conf
--- /tmp/l3-saved-3108.28486.663 2014-11-27 08:05:29.912376245 -0500 +++ /etc/asterisk/extensions.conf 2014-11-27 08:09:58.340384356 -0500 @@ -141,6 +141,7 @@ ; при 8405 переход на меню exten => 8405,1,Goto(menu,s,1) +exten => 8407,1,AgentLogin(007) [local] |
#asterisk -vvv
Asterisk 1.8.13.1~dfsg1-3+deb7u3, Copyright (C) 1999 - 2012 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 Privilege escalation protection disabled! See https://wiki.asterisk.org/wiki/x/1gKfAQ for more details. == Parsing '/etc/asterisk/extconfig.conf': == Found Asterisk already running on /var/run/asterisk/asterisk.ctl. Use 'asterisk -r' to connect. |
#asterisk -rvvv
Asterisk 1.8.13.1~dfsg1-3+deb7u3, Copyright (C) 1999 - 2012 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.8.13.1~dfsg1-3+deb7u3 currently running on debian0 (pid = 15667) Verbosity is at least 4 debian0*CLI> debian0*CLI> agent logoff show debian0*CLI> agent logoff show debian0*CLI> agent show No Agents are configured in agents.conf debian0*CLI> quit Executing last minute cleanups |
#/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk. Starting Asterisk PBX: asterisk. |
#all 'asterisk -rx "agent show"'
1: No Agents are configured in agents.conf 1: 2: No Agents are configured in agents.conf 2: 3: No Agents are configured in agents.conf 3: 4: 007 (James Bond) not logged in (musiconhold is 'default') 4: 1 agents configured [0 online , 1 offline] 4: 5: 007 (James Bond) logged in on SIP/2201-00000000 is idle (musiconhold is 'default') 5: 1 agents configured [1 online , 0 offline] 5: 6: 007 (James Bond) not logged in (musiconhold is 'default') 6: 1 agents configured [0 online , 1 offline] 6: 7: 007 (James Bond) not logged in (musiconhold is 'default') 7: 1 agents configured [0 online , 1 offline] 7: 8: 007 (James Bond) logged in on SIP/3201-00000000 talking to SIP/3202-00000001 (musiconhold is 'default') 8: 1 agents configured [1 online , 0 offline] 8: |
#less /etc/asterisk/agents.conf
|
#vim /etc/asterisk/agents.conf
--- /tmp/l3-saved-3108.10934.22785 2014-11-27 08:15:58.564395243 -0500 +++ /etc/asterisk/agents.conf 2014-11-27 08:20:24.184403270 -0500 @@ -37,6 +37,9 @@ ; ;ackcall=no ;acceptdtmf=# + +ackcall=no + ; ; Define endcall to allow an agent to hangup a call with a ; DTMF keypress. Default is "yes". Use the enddtmf option to |
#_ +8
+8 |
#_ +7
+7 |
#_ last
Очередь звонков 1:-- 2:-- 3:-- 4:-- 5:-- 6:-- 7:OK 8:OK |
#_ +4
+4 |
#_ +5
+5 |
#_ +1
+1 |
Время первой команды журнала | 09:21:51 2014-11-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 14:24:31 2014-11-27 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 101 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 3.96 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.00 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 2.97 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 0.57 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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