Журнал лабораторных работ

Содержание

Журнал

Четверг (06/23/11)

/dev/pts/17
16:12:09
#!/
/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk.
Starting Asterisk PBX: asterisk.
/dev/pts/0
16:12:09
#!/
/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk.
Starting Asterisk PBX: asterisk.
/dev/pts/16
16:12:09
#!/
/etc/init.d/asterisk restart
Stopping Asterisk PBX: asterisk.
Starting Asterisk PBX: asterisk.
/dev/pts/18
16:12:13
#!as
asterisk -rvvvvvvvvvvv
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
...
Name/username              Host            Dyn Nat ACL Port     Status
2401/2401                  192.168.108.200  D          5060     Unmonitored
2402/2402                  (Unspecified)    D          0        Unmonitored
kiev/lvov                  192.168.107.1    D          5060     Unmonitored
paris/lvov                 192.168.103.1    D          5060     Unmonitored
4 sip peers [Monitored: 0 online, 0 offline Unmonitored: 3 online, 1 offline]
linux8*CLI> exi
No such command 'exi' (type 'core show help exi' for other possible commands)
linux8*CLI> quit
Executing last minute cleanups
/dev/pts/0
16:12:13
#!v
; custom        -- run a custom application (See examples below)
; =========
; File-based (native) music on hold
; =========isk/musiconhold.conf" 84L, 2741C
;
; This plays files directly from the specified directory, no external
; processes are required. Files are played in normal sorting order
; (same as a sorted directory listing), and no volume or other
; sound adjustments are available. If the file is available in
; the same format as the channel's codec, then it will be played
; without transcoding (same as Playback would do in the dialplan).
; Files can be present in as many formats as you wish, and the
; 'best' format will be chosen at playback time.
;
; The path specified can be either an absolute path (starts with '/'),
; or a relative path; relative paths are interpreted as being relative
; to the 'astvarlibdir' in asterisk.conf, which defaults to                                                  3,1           Top
/dev/pts/16
16:12:13
#!v
; custom        -- run a custom application (See examples below)
; =========
; File-based (native) music on hold
; =========isk/musiconhold.conf" 84L, 2741C
;
; This plays files directly from the specified directory, no external
; processes are required. Files are played in normal sorting order
; (same as a sorted directory listing), and no volume or other
; sound adjustments are available. If the file is available in
; the same format as the channel's codec, then it will be played
; without transcoding (same as Playback would do in the dialplan).
; Files can be present in as many formats as you wish, and the
; 'best' format will be chosen at playback time.
;
; The path specified can be either an absolute path (starts with '/'),
; or a relative path; relative paths are interpreted as being relative
; to the 'astvarlibdir' in asterisk.conf, which defaults to                                                  3,1           Top
/dev/pts/19
16:12:13
#!as
asterisk -rvvvvvvvvvvv
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
...
Name/username              Host            Dyn Nat ACL Port     Status
2401/2401                  192.168.108.200  D          5060     Unmonitored
2402/2402                  (Unspecified)    D          0        Unmonitored
kiev/lvov                  192.168.107.1    D          5060     Unmonitored
paris/lvov                 192.168.103.1    D          5060     Unmonitored
4 sip peers [Monitored: 0 online, 0 offline Unmonitored: 3 online, 1 offline]
linux8*CLI> exi
No such command 'exi' (type 'core show help exi' for other possible commands)
linux8*CLI> quit
Executing last minute cleanups
/dev/pts/8
16:12:13
#!v
; custom        -- run a custom application (See examples below)
; =========
; File-based (native) music on hold
; =========isk/musiconhold.conf" 84L, 2741C
;
; This plays files directly from the specified directory, no external
; processes are required. Files are played in normal sorting order
; (same as a sorted directory listing), and no volume or other
; sound adjustments are available. If the file is available in
; the same format as the channel's codec, then it will be played
; without transcoding (same as Playback would do in the dialplan).
; Files can be present in as many formats as you wish, and the
; 'best' format will be chosen at playback time.
;
; The path specified can be either an absolute path (starts with '/'),
; or a relative path; relative paths are interpreted as being relative
; to the 'astvarlibdir' in asterisk.conf, which defaults to                                                  3,1           Top
/dev/pts/17
16:12:13
#!v
; custom        -- run a custom application (See examples below)
; =========
; File-based (native) music on hold
; =========isk/musiconhold.conf" 84L, 2741C
;
; This plays files directly from the specified directory, no external
; processes are required. Files are played in normal sorting order
; (same as a sorted directory listing), and no volume or other
; sound adjustments are available. If the file is available in
; the same format as the channel's codec, then it will be played
; without transcoding (same as Playback would do in the dialplan).
; Files can be present in as many formats as you wish, and the
; 'best' format will be chosen at playback time.
;
; The path specified can be either an absolute path (starts with '/'),
; or a relative path; relative paths are interpreted as being relative
; to the 'astvarlibdir' in asterisk.conf, which defaults to                                                  3,1           Top
/dev/pts/25
16:19:13
#ls /var/tmp/asterisk/
record02.gsm  record04.gsm  record06.gsm  record08.gsm  record10.gsm  record12.gsm  record14.gsm  record22.gsm  ru
record03.gsm  record05.gsm  record07.gsm  record09.gsm  record11.gsm  record13.gsm  record15.gsm  record55.gsm  uk
/dev/pts/15
16:19:13
#ls /var/tmp/asterisk/
record02.gsm  record04.gsm  record06.gsm  record08.gsm  record10.gsm  record12.gsm  record14.gsm  record22.gsm  ru
record03.gsm  record05.gsm  record07.gsm  record09.gsm  record11.gsm  record13.gsm  record15.gsm  record55.gsm  uk
прошло 25 минут
/dev/pts/0
16:44:25
#[ ]
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,Dial(SIP/${EXTEN},10,m)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})),10,m)       ;zvonok na mobilniy c vnutrennii asterisk DB
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
                       (                                           )
exten => _24XX,n,GotoIf()["${DIALSTATUS}" = "NOANSWER"]?missed_call)
                                     (
exten => _24)X,n,Hangup()
D(num)})                                                                                                                      II
...
[gr2]
[gr2]                (                    )
include => national
[gr2]
[gr3]
[gr3]
[gr3]
include => local
include => national
include => internal                                                                                          186,1         96%
/dev/pts/16
16:44:25
#[ ]
exten => s,1,Background(/var/tmp/asterisk/record11)
exten => s,n,WaitExten(5)
exten => s,n,Goto(system-menu,s,1)
;exten => 1234,1,Background(/var/tmp/asterisk/record11)
exten => 1234,1,System(touch /tm/asteriskovskiy-fail)
exten => 1234,n,GotoIf($[${SYSTEMSTATUS} = SUCCESS]?success)
exten => 1234,n,Playback(/var/tmp/asterisk/record13)    ; voznikla oshibka pri vypolnenii operacii
[local]> 1234,n,Hangup
;-----------------------------------LOCAL DIALPLANk/record14)   ; operaciya vypolnena uspeshno
exten => _24XX,1,Answer
...
[gr2]                (                    )
include => national
[gr2]
[gr3]
[gr3]
[gr3]
include => local
include => national
include => internal                                                                                          186,1         96%
exten => _24XX,n,Hangup()
/dev/pts/8
16:44:25
#[ ]
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,Dial(SIP/${EXTEN},10,m)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})),10,m)       ;zvonok na mobilniy c vnutrennii asterisk DB
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
                       (                                           )
exten => _24XX,n,GotoIf()["${DIALSTATUS}" = "NOANSWER"]?missed_call)
                                     (
exten => _24)X,n,Hangup()
D(num)})                                                                                                                      II
...
[gr2]
[gr2]                (                    )
include => national
[gr2]
[gr3]
[gr3]
[gr3]
include => local
include => national
include => internal                                                                                          186,1         96%
/dev/pts/17
16:44:25
#[ ]
exten => s,1,Background(/var/tmp/asterisk/record11)
exten => s,n,WaitExten(5)
exten => s,n,Goto(system-menu,s,1)
;exten => 1234,1,Background(/var/tmp/asterisk/record11)
exten => 1234,1,System(touch /tm/asteriskovskiy-fail)
exten => 1234,n,GotoIf($[${SYSTEMSTATUS} = SUCCESS]?success)
exten => 1234,n,Playback(/var/tmp/asterisk/record13)    ; voznikla oshibka pri vypolnenii operacii
[local]> 1234,n,Hangup
;-----------------------------------LOCAL DIALPLANk/record14)   ; operaciya vypolnena uspeshno
exten => _24XX,1,Answer
...
[gr2]                (                    )
include => national
[gr2]
[gr3]
[gr3]
[gr3]
include => local
include => national
include => internal                                                                                          186,1         96%
exten => _24XX,n,Hangup()
/dev/pts/0
16:45:32
#vim /etc/asterisk/extensions.conf
/dev/pts/16
16:45:32
#vim /etc/asterisk/extensions.conf
/dev/pts/8
16:45:32
#vim /etc/asterisk/extensions.conf
/dev/pts/17
16:45:32
#vim /etc/asterisk/extensions.conf
/dev/pts/18
16:46:07
#vim /etc/asterisk/extensions.conf
/dev/pts/19
16:46:07
#vim /etc/asterisk/extensions.conf

Пятница (06/24/11)

/dev/pts/0
08:12:59
#vim /etc/asterisk/extensions.conf
/dev/pts/16
08:12:59
#vim /etc/asterisk/extensions.conf
/dev/pts/8
08:12:59
#vim /etc/asterisk/extensions.conf
/dev/pts/17
08:12:59
#vim /etc/asterisk/extensions.conf
/dev/pts/0
08:13:04
#exit
exit
Connection to kiev.unix.nt closed.
/dev/pts/16
08:13:04
#exit
exit
Connection to kiev.unix.nt closed.
/dev/pts/8
08:13:04
#exit
exit
Connection to kiev.unix.nt closed.
/dev/pts/17
08:13:04
#exit
exit
Connection to kiev.unix.nt closed.
/dev/pts/8
08:13:18
#[ ]
mobilebd      modules.conf
08:13:18
#vim /etc/asterisk/mo
08:13:18
#vim /etc/asterisk/mobilebd
/dev/pts/17
08:13:18
#[ ]
mobilebd      modules.conf
08:13:18
#vim /etc/asterisk/mo
08:13:18
#vim /etc/asterisk/mobilebd
/dev/pts/0
08:13:18
#[ ]
mobilebd      modules.conf
08:13:18
#vim /etc/asterisk/mo
08:13:18
#vim /etc/asterisk/mobilebd
--- /tmp/l3-saved-22920.264.1756	2011-06-24 09:19:21.000000000 +0300
+++ /etc/asterisk/extensions.conf	2011-06-24 09:20:47.000000000 +0300
@@ -147,8 +147,8 @@
 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,Dial(SIP/${EXTEN},10,m)
-exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})),10,m)       ;zvonok na mobilniy c vnutrennii asterisk DB
+exten => _24XX,n,Dial(SIP/${EXTEN},10)
+exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})),10)       ;zvonok na mobilniy c vnutrennii asterisk DB
 exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
 exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
 exten => _24XX,n,Hangup()
/dev/pts/16
08:13:18
#[ ]
mobilebd      modules.conf
08:13:18
#vim /etc/asterisk/mo
08:13:18
#vim /etc/asterisk/mobilebd
/dev/pts/19
08:14:30
#include => international
;-------------MY MOBILE
exten => _380.,1,Dial(SIP/kiev/${EXTEN},10)
[gr1]
include => internal
include => local
[gr2]
include => internal
include => local
include => national
[gr3]
include => internal
include => local
include => national
/dev/pts/18
08:14:30
#include => international
exten => _23XX,1,Dial(SIP/kiev/${EXTEN},10)
[international]
;----------RUSSIA
exten => _1[12]XX,1,Dial(SIP/kiev/${EXTEN},10)
;----------USA
exten => _2[12]XX,1,Dial(SIP/kiev/${EXTEN},10)
;----------FRANCE
;exten => _[13][31]XX,1,Dial(SIP/kiev/${EXTEN},10)
exten => _[13][31]XX,1,Dial(SIP/paris/${EXTEN},10)
;-------------MY MOBILE
...
include => internal
include => local
[gr2]
include => internal
include => local
include => national
[gr3]
include => internal
include => local
include => national
08:16:04
#include => international
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)
...
    -- Remote UNIX connection disconnected
  == Using SIP RTP CoS mark 5
    -- Executing [8402@gr3:1] Read("SIP/2402-00000031", "redirector,/var/tmp/asterisk/record100") in new stack
[Jun 24 09:45:07] WARNING[21344]: file.c:650 ast_openstream_full: File /var/tmp/asterisk/record100 does not exist in any format
[Jun 24 09:45:07] WARNING[21344]: file.c:953 ast_streamfile: Unable to open /var/tmp/asterisk/record100 (format 0x4 (ulaw)): No such file or directory
    -- User disconnected
    -- Executing [8402@gr3:2] Set("SIP/2402-00000031", "DB(mobile/2402)=") in new stack
    -- Auto fallthrough, channel 'SIP/2402-00000031' status is 'UNKNOWN'
linux8*CLI> exit
Executing last minute cleanups
/dev/pts/19
08:16:04
#include => international
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)
...
    -- Remote UNIX connection disconnected
  == Using SIP RTP CoS mark 5
    -- Executing [8402@gr3:1] Read("SIP/2402-00000031", "redirector,/var/tmp/asterisk/record100") in new stack
[Jun 24 09:45:07] WARNING[21344]: file.c:650 ast_openstream_full: File /var/tmp/asterisk/record100 does not exist in any format
[Jun 24 09:45:07] WARNING[21344]: file.c:953 ast_streamfile: Unable to open /var/tmp/asterisk/record100 (format 0x4 (ulaw)): No such file or directory
    -- User disconnected
    -- Executing [8402@gr3:2] Set("SIP/2402-00000031", "DB(mobile/2402)=") in new stack
    -- Auto fallthrough, channel 'SIP/2402-00000031' status is 'UNKNOWN'
linux8*CLI> exit
Executing last minute cleanups
/dev/pts/0
08:19:19
#~
;----------USA
exten => _2[12]XX,1,Dial(SIP/kiev/${EXTEN},10)
;----------FRANCE
;exten => _[13][31]XX,1,Dial(SIP/kiev/${EXTEN},10)
exten => _[13][31]XX,1,Dial(SIP/paris/${EXTEN},10)
;-------------MY MOBILE
exten => _380.,1,Dial(SIP/kiev/${EXTEN},10)
[gr1]
[gr1]
include => local
...
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
D(num)})
exten => _24XX,n,Wait(1)
exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default)
[        ]             ()
[        ]
[             ]
[        ]    ]
[             ]
"extensions.conf" 206L, 6720C written
/dev/pts/16
08:19:19
#~
[internal]
;-----------Test Asterisk
exten => 8000,1,Wait(1)
exten => 8000,n,Playback(demo-congrats)
exten => _81.,1,Wait(1)
exten => _81.,n,Say(${EXTEN})
;-----------VOICEMAIL
;-----------general Voicemail
exten => 8100,1,VoicemailMain()
;-----------personal Voicemail
...
exten => _380.,1,Dial(SIP/kiev/${EXTEN},10)
[             ]
[gr1]
[gr1]
"extensions.conf" 206L, 6720C written
exten => _24XX,n,Hangup()
exten => _24XX,n,Hangup()
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
;LERID(num)})
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
/dev/pts/8
08:19:19
#~
exten => s,1,Background(/var/tmp/asterisk/record11)
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,Dial(SIP/${EXTEN},10)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})),10)       ;zvonok na mobilniy c vnutrennii asterisk DB
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
...
exten => _380.,1,Dial(SIP/kiev/${EXTEN},10)
[             ]
[gr1]
[gr1]
"extensions.conf" 206L, 6720C written
exten => _24XX,n,Hangup()
exten => _24XX,n,Hangup()
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
;LERID(num)})
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
/dev/pts/17
08:19:19
#~
[international]
[             ]
exten => _1[12]XX,1,Dial(SIP/kiev/${EXTEN},10)
;----------USA
exten => _2[12]XX,1,Dial(SIP/kiev/${EXTEN},10)
;----------FRANCE
;exten => _[13][31]XX,1,Dial(SIP/kiev/${EXTEN},10)
exten => _[13][31]XX,1,Dial(SIP/paris/${EXTEN},10)
;-------------MY MOBILE
exten => _380.,1,Dial(SIP/kiev/${EXTEN},10)
...
exten => _24XX,n,Wait(1)
exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default)
[        ]             ()
[        ]
[             ]
[        ]    ]
[             ]
[gr1]
[gr1]
"extensions.conf" 206L, 6720C written
/dev/pts/0
08:20:47
#asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/16
08:20:47
#asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/8
08:20:47
#asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/17
08:20:47
#asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/8
08:20:57
#!v
exten => 8000,n,Playback(demo-congrats)
exten => _81.,1,Wait(1)
exten => _81.,n,Say(${EXTEN})
;-----------VOICEMAIL
;-----------general Voicemail
exten => 8100,1,VoicemailMain()
;-----------personal Voicemail
exten => _81XX,n,VoicemailMain(24${EXTEN:2}@default)
;-----------IVR RECORD
exten => _82XX,1,Wait(1)s.conf" 206L, 6720C
...
[national]
[        ]
[--------]--Kiev
exten => _23XX,1,Dial(SIP/kiev/${EXTEN},10)
"extensions.conf" 207L, 6724C written
exten => _24XX,n,Hangup()
exten => _24XX,n,Hangup()
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
;LERID(num)})
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
/dev/pts/17
08:20:57
#!v
exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})})
exten => _24XX,n,Dial(SIP/e{EXTEN}/${)B(mobile/${EXTEN})),10)       ;zvonok na mobilniy c vnutrennii asterisk DB
                     (                B(        {EXTEN}))
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
                                     (
exten (num)4)X,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)
                                     (
            )
           4XX,n,Wait(1)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})},10,m)
exten => 2403,1,Dial(SIP/2401&SIP/2402,10)
;exten => _24XX,n,Playback(demo-congrats)
[national]
[        ]
[--------]--Kiev
exten => _23XX,1,Dial(SIP/kiev/${EXTEN},10)
"extensions.conf" 207L, 6724C written
/dev/pts/0
08:20:57
#!v
exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})})
exten => _24XX,n,Dial(SIP/e{EXTEN}/${)B(mobile/${EXTEN})),10)       ;zvonok na mobilniy c vnutrennii asterisk DB
                     (                B(        {EXTEN}))
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
                                     (
exten (num)4)X,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)
                                     (
            )
           4XX,n,Wait(1)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})},10,m)
exten => 2403,1,Dial(SIP/2401&SIP/2402,10)
;exten => _24XX,n,Playback(demo-congrats)
[national]
[        ]
[--------]--Kiev
exten => _23XX,1,Dial(SIP/kiev/${EXTEN},10)
"extensions.conf" 207L, 6724C written
/dev/pts/16
08:20:57
#!v
;exten => _24XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLERID(num)})
exten => _24XX,n,Dial(SIP/${EXTEN},10)
exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})})
exten => _24XX,n,Dial(SIP/e{EXTEN}/${)B(mobile/${EXTEN})),10)       ;zvonok na mobilniy c vnutrennii asterisk DB
                     (                B(        {EXTEN}))
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
                                     (
exten (num)4)X,n,Hangup()
D(num)})
...
[national]
-- INSERT --XX,n,Hangup()                                                                                    168,11        77%
                                     (
            )
           4XX,n,Wait(1)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})},10,m)
[        ]
[--------]--Kiev
exten => _23XX,1,Dial(SIP/kiev/${EXTEN},10)
"extensions.conf" 207L, 6724C written
/dev/pts/8
08:24:48
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/17
08:24:48
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/0
08:24:48
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/16
08:24:48
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/8
08:24:50
#!v
exten => s,1,Background(/var/tmp/asterisk/record11)
exten => s,n,WaitExten(5)
exten => s,n,Goto(system-menu,s,1)
;exten => 1234,1,Background(/var/tmp/asterisk/record11)
exten => 1234,1,System(touch /tm/asteriskovskiy-fail)
exten => 1234,n,GotoIf($[${SYSTEMSTATUS} = SUCCESS]?success)
exten => 1234,n,Playback(/var/tmp/asterisk/record13)    ; voznikla oshibka pri vypolnenii operacii
[local]> 1234,n,Hangup
;-----------------------------------LOCAL DIALPLANk/record14)   ; operaciya vypolnena uspeshno
exten => _24XX,1,Answer
...
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
;LERID(num)})
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})})
D(num)})
exten => _24XX,n,Wait(1)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})},10,m)
"extensions.conf" 207L, 6725C written
exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default)
exten => _24XX,n,Hangup()
/dev/pts/17
08:24:50
#!v
[default]
[internal]
"/etc/asterisk/extensions.conf" 207L, 6724C
exten => s,1,Background(/var/tmp/asterisk/record11)
exten => s,n,WaitExten(5)
exten => s,n,Goto(system-menu,s,1)
;exten => 1234,1,Background(/var/tmp/asterisk/record11)
exten => 1234,1,System(touch /tm/asteriskovskiy-fail)
exten => 1234,n,GotoIf($[${SYSTEMSTATUS} = SUCCESS]?success)
exten => 1234,n,Playback(/var/tmp/asterisk/record13)    ; voznikla oshibka pri vypolnenii operacii
...
exten => _24XX,n,Wait(1)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})},10,m)
"extensions.conf" 207L, 6725C written
exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default)
exten => _24XX,n,Hangup()
exten => _24XX,n,Hangup()
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
;LERID(num)})
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
/dev/pts/0
08:24:50
#!v
;-----------VOICEMAIL
;-----------general Voicemail
exten => 8100,1,VoicemailMain()
;-----------personal Voicemail
exten => _81XX,n,VoicemailMain(24${EXTEN:2}@default)
;-----------IVR RECORD
exten => _82XX,1,Wait(1)s.conf" 207L, 6724C
exten => _82XX,n,Playback(please-enter-you&vm-message)
exten => _82XX,n,Record(/var/tmp/asterisk/record${EXTEN:2}:gsm,2)
exten => _82XX,n,Wait(1)
...
exten => _24XX,n,Wait(1)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,Dial(SIP/external/${DB(mobile/${EXTEN})},10,m)
"extensions.conf" 207L, 6725C written
exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default)
exten => _24XX,n,Hangup()
exten => _24XX,n,Hangup()
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
;LERID(num)})
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
/dev/pts/16
08:24:50
#!v
[local]> 1234,n,Hangup
;-----------------------------------LOCAL DIALPLANk/record14)   ; operaciya vypolnena uspeshno
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},10)
;exten => _24XX,n,SetMusicOnHold(${DB(moh/${EXTEN})})issed_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/external/${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)
"extensions.conf" 207L, 6725C written
/dev/pts/8
08:25:21
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/17
08:25:21
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/0
08:25:21
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/16
08:25:21
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/0
08:25:25
#!v
exten => s,1,Background(/var/tmp/asterisk/record11)
exten => 1234,1,System(touch /tm/asteriskovskiy-fail)
exten => 1234,n,GotoIf($[${SYSTEMSTATUS} = SUCCESS]?success)
exten => 1234,n,Playback(/var/tmp/asterisk/record13)    ; voznikla oshibka pri vypolnenii operacii
exten => 1234,n,Hangup
[local]> 1234,n(success),Playback(/var/tmp/asterisk/record14)   ; operaciya vypolnena uspeshno
;-----------------------------------LOCAL DIALPLAN
exten => _24XX,1,Answervar/tmp/asterisk/record12)       ; incorrect password
;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,Wait(1)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,Dial(SIP/kiev/${DB(mobile/${EXTEN})},10,m)
"extensions.conf" 207L, 6721C written
exten => _24XX,n(voicemail),Voicemail(${EXTEN}@default)
exten => _24XX,n,Hangup()
exten => _24XX,n,Hangup()
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
;LERID(num)})
exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger ${DB(jid/${EXTEN})} Propuschennij zvonok s ${CALLERII
/dev/pts/16
08:25:25
#!v
;-----------personal Voicemail
exten => _81XX,n,VoicemailMain(24${EXTEN:2}@default)
;-----------IVR RECORD
exten => _82XX,1,Wait(1)s.conf" 207L, 6725C
exten => _82XX,n,Playback(please-enter-you&vm-message)
exten => _82XX,n,Record(/var/tmp/asterisk/record${EXTEN:2}:gsm,2)
exten => _82XX,n,Wait(1)
exten => _82XX,n,Playback(/var/tmp/asterisk/record${EXTEN:2})
exten => _83XX,1,Playback(/var/tmp/asterisk/record${EXTEN:2})
exten => 8555,1,Playback(/home/user/Music/bg_melody)
...
exten => _24XX,n,Hangup()
D(num)})
;exten(num)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/external/${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)
                     (   /kiev/${DB(mobile/${EXTEN})},10,m)
"extensions.conf" 207L, 6721C written
/dev/pts/8
08:25:25
#!v
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},10)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
exten => _24XX,n,Hangup()
D(num)})
;exten(num)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/external/${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)
                     (   /kiev/${DB(mobile/${EXTEN})},10,m)
"extensions.conf" 207L, 6721C written
/dev/pts/17
08:25:25
#!v
vim /etc/asterisk/extensions.conf
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},10)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
exten => _24XX,n,Hangup()
D(num)})
;exten(num)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/external/${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)
                     (   /kiev/${DB(mobile/${EXTEN})},10,m)
"extensions.conf" 207L, 6721C written
/dev/pts/0
08:26:58
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/16
08:26:58
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/8
08:26:58
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/17
08:26:58
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/0
08:27:00
#!v
[-----]-----------------------------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,SetMusicOnHold(${DB(moh/${EXTEN})})
exten => _24XX,n,Dial(SIP/${EXTEN},10)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
exten => _24XX,n,Hangup()
;exten => _24XX,n(missed_call),System(/usr/local/bin/asterisk-jabber-logger Propuschennyi vyzov s ${CAL
...
                      (1)
[         ]           (1)
                      (1)
exten => 7,1,Set(MENU_LANG=ru)
                (     (1)    )
exten => 7,n,Goto(menu,s,1)
                ((        )  )
                 (        )
exten => 8,1,Set(MENU_LANG=uk)
"extensions.conf" 211L, 6988C written
/dev/pts/16
08:27:00
#!v
exten => 2403,1,Dial(SIP/2401&SIP/2402,10)
;exten => _24XX,n,Playback(demo-congrats)
[national]
[        ]
[        ]
[xten => ]23XX,1,Dial(SIP/kiev/${EXTEN},10)
[international]
[             ]
exten => _1[12]XX,1,Dial(SIP/kiev/${EXTEN},10)
;----------USA
...
exten => 8500,1,Goto(lang-menu,s,1)
[lang-menu]
exten => 8500,1,Goto(lang-menu,s,1)
[lang-menu]
[         ]
exten => 8402,1,Read(redirector,/var/tmp/asterisk/record14)
;---------------------------------------IVR pilotisk/record10)  ;hi
[xten => s]n,WaitExten(1)
exten => 7,1,Set(MENU_LANG=ru)
-- INSERT --USSIA                                                                                            37,1           7%
/dev/pts/8
08:27:00
#!v
exten => s,1,Background(/var/tmp/asterisk/record11)
exten => s,n,WaitExten(5)
exten => s,n,Goto(system-menu,s,1)
;exten => 1234,1,Background(/var/tmp/asterisk/record11)
exten => 1234,1,System(touch /tm/asteriskovskiy-fail)
exten => 1234,n,GotoIf($[${SYSTEMSTATUS} = SUCCESS]?success)
exten => 1234,n,Playback(/var/tmp/asterisk/record13)    ; voznikla oshibka pri vypolnenii operacii
exten => 1234,n,Hangup
exten => 2403,1,Dial(SIP/2401&SIP/2402,10)
;exten => _24XX,n,Playback(demo-congrats)
...
                      (1)
[         ]           (1)
                      (1)
exten => 7,1,Set(MENU_LANG=ru)
                (     (1)    )
exten => 7,n,Goto(menu,s,1)
                ((        )  )
                 (        )
exten => 8,1,Set(MENU_LANG=uk)
"extensions.conf" 211L, 6988C written
/dev/pts/17
08:27:00
#!v
;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},10)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "BUSY"]?missed_call)
exten => _24XX,n,GotoIf($["${DIALSTATUS}" = "NOANSWER"]?missed_call)
exten => _24XX,n,Hangup()
D(num)})
...
exten => 8557,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-belka.txt)
exten => 8558,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-asterisk.txt)
exten => 8559,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-kiev.txt)
exten => 8500,1,Goto(lang-menu,s,1)
[lang-menu]
[         ]
exten => s,1,Answer
exten => s,n(startmenu),Background(/var/tmp/asterisk/record10)  ;hi
exten => s,n,WaitExten(1)
;----------RUSSIA                                                                                            45,0-1         6%
прошло 15 минут
/dev/pts/15
08:42:55
#ssh user@kiev.unix.nt
user@kiev.unix.nt's password:
Linux linux7 2.6.32-5-amd64 #1 SMP Wed May 18 23:13:22 UTC 2011 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.
exten => 9,1,Goto(menu,s,start-menu)
[submenu]
[       ]
exten => s,1,Wait(1)
exten => s,n(start-submenu),Background(/var/tmp/asterisk/record3)  ; zhivotnie
...
[local]
exten => 2444,1,AgentLogin(1001)    ;registracia agenta
exten => 2445,1,AgentLogin(1002)
exten => 2310,1,Dial(SIP/2303&SIP/2304.10)
exten => 2321,1,Dial(SIP/msk/${DB(mobile/${EXTEN})},20)
exten => _23XX,1,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLERID(num)})
exten => _23XX,n,Monitor(wav,${MON_FILENAME},m)
;exten => _23XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLER(num)})
user@linux7:~$ logout
Connection to kiev.unix.nt closed.
/dev/pts/25
08:42:55
#ssh user@kiev.unix.nt
user@kiev.unix.nt's password:
Linux linux7 2.6.32-5-amd64 #1 SMP Wed May 18 23:13:22 UTC 2011 x86_64
[        ]
exten => s,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-kiev.txt)
exten => s,n,Goto(menu,s,start-menu)
exten => 9,1,Goto(menu,s,start-menu)
[submenu]
[       ]
exten => s,1,Wait(1)
exten => s,n(start-submenu),Background(/var/tmp/asterisk/record3)  ; zhivotnie
...
[local]
exten => 2444,1,AgentLogin(1001)    ;registracia agenta
exten => 2445,1,AgentLogin(1002)
exten => 2310,1,Dial(SIP/2303&SIP/2304.10)
exten => 2321,1,Dial(SIP/msk/${DB(mobile/${EXTEN})},20)
exten => _23XX,1,Set(MON_FILENAME=record-${STRFTIME(${EPOCH},,%Y-%m-%d-%H-%M-%S)}-${EXTEN}-${CALLERID(num)})
exten => _23XX,n,Monitor(wav,${MON_FILENAME},m)
;exten => _23XX,n,System(/usr/local/bin/asterisk-jabber-logger Vam zvonyat s ${CALLER(num)})
user@linux7:~$ logout
Connection to kiev.unix.nt closed.
/dev/pts/0
08:44:36
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/16
08:44:36
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/8
08:44:36
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/17
08:44:36
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/0
08:44:37
#!v
exten => _82XX,n,Playback(please-enter-you&vm-message)
exten => _82XX,n,Record(/var/tmp/asterisk/record${EXTEN:2}:gsm,2)
exten => _82XX,n,Wait(1)
exten => _82XX,n,Playback(/var/tmp/asterisk/record${EXTEN:2})
exten => _83XX,1,Playback(/var/tmp/asterisk/record${EXTEN:2})
exten => 8555,1,Playback(/home/user/Music/bg_melody)
;exten => 8556,1,Festival('Hello from Sergio')
exten => 8556,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-burunduk.txt)
;exten => 8556,1,AGI(/usr/local/bin/check-stream.pl,Hello from Sergio)
exten => 8557,1,AGI(/usr/local/bin/festival-script.pl, /var/tmp/ru-belka.txt)
...
;---------------------------------------IVR pilot
exten => 8500,1,Goto(lang-menu,s,1)
[lang-menu]
[         ]         (                                  d50)
exten => s,1,Answer
exten => s,n(startmenu),Background(/var/tmp/asterisk/record10)  ;hi
[xten => s]n,WaitExten(1)
exten => 7,1,Set(MENU_LANG=ru)
exten => 7,n,Goto(menu,s,1)
"extensions.conf" 211L, 6987C written
/dev/pts/16
08:44:37
#!v
[internal]
;-----------Test Asterisk
exten => 8000,1,Wait(1)
exten => 8000,n,Playback(demo-congrats)
exten => _81.,1,Wait(1)
exten => _81.,n,Say(${EXTEN})
;-----------VOICEMAIL
;-----------general Voicemail
exten => 8100,1,VoicemailMain()
;-----------personal Voicemail
...
;---------------------------------------IVR pilot
exten => 8500,1,Goto(lang-menu,s,1)
[lang-menu]
[         ]         (                                  d50)
exten => s,1,Answer
exten => s,n(startmenu),Background(/var/tmp/asterisk/record10)  ;hi
[xten => s]n,WaitExten(1)
exten => 7,1,Set(MENU_LANG=ru)
exten => 7,n,Goto(menu,s,1)
"extensions.conf" 211L, 6987C written
/dev/pts/8
08:44:37
#!v
exten => 8402,1,Read(redirector,/var/tmp/asterisk/record100)
exten => 8402,n,Set(DB(mobile/${CALLERID(num)})=${redirector})
;---------------------------------------IVR pilot
exten => 8500,1,Goto(lang-menu,s,1)
[lang-menu]
[         ]         (                                  d50)
exten => s,1,Answer
exten => s,n(startmenu),Background(/var/tmp/asterisk/record10)  ;hi
[xten => s]n,WaitExten(1)
exten => 7,1,Set(MENU_LANG=ru)
exten => 7,n,Goto(menu,s,1)
"extensions.conf" 211L, 6987C written
/dev/pts/17
08:44:37
#!v
exten => 8402,1,Read(redirector,/var/tmp/asterisk/record100)
exten => 8402,n,Set(DB(mobile/${CALLERID(num)})=${redirector})
;---------------------------------------IVR pilot
exten => 8500,1,Goto(lang-menu,s,1)
[lang-menu]
[         ]         (                                  d50)
exten => s,1,Answer
exten => s,n(startmenu),Background(/var/tmp/asterisk/record10)  ;hi
[xten => s]n,WaitExten(1)
exten => 7,1,Set(MENU_LANG=ru)
exten => 7,n,Goto(menu,s,1)
"extensions.conf" 211L, 6987C written
/dev/pts/18
08:45:40
#!l
ls -l sip.conf
ls: cannot access sip.conf: No such file or directory
/dev/pts/19
08:45:40
#!l
ls -l sip.conf
ls: cannot access sip.conf: No such file or directory
/dev/pts/18
08:45:59
#ls /var/lib/asterisk/sounds/
custom  tts
/dev/pts/19
08:45:59
#ls /var/lib/asterisk/sounds/
custom  tts
/dev/pts/18
08:46:03
#ls /var/tmp/asterisk/
record02.gsm  record04.gsm  record06.gsm  record08.gsm  record10.gsm  record12.gsm  record14.gsm  record22.gsm  ru
record03.gsm  record05.gsm  record07.gsm  record09.gsm  record11.gsm  record13.gsm  record15.gsm  record55.gsm  uk
/dev/pts/19
08:46:03
#ls /var/tmp/asterisk/
record02.gsm  record04.gsm  record06.gsm  record08.gsm  record10.gsm  record12.gsm  record14.gsm  record22.gsm  ru
record03.gsm  record05.gsm  record07.gsm  record09.gsm  record11.gsm  record13.gsm  record15.gsm  record55.gsm  uk
/dev/pts/18
08:46:12
#asterisk -rvvvvvvvvvvv
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)
...
    -- Executing [2402@gr4:4] Dial("SIP/kiev-00000087", "SIP/2402,20") in new stack
  == Using SIP RTP CoS mark 5
    -- Called 2402
    -- SIP/2402-00000088 is ringing
  == Using SIP RTP CoS mark 5
    -- SIP/2401-00000089 answered SIP/kiev-00000087
  == Spawn extension (gr4, 2402, 4) exited non-zero on 'SIP/kiev-00000087'
    -- Registered SIP '2402' at 192.168.108.28 port 5060
linux8*CLI> quit
Executing last minute cleanups
/dev/pts/19
08:46:12
#asterisk -rvvvvvvvvvvv
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)
...
    -- Executing [2402@gr4:4] Dial("SIP/kiev-00000087", "SIP/2402,20") in new stack
  == Using SIP RTP CoS mark 5
    -- Called 2402
    -- SIP/2402-00000088 is ringing
  == Using SIP RTP CoS mark 5
    -- SIP/2401-00000089 answered SIP/kiev-00000087
  == Spawn extension (gr4, 2402, 4) exited non-zero on 'SIP/kiev-00000087'
    -- Registered SIP '2402' at 192.168.108.28 port 5060
linux8*CLI> quit
Executing last minute cleanups
/dev/pts/0
08:46:25
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.
/dev/pts/16
08:46:25
#!ast
asterisk -rx 'dialplan reload'
Dialplan reloaded.

Статистика

Время первой команды журнала16:12:09 2011- 6-23
Время последней команды журнала08:46:25 2011- 6-24
Количество командных строк в журнале101
Процент команд с ненулевым кодом завершения, % 0.00
Процент синтаксически неверно набранных команд, % 0.00
Суммарное время работы с терминалом *, час 1.12
Количество командных строк в единицу времени, команда/мин 1.50
Частота использования команд
!v24|======================| 22.86%
!ast18|=================| 17.14%
vim18|=================| 17.14%
[8|=======| 7.62%
asterisk6|=====| 5.71%
ls6|=====| 5.71%
international4|===| 3.81%
~4|===| 3.81%
include4|===| 3.81%
exit4|===| 3.81%
!/3|==| 2.86%
!as2|=| 1.90%
!l2|=| 1.90%
ssh2|=| 1.90%
____
*) Интервалы неактивности длительностью 30 минут и более не учитываются

Справка

Для того чтобы использовать LiLaLo, не нужно знать ничего особенного: всё происходит само собой. Однако, чтобы ведение и последующее использование журналов было как можно более эффективным, желательно иметь в виду следующее:
  1. В журнал автоматически попадают все команды, данные в любом терминале системы.

  2. Для того чтобы убедиться, что журнал на текущем терминале ведётся, и команды записываются, дайте команду w. В поле WHAT, соответствующем текущему терминалу, должна быть указана программа script.

  3. Команды, при наборе которых были допущены синтаксические ошибки, выводятся перечёркнутым текстом:
    $ l s-l
    bash: l: command not found
    

  4. Если код завершения команды равен нулю, команда была выполнена без ошибок. Команды, код завершения которых отличен от нуля, выделяются цветом.
    $ test 5 -lt 4
    Обратите внимание на то, что код завершения команды может быть отличен от нуля не только в тех случаях, когда команда была выполнена с ошибкой. Многие команды используют код завершения, например, для того чтобы показать результаты проверки

  5. Команды, ход выполнения которых был прерван пользователем, выделяются цветом.
    $ 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
    

  6. Команды, выполненные с привилегиями суперпользователя, выделяются слева красной чертой.
    # id
    uid=0(root) gid=0(root) Gruppen=0(root)
    

  7. Изменения, внесённые в текстовый файл с помощью редактора, запоминаются и показываются в журнале в формате ed. Строки, начинающиеся символом "<", удалены, а строки, начинающиеся символом ">" -- добавлены.
    $ vi ~/.bashrc
    2a3,5
    >    if [ -f /usr/local/etc/bash_completion ]; then
    >         . /usr/local/etc/bash_completion
    >        fi
    

  8. Для того чтобы изменить файл в соответствии с показанными в диффшоте изменениями, можно воспользоваться командой patch. Нужно скопировать изменения, запустить программу patch, указав в качестве её аргумента файл, к которому применяются изменения, и всавить скопированный текст:
    $ patch ~/.bashrc
    В данном случае изменения применяются к файлу ~/.bashrc

  9. Для того чтобы получить краткую справочную информацию о команде, нужно подвести к ней мышь. Во всплывающей подсказке появится краткое описание команды.

    Если справочная информация о команде есть, команда выделяется голубым фоном, например: vi. Если справочная информация отсутствует, команда выделяется розовым фоном, например: notepad.exe. Справочная информация может отсутствовать в том случае, если (1) команда введена неверно; (2) если распознавание команды LiLaLo выполнено неверно; (3) если информация о команде неизвестна LiLaLo. Последнее возможно для редких команд.

  10. Большие, в особенности многострочные, всплывающие подсказки лучше всего показываются браузерами KDE Konqueror, Apple Safari и Microsoft Internet Explorer. В браузерах Mozilla и Firefox они отображаются не полностью, а вместо перевода строки выводится специальный символ.

  11. Время ввода команды, показанное в журнале, соответствует времени начала ввода командной строки, которое равно тому моменту, когда на терминале появилось приглашение интерпретатора

  12. Имя терминала, на котором была введена команда, показано в специальном блоке. Этот блок показывается только в том случае, если терминал текущей команды отличается от терминала предыдущей.

  13. Вывод не интересующих вас в настоящий момент элементов журнала, таких как время, имя терминала и других, можно отключить. Для этого нужно воспользоваться формой управления журналом вверху страницы.

  14. Небольшие комментарии к командам можно вставлять прямо из командной строки. Комментарий вводится прямо в командную строку, после символов #^ или #v. Символы ^ и v показывают направление выбора команды, к которой относится комментарий: ^ - к предыдущей, v - к следующей. Например, если в командной строке было введено:

    $ whoami
    
    user
    
    $ #^ Интересно, кто я?
    
    в журнале это будет выглядеть так:
    $ whoami
    
    user
    
    Интересно, кто я?

  15. Если комментарий содержит несколько строк, его можно вставить в журнал следующим образом:

    $ whoami
    
    user
    
    $ cat > /dev/null #^ Интересно, кто я?
    
    Программа whoami выводит имя пользователя, под которым 
    мы зарегистрировались в системе.
    -
    Она не может ответить на вопрос о нашем назначении 
    в этом мире.
    
    В журнале это будет выглядеть так:
    $ whoami
    user
    
    Интересно, кто я?
    Программа whoami выводит имя пользователя, под которым
    мы зарегистрировались в системе.

    Она не может ответить на вопрос о нашем назначении
    в этом мире.
    Для разделения нескольких абзацев между собой используйте символ "-", один в строке.

  16. Комментарии, не относящиеся непосредственно ни к какой из команд, добавляются точно таким же способом, только вместо симолов #^ или #v нужно использовать символы #=

  17. Содержимое файла может быть показано в журнале. Для этого его нужно вывести с помощью программы cat. Если вывод команды отметить симоволами #!, содержимое файла будет показано в журнале в специально отведённой для этого секции.
  18. Для того чтобы вставить скриншот интересующего вас окна в журнал, нужно воспользоваться командой l3shot. После того как команда вызвана, нужно с помощью мыши выбрать окно, которое должно быть в журнале.
  19. Команды в журнале расположены в хронологическом порядке. Если две команды давались одна за другой, но на разных терминалах, в журнале они будут рядом, даже если они не имеют друг к другу никакого отношения.
    1
        2
    3   
        4
    
    Группы команд, выполненных на разных терминалах, разделяются специальной линией. Под этой линией в правом углу показано имя терминала, на котором выполнялись команды. Для того чтобы посмотреть команды только одного сенса, нужно щёкнуть по этому названию.

О программе

LiLaLo (L3) расшифровывается как Live Lab Log.
Программа разработана для повышения эффективности обучения Unix/Linux-системам.
(c) Игорь Чубин, 2004-2008

$Id$