/l3/users/sasha-minsk/sl-voip-2016-03/asterisk3.unix.sl/root :1 :2 :3 :4 |
|
#vim /etc/asterisk/agents.conf
--- /tmp/l3-saved-6090.25595.11136 2016-03-31 15:04:58.424192542 +0300 +++ /etc/asterisk/agents.conf 2016-03-31 15:06:50.032192052 +0300 @@ -40,7 +40,7 @@ ; configure which DTMF key will end a call. The default is ; '*'. ; -;endcall=yes +;endcall=no ;enddtmf=* ; ; Define wrapuptime. This is the minimum amount of time when |
#vim /etc/asterisk/queues.conf
|
#vim /tmp/call.call
--- /dev/null 2016-03-31 09:58:48.096381183 +0300 +++ /tmp/call.call 2016-03-31 15:47:54.740181243 +0300 @@ -0,0 +1,3 @@ +Channel:SIP/1301 +Extension:4211 +Context: |
#less /etc/asterisk/extensions.conf
|
#cat /tmp/call.call
Channel:SIP/1301 Extension:4211 Context:local |
#chown asterisk:asterisk /tmp/call.call
|
#cp -p /var/spool/asterisk/outgoing/
cp: missing destination file operand after ‘/var/spool/asterisk/outgoing/’ Try 'cp --help' for more information. |
#bash mass-call.sh
|
#vim mass-call.sh
--- /tmp/l3-saved-6371.14173.30573 2016-03-31 15:55:00.940179373 +0300 +++ mass-call.sh 2016-03-31 15:55:20.664179287 +0300 @@ -1,4 +1,5 @@ -for i in 130{1,2} warsaw/220{1,2} warsaw/1{1,2}0{1,2} kiev/2{3,4}0{1,2} vitebsk/140{1,2} +#for i in 130{1,2} warsaw/220{1,2} warsaw/1{1,2}0{1,2} kiev/2{3,4}0{1,2} vitebsk/140{1,2} +for i in kiev/240{1,2} do FILE=/tmp/${RANDOM}.call |
#bash mass-call.sh
|
#ls -l /var/spool/asterisk/outgoing/
total 0 |
#cat mass-call.sh
#for i in 130{1,2} warsaw/220{1,2} warsaw/1{1,2}0{1,2} kiev/2{3,4}0{1,2} vitebsk/140{1,2} for i in kiev/240{1,2} do FILE=/tmp/${RANDOM}.call cat <<EOF > $FILE Channel:SIP/$i Extension:4211 Context:local EOF chown asterisk:asterisk $FILE mv $FILE /var/spool/asterisk/outgoing/ done |
#cp /usr/local/bin/
cp: missing destination file operand after ‘/usr/local/bin/’ Try 'cp --help' for more information. |
#cp mass-call.sh/usr/local/bin/
cp: missing destination file operand after ‘mass-call.sh/usr/local/bin/’ Try 'cp --help' for more information. |
#cp mass-call.sh /usr/local/bin/
|
#ls
mass-call.sh |
#vim mass-call.sh
--- /tmp/l3-saved-7167.23610.8024 2016-03-31 16:35:37.276168688 +0300 +++ mass-call.sh 2016-03-31 16:35:54.432168613 +0300 @@ -1,12 +1,12 @@ -#for i in 130{1,2} warsaw/220{1,2} warsaw/1{1,2}0{1,2} kiev/2{3,4}0{1,2} vitebsk/140{1,2} -for i in kiev/240{1,2} +for i in 130{1,2} warsaw/220{1,2} warsaw/1{1,2}0{1,2} kiev/2{3,4}0{1,2} vitebsk/140{1,2} +#for i in kiev/240{1,2} do FILE=/tmp/${RANDOM}.call cat <<EOF > $FILE Channel:SIP/$i -Extension:4211 +Extension:1399 Context:local EOF |
#ls -l /usr/local/bin/mass-call.sh
-rw-r--r-- 1 root staff 285 Mar 31 16:34 /usr/local/bin/mass-call.sh |
#vim /etc/sudoers
--- /tmp/l3-saved-7167.25065.13526 2016-03-31 16:37:51.676168099 +0300 +++ /etc/sudoers 2016-03-31 16:38:04.076168044 +0300 @@ -26,5 +26,5 @@ #includedir /etc/sudoers.d user ALL=(ALL:ALL) ALL -asterisk ALL=(ALL) NOPASSWD:/usr/bin/touch, /usr/bin/eject +asterisk ALL=(ALL) NOPASSWD:/usr/bin/touch, /usr/bin/eject, |
#vim /etc/sudoers
--- /tmp/l3-saved-7167.21515.18162 2016-03-31 16:38:09.856168019 +0300 +++ /etc/sudoers 2016-03-31 16:38:27.728167941 +0300 @@ -26,5 +26,5 @@ #includedir /etc/sudoers.d user ALL=(ALL:ALL) ALL -asterisk ALL=(ALL) NOPASSWD:/usr/bin/touch, /usr/bin/eject, +asterisk ALL=(ALL) NOPASSWD:/usr/bin/touch, /usr/bin/eject, /usr/local/bin/mass-call.sh |
#vim /usr/local/bin/mass-call.sh
--- /tmp/l3-saved-7167.16425.20521 2016-03-31 16:38:38.304167894 +0300 +++ /usr/local/bin/mass-call.sh 2016-03-31 16:41:52.888167041 +0300 @@ -1,5 +1,16 @@ -for i in 130{1,2} warsaw/220{1,2} warsaw/1{1,2}0{1,2} kiev/2{3,4}0{1,2} vitebsk/140{1,2} -#for i in kiev/240{1,2} +#!/bin/sh + +grp1="1301 1302 warsaw/2201 warsaw/2202 warsaw/1101 warsaw/1102 warsaw/1201 warsaw/1202 kiev/2301 kiev/2302 kiev/2401 kiev/2402 vitebsk/1401 vitebsk/1402" +grp2="1301 1302" +grp3="1301" + +case "$1" in + 1) grp="$grp1" ;; + 2) grp="$grp2" ;; + *) grp="$grp3" ;; +esac + +for i in $grp do FILE=/tmp/${RANDOM}.call |
#grep mass-call.sh /etc/sudoers
asterisk ALL=(ALL) NOPASSWD:/usr/bin/touch, /usr/bin/eject, /usr/local/bin/mass-call.sh |
#/usr/local/bin/mass-call.sh 2
bash: /usr/local/bin/mass-call.sh: Permission denied |
#vim /etc/asterisk/extensions.conf
|
#asterisk -rvvvv
Asterisk 11.13.1~dfsg-2+b1, Copyright (C) 1999 - 2013 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. ========================================================================= Connected to Asterisk 11.13.1~dfsg-2+b1 currently running on asterisk3 (pid = 748) asterisk3*CLI> dialplan reload Dialplan reloaded. ... -- Executing [s@menu:7] WaitExten("SIP/warsaw-000000b6", "2") in new stack -- Executing [s@menu:7] WaitExten("SIP/warsaw-000000b7", "2") in new stack -- Executing [s@menu:7] WaitExten("SIP/kiev-000000bb", "2") in new stack -- Executing [s@menu:7] WaitExten("SIP/kiev-000000ba", "2") in new stack -- Timeout on SIP/warsaw-000000b2, continuing... -- Executing [s@menu:8] BackGround("SIP/warsaw-000000b2", "/var/tmp/asterisk/message09") in new stack -- <SIP/warsaw-000000b2> Playing '/var/tmp/asterisk/message09.gsm' (language 'en') asterisk3*CLI> quit Asterisk cleanly ending (0). Executing last minute cleanups |
#vim /etc/asterisk/extensions.conf
|
#exten => s,n,Hangup
grp3="1301" chown asterisk:asterisk $FILE case "$1" in FILE=/tmp/${RANDOM}.call 1) grp="$grp1" ;; 2) grp="$grp2" ;; *) grp="$grp3" ;; esac cat <<EOF > $FILE -------------------------------------- for i in $grp doannel:SIP/$i do FILE=/tmp/${RANDOM}.call FILE=/tmp/${RANDOM}.call cat <<EOF > $FILE cat <<EOF > $FILE Channel:SIP/$i Channel:SIP/$i EOF + +-- 8 lines: Extension:1399--------- + ~ ~ ~ ~ ~ ~ ~ ~ 9,1 Bot in/mass-call.sh [+] 0,1 Bot "/usr/local/bin/mass-call.sh" 27L, 461C written |
#rm mass-call.sh
|
#vimdiff mass-call.sh /usr/local/bin/mass-call.sh
--------------------------------------| "/usr/local/bin/mass-call.sh" 27L, 461C --------------------------------------| --------------------------------------| --------------------------------------| --------------------------------------| --------------------------------------| --------------------------------------| --------------------------------------| --------------------------------------| --------------------------------------| | |
#1" in
1302 warsaw/2201 warsaw/2202 warsaw/1101 warsaw/1102 warsaw/1201 warsaw/122 02 kiev/2301 kiev/2302 kiev/2401 kiev/2402 vitebsk/1401 vitebsk/1402" 1302 vitebsk/1401 vitebsk/1402" for i in 2grpin/mass-call.sh" 27L, 461C do FILE=/tmp/${RANDOM}.call cat <<EOF > $FILE Channel:SIP/$i Extension:1399 Context:local "/usr/local/bin/mass-call.sh" 27L, 477C written |
#cat /usr/local/bin/mass-call.sh
#!/bin/sh grp1="1302 warsaw/2201 warsaw/2202 warsaw/1101 warsaw/1102 warsaw/1201 warsaw/1202 kiev/2301 kiev/2302 kiev/2401 kiev/2402 vitebsk/1401 vitebsk/1402" grp2="1302 vitebsk/1401 vitebsk/1402" grp3="1302" case "$1" in 1) grp="$grp1" ;; 2) grp="$grp2" ;; *) grp="$grp3" ;; esac for i in $grp do FILE=/tmp/${RANDOM}.call cat <<EOF > $FILE Channel:SIP/$i Extension:1399 Context:local EOF chown asterisk:asterisk $FILE mv $FILE /var/spool/asterisk/outgoing/ done |
#lsusb
Bus 001 Device 005: ID 12d1:1001 Huawei Technologies Co., Ltd. E169/E620/E800 HSDPA Modem Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 002: ID 046d:c312 Logitech, Inc. DeLuxe 250 Keyboard Bus 003 Device 003: ID 046d:c05b Logitech, Inc. M-U0004 810-001317 [B110 Optical USB Mouse] Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub |
#apt-get instal git-core
E: Invalid operation instal |
#apt-get install git-core
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: git git-man liberror-perl rsync Suggested packages: git-daemon-run git-daemon-sysvinit git-doc git-el git-email git-gui gitk gitweb git-arch git-cvs git-mediawiki git-svn The following NEW packages will be installed: git git-core git-man liberror-perl rsync ... Preparing to unpack .../rsync_3.1.1-3_amd64.deb ... Unpacking rsync (3.1.1-3) ... Processing triggers for man-db (2.7.0.2-5) ... Processing triggers for systemd (215-17+deb8u3) ... Setting up liberror-perl (0.17-1.1) ... Setting up git-man (1:2.1.4-2.1+deb8u2) ... Setting up git (1:2.1.4-2.1+deb8u2) ... Setting up git-core (1:2.1.4-2.1+deb8u2) ... Setting up rsync (3.1.1-3) ... Processing triggers for systemd (215-17+deb8u3) ... |
#ls
|
#ifconfig lo
lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MTU:65536 Metric:1 RX packets:1206 errors:0 dropped:0 overruns:0 frame:0 TX packets:1206 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:668426 (652.7 KiB) TX bytes:668426 (652.7 KiB) |
#ifconfig eth0
eth0 Link encap:Ethernet HWaddr f4:6d:04:66:98:59 inet addr:192.168.30.2 Bcast:192.168.30.255 Mask:255.255.255.0 inet6 addr: fe80::f66d:4ff:fe66:9859/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:9138 errors:0 dropped:0 overruns:0 frame:0 TX packets:8451 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:7152388 (6.8 MiB) TX bytes:2117561 (2.0 MiB) |
#lsusb
Bus 001 Device 005: ID 12d1:1001 Huawei Technologies Co., Ltd. E169/E620/E800 HSDPA Modem Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 003 Device 002: ID 046d:c312 Logitech, Inc. DeLuxe 250 Keyboard Bus 003 Device 003: ID 046d:c05b Logitech, Inc. M-U0004 810-001317 [B110 Optical USB Mouse] Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub |
#lsusb | grep Hua
Bus 001 Device 005: ID 12d1:1001 Huawei Technologies Co., Ltd. E169/E620/E800 HSDPA Modem |
#tail /var/log/messages
Apr 1 10:28:54 asterisk3 dhcpd: DHCPREQUEST for 192.168.30.102 from 0c:38:3e:07:a4:ac via eth0 Apr 1 10:28:54 asterisk3 dhcpd: DHCPACK on 192.168.30.102 to 0c:38:3e:07:a4:ac via eth0 Apr 1 10:32:28 asterisk3 dhcpd: DHCPREQUEST for 192.168.30.100 from 50:46:5d:30:1c:da (ASUS) via eth0 Apr 1 10:32:28 asterisk3 dhcpd: DHCPACK on 192.168.30.100 to 50:46:5d:30:1c:da (ASUS) via eth0 Apr 1 10:33:55 asterisk3 dhcpd: DHCPREQUEST for 192.168.30.102 from 0c:38:3e:07:a4:ac via eth0 Apr 1 10:33:55 asterisk3 dhcpd: DHCPACK on 192.168.30.102 to 0c:38:3e:07:a4:ac via eth0 Apr 1 10:37:28 asterisk3 dhcpd: DHCPREQUEST for 192.168.30.100 from 50:46:5d:30:1c:da (ASUS) via eth0 Apr 1 10:37:28 asterisk3 dhcpd: DHCPACK on 192.168.30.100 to 50:46:5d:30:1c:da (ASUS) via eth0 Apr 1 10:38:55 asterisk3 dhcpd: DHCPREQUEST for 192.168.30.102 from 0c:38:3e:07:a4:ac via eth0 Apr 1 10:38:55 asterisk3 dhcpd: DHCPACK on 192.168.30.102 to 0c:38:3e:07:a4:ac via eth0 |
#tail /var/log/daemon.log
Apr 1 10:33:45 asterisk3 systemd[907]: Stopping Paths. Apr 1 10:33:45 asterisk3 systemd[907]: Stopped target Paths. Apr 1 10:33:45 asterisk3 systemd[907]: Stopping Timers. Apr 1 10:33:45 asterisk3 systemd[907]: Stopped target Timers. Apr 1 10:33:45 asterisk3 systemd[907]: Stopping Sockets. Apr 1 10:33:45 asterisk3 systemd[907]: Stopped target Sockets. Apr 1 10:33:45 asterisk3 systemd[907]: Starting Shutdown. Apr 1 10:33:45 asterisk3 systemd[907]: Reached target Shutdown. Apr 1 10:33:45 asterisk3 systemd[907]: Starting Exit the Session... Apr 1 10:33:45 asterisk3 systemd[907]: Received SIGRTMIN+24 from PID 2074 (kill). |
#less /var/log/messages
|
#less /var/log/messages
|
#ls -l /dev/ttyUSB*
crw-rw---- 1 root dialout 188, 0 Apr 1 10:26 /dev/ttyUSB0 crw-rw---- 1 root dialout 188, 1 Apr 1 10:26 /dev/ttyUSB1 crw-rw---- 1 root dialout 188, 2 Apr 1 10:41 /dev/ttyUSB2 |
#lsusb | grep usbser
|
#lsusb | grep usb
|
#lsmod | grep usb
usb_wwan 17091 1 option usbserial 36293 6 option,usb_wwan usb_storage 56215 0 usbhid 44460 0 hid 102264 2 hid_generic,usbhid scsi_mod 191405 5 sg,usb_storage,libata,sd_mod,sr_mod usbcore 195468 8 uhci_hcd,usb_storage,usbserial,ehci_hcd,ehci_pci,option,usbhid,usb_wwan usb_common 12440 1 usbcore |
#modinfo usb_wwan
filename: /lib/modules/3.16.0-4-amd64/kernel/drivers/usb/serial/usb_wwan.ko license: GPL description: USB Driver for GSM modems author: Matthias Urlichs <smurf@smurf.noris.de> depends: usbcore,usbserial intree: Y vermagic: 3.16.0-4-amd64 SMP mod_unload modversions |
## datacard
|
## dongle
|
#ls
|
#apt-get install git-core
Reading package lists... Done Building dependency tree Reading state information... Done git-core is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. |
#cd /usr/src
|
#pwd
/usr/src |
#cd asterisk-chan-dongle/
|
## cvs
|
## subversion (svn)
|
## bazaar
|
## mercurial (hg)
|
## git
|
## github.com
|
#apt-get install bazaar
Reading package lists... Done Building dependency tree Reading state information... Done Package bazaar is not available, but is referred to by another package. This may mean that the package is missing, has been obsoleted, or is only available from another source E: Package 'bazaar' has no installation candidate |
#apt-get install bzr
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: javascript-common libjs-jquery python-bzrlib python-configobj python-gpgme python-httplib2 python-keyring python-launchpadlib python-lazr.restfulclient python-lazr.uri python-oauth python-pkg-resources python-secretstorage python-simplejson python-six python-wadllib python-zope.interface Suggested packages: bzr-doc bzrtools python-bzrlib.tests apache2 lighttpd httpd ... Setting up python-keyring (4.0-1) ... Setting up python-pkg-resources (5.5.1-1) ... Setting up python-lazr.uri (1.0.3-2) ... Setting up python-simplejson (3.6.5-1) ... Setting up python-wadllib (1.3.2-2) ... Setting up python-zope.interface (4.1.1-3.1) ... Setting up python-oauth (1.0.1-4) ... Setting up python-lazr.restfulclient (0.13.3-1) ... Setting up python-launchpadlib (1.10.2+ds-2) ... Setting up python-secretstorage (2.1.1-1) ... |
#cd /etc/asterisk/
|
#bzr init
Created a standalone tree (format: 2a) |
#bzr add extensions.conf
adding extensions.conf |
#bzr add sip.conf
adding sip.conf |
#bzr ci -m 'initial checkout'
Committing to: /etc/asterisk/ added extensions.conf added sip.conf Committed revision 1. |
#vim extensions.conf
--- /tmp/l3-saved-2031.25927.9463 2016-04-01 10:51:23.452478706 +0300 +++ extensions.conf 2016-04-01 10:51:30.184478676 +0300 @@ -5,8 +5,6 @@ exten => s,n(start),Background(/var/tmp/asterisk/message11) exten => 9,1,Goto(s,start) exten => 0,1,Goto(menu,s,start) -exten => 1,1,AGI(/usr/local/bin/asterisk-festival.pl,/tmp/belki.txt) -exten => 2,1,AGI(/usr/local/bin/asterisk-festival.pl,/tmp/burunduki.txt) [menu] |
#bzr st | less
|
#bzr diff extensions.conf
=== modified file 'extensions.conf' --- extensions.conf 2016-04-01 07:51:16 +0000 +++ extensions.conf 2016-04-01 07:51:30 +0000 @@ -5,8 +5,6 @@ exten => s,n(start),Background(/var/tmp/asterisk/message11) exten => 9,1,Goto(s,start) exten => 0,1,Goto(menu,s,start) -exten => 1,1,AGI(/usr/local/bin/asterisk-festival.pl,/tmp/belki.txt) -exten => 2,1,AGI(/usr/local/bin/asterisk-festival.pl,/tmp/burunduki.txt) [menu] |
#bzr revert extensions.conf
M extensions.conf |
#vim extensions.conf
--- /tmp/l3-saved-2031.24848.31904 2016-04-01 10:52:34.816478393 +0300 +++ extensions.conf 2016-04-01 10:52:48.788478331 +0300 @@ -4,7 +4,10 @@ exten => s,1,Answer exten => s,n(start),Background(/var/tmp/asterisk/message11) exten => 9,1,Goto(s,start) -exten => 0,1,Goto(menu,s,start) +sdfjklsadf lsafd +sfg + +dgsh/ds hg;exten => 0,1,Goto(menu,s,start) exten => 1,1,AGI(/usr/local/bin/asterisk-festival.pl,/tmp/belki.txt) exten => 2,1,AGI(/usr/local/bin/asterisk-festival.pl,/tmp/burunduki.txt) @@ -15,21 +18,21 @@ exten => s,n,Background(/var/tmp/asterisk/message06) exten => s,n,WaitExten(2) exten => s,n(start),Background(/var/tmp/asterisk/message07) -exten => s,n,WaitExten(2) -exten => s,n,Background(/var/tmp/asterisk/message08) -exten => s,n,WaitExten(2) +dsfgdsfgsdfgexten => s,n,WaitExten(2) +exten => s,ndfg,Background(/var/tmp/asterisk/message08) +exten => s,n,WadsfgitExten(2) exten => s,n,Background(/var/tmp/asterisk/message09) -exten => s,n,Hangup - -exten => 1,1,Goto(submenu,s,start) -exten => 9,1,Goto(s,start) -exten => 0,1,Hangup - -exten => i,1,Playback(/var/tmp/asterisk/message10) - -;order status -exten => 2,1,Read(ORDER,/var/tmp/asterisk/message00) -exten => 2,n,Playback(/var/tmp/asterisk/message01) +exten => s,n,Hangupdsfg +dsfg +extedsn => 1,1,Goto(submenu,s,start) +exten fg=> 9,1,Goto(s,start) +exten =>dsfg 0,1,Hangup +dsfg +extedn => i,1,Playback(/var/tmp/asterisk/message10) +fsg +;ordsfgder status +exten =dsf> 2,1,Read(ORDER,/var/tmp/asterisk/message00) +exten => 2gdsf,gdsfgn,Playback(/var/tmp/asterisk/message01) exten => 2,n,SayDigits(${ORDER}) exten => 2,n,Playback(/var/tmp/asterisk/message0${DB(order/${ORDER})}) @@ -53,27 +56,27 @@ [local] -exten => 1399,1,Answer -exten => 1399,n,AGI(/usr/local/bin/asterisk-festival.pl,Внимание сейчас будет говорить босс) -exten => 1399,n,ConfBridge(1) - -exten => 4211,1,Goto(menu,s,1) - -exten => _13XX,1,Macro(call) -;exten => _13XX,1,dial(SIP/${EXTEN}) -;exten => 4000,1,playback(demo-thanks) -exten => 4000,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4001,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4002,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4003,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4004,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4005,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) - -exten => 4006,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4007,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4008,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4009,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) -exten => 4010,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) +sdfgdsexten => 1399,1,Answer +exten fg=> 1399,n,AGI(/usr/local/bin/asterisk-festival.pl,Внимание сейчас будет говорить босс) +exten =>dsfg 1399,n,ConfBridge(1) +dsfg +extedsfn => 4211,1,Goto(menu,s,1) +gds +extfgen => _13XX,1,Macro(call) +;extedsfgn => _13XX,1,dial(SIP/${EXTEN}) +;exten =>ds 4000,1,playback(demo-thanks) +exten => 40fg00,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) +exten => 4001dsf,gsd1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) +exten => 4002,1,recofgrd(/var/tmp/asterisk/message${EXTEN:2}:gsm) +exten => 4003,1,recorddsfg(/var/tmp/asterisk/message${EXTEN:2}:gsm) +exten => 4004,1,record(/vadsgr/tmp/asterisk/message${EXTEN:2}:gsm) +exten => 4005,1,record(/var/tdfmp/asterisk/message${EXTEN:2}:gsm) +sg +exsdten => 4006,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) +extefgn => 4007,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) +exten dsfg=> 4008,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) +exten => 4dsg009,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) +exten => 4010dfg,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) exten => 4011,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) exten => 4012,1,record(/var/tmp/asterisk/message${EXTEN:2}:gsm) |
#bzr diff | vim -
|
#bzr revert -
bzr: ERROR: Path(s) are not versioned: - |
#bzr revert extensions.conf
M extensions.conf |
#vim extensions.conf
--- /tmp/l3-saved-2031.5483.16655 2016-04-01 10:53:14.420478219 +0300 +++ extensions.conf 2016-04-01 10:53:34.848478129 +0300 @@ -21,9 +21,9 @@ exten => s,n,Background(/var/tmp/asterisk/message09) exten => s,n,Hangup -exten => 1,1,Goto(submenu,s,start) -exten => 9,1,Goto(s,start) -exten => 0,1,Hangup +;exten => 1,1,Goto(submenu,s,start) +;exten => 9,1,Goto(s,start) +;exten => 0,1,Hangup exten => i,1,Playback(/var/tmp/asterisk/message10) |
#bzr ci -m 'disabled submenu'
Committing to: /etc/asterisk/ modified extensions.conf Committed revision 2. |
#bzr log extensions.conf
------------------------------------------------------------ revno: 2 committer: root <root@asterisk3.unix.sl> branch nick: asterisk timestamp: Fri 2016-04-01 10:53:42 +0300 message: disabled submenu ------------------------------------------------------------ revno: 1 committer: root <root@asterisk3.unix.sl> branch nick: asterisk timestamp: Fri 2016-04-01 10:51:16 +0300 message: initial checkout |
#ls -l .bzr/
total 24 drwxr-xr-x 3 root root 4096 Apr 1 10:53 branch -rw-r--r-- 1 root root 35 Apr 1 10:50 branch-format drwxr-xr-x 2 root root 4096 Apr 1 10:50 branch-lock drwxr-xr-x 4 root root 4096 Apr 1 10:53 checkout -rw-r--r-- 1 root root 147 Apr 1 10:50 README drwxr-xr-x 7 root root 4096 Apr 1 10:53 repository |
#ls -ld .bzr/
drwxr-xr-x 6 root root 4096 Apr 1 10:50 .bzr/ |
#bzr push /tmp/etc-asteris-k-backup
Created new branch. |
#cd /tmp/etc-asteris-k-backup
|
#ls -l
total 12 -rw-r--r-- 1 root root 4280 Apr 1 10:54 extensions.conf -rw-r--r-- 1 root root 685 Apr 1 10:54 sip.conf |
#cd -
/etc/asterisk |
#bzr annotate extensions.conf | less
|
# | exten => 2,1,AGI(/usr/local/bin/asterisk-festival.pl,/tmp/burunduk
------------------------------------------------------------ revno: 2 committer: root <root@asterisk3.unix.sl> branch nick: asterisk timestamp: Fri 2016-04-01 10:53:42 +0300 message: disabled submenu ------------------------------------------------------------ revno: 1 committer: root <root@asterisk3.unix.sl> branch nick: asterisk timestamp: Fri 2016-04-01 10:51:16 +0300 message: initial checkout |
#cd /usr/src/
|
#ls
asterisk-chan-dongle |
#cd asterisk-chan-dongle/ls
bash: cd: asterisk-chan-dongle/ls: No such file or directory |
#cd asterisk-chan-dongle/
|
#ls
app.c at_response.h configure.in INSTALL pdiscovery.h app.h BUGS contrib LICENSE.txt pdu.c at_command.c chan_dongle.c COPYRIGHT.txt Makefile.in pdu.h at_command.h chan_dongle.h cpvt.c manager.c README.txt at_parse.c channel.c cpvt.h manager.h ringbuffer.c at_parse.h channel.h dc_config.c memmem.c ringbuffer.h at_queue.c char_conv.c dc_config.h memmem.h single.c at_queue.h char_conv.h etc mixbuffer.c stamp-h.in at_read.c cli.c export.h mixbuffer.h test at_read.h cli.h helpers.c mutils.h TODO.txt at_response.c config.h.in helpers.h pdiscovery.c tools |
#less INSTALL
|
#aclocal
bash: aclocal: command not found |
#apt-get install autoconf
Reading package lists... Done Building dependency tree Reading state information... Done The following extra packages will be installed: automake autotools-dev m4 Suggested packages: autoconf-archive gnu-standards autoconf-doc libtool gettext The following NEW packages will be installed: autoconf automake autotools-dev m4 0 upgraded, 4 newly installed, 0 to remove and 0 not upgraded. ... Unpacking autotools-dev (20140911.1) ... Selecting previously unselected package automake. Preparing to unpack .../automake_1%3a1.14.1-4_all.deb ... Unpacking automake (1:1.14.1-4) ... Processing triggers for man-db (2.7.0.2-5) ... Setting up m4 (1.4.17-4) ... Setting up autoconf (2.69-8) ... Setting up autotools-dev (20140911.1) ... Setting up automake (1:1.14.1-4) ... update-alternatives: using /usr/bin/automake-1.14 to provide /usr/bin/automake (automake) in auto mode |
#less INSTALL
|
##apt-get install autoconf
|
Channel:SIP/1301 Extension:4211 Context:local
#!/bin/sh grp1="1302 warsaw/2201 warsaw/2202 warsaw/1101 warsaw/1102 warsaw/1201 warsaw/1202 kiev/2301 kiev/2302 kiev/2401 kiev/2402 vitebsk/1401 vitebsk/1402" grp2="1302 vitebsk/1401 vitebsk/1402" grp3="1302" case "$1" in 1) grp="$grp1" ;; 2) grp="$grp2" ;; *) grp="$grp3" ;; esac for i in $grp do FILE=/tmp/${RANDOM}.call cat <<EOF > $FILE Channel:SIP/$i Extension:1399 Context:local EOF chown asterisk:asterisk $FILE mv $FILE /var/spool/asterisk/outgoing/ done
#for i in 130{1,2} warsaw/220{1,2} warsaw/1{1,2}0{1,2} kiev/2{3,4}0{1,2} vitebsk/140{1,2} for i in kiev/240{1,2} do FILE=/tmp/${RANDOM}.call cat <<EOF > $FILE Channel:SIP/$i Extension:4211 Context:local EOF chown asterisk:asterisk $FILE mv $FILE /var/spool/asterisk/outgoing/ done
Время первой команды журнала | 14:04:54 2016- 3-31 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Время последней команды журнала | 09:58:29 2016- 4- 1 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в журнале | 101 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент команд с ненулевым кодом завершения, % | 10.89 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Процент синтаксически неверно набранных команд, % | 0.99 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Суммарное время работы с терминалом *, час | 0.94 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Количество командных строк в единицу времени, команда/мин | 1.80 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Частота использования команд |
|
В журнал автоматически попадают все команды, данные в любом терминале системы.
Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду 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