Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Asteriskβ„’: Π±ΡƒΠ΄ΡƒΡ‰Π΅Π΅ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½ΠΈΠΈ Π’Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠ·Π΄Π°Π½ΠΈΠ΅Β». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 94

Автор Π”ΠΆΠΈΠΌ МСггСлСн

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ сигнализируСт ΠΎ состоянии занятости Ρ‚ΠΎΠ»ΡŒΠΊΠΎ для соСдинСнных ΠΊΠ°Π½Π°Π»ΠΎΠ². Π£ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Ρ‚ΠΈΠΏΠ° ΠΊΠ°Π½Π°Π»ΠΎΠ² имССтся собствСнный

способ оповСщСния Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅Π³ΠΎ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π° ΠΎ состоянии занятости. МоТно ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Playtones(busy) для воспроизвСдСния сигнала «занято».

exten => 123,1,Playback(im-sorry) exten => 123,2,Playtones(busy) exten => 123,3,Busy()

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

Congestion(), Progress(), Playtones(), Hangup()

ChangeMonitor()

ΠœΠ΅Π½ΡΠ΅Ρ‚ имя Ρ„Π°ΠΉΠ»Π° для записи Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π° ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ

ChangeMonitor(Π±Π°Π·ΠΎΠ²ΠΎΠ΅_имяфайла)

ΠœΠ΅Π½ΡΠ΅Ρ‚ имя записанного Ρ„Π°ΠΉΠ»Π° для ΠΊΠ°Π½Π°Π»Π°, созданного ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ΠΌ Monitor(). Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½ΠΈΠΊΠ°ΠΊΠΎΠ³ΠΎ эффСкта, Ссли Π½Π° ΠΊΠ°Π½Π°Π»Π΅ Π½Π΅ производится запись Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π°. АргумСнт Π±Π°Π·ΠΎΠ²ΠΎΠ΅_имяфайла - это Π½ΠΎΠ²ΠΎΠ΅ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π°, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для записи Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π° Π² ΠΊΠ°Π½Π°Π»Π΅.

; Π½Π°Ρ‡ΠΈΠ½Π°Π΅ΠΌ запись Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€Π° Π² Π΄Π°Π½Π½ΠΎΠΌ ΠΊΠ°Π½Π°Π»Π΅, ; ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π° 'sample' exten => 123,1,Monitor(sample) ; мСняСм Π±Π°Π·ΠΎΠ²ΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π° Π½Π° 'example' exten => 123,2,ChangeMonitor(example)

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

Monitor(), StopMonitor(), MixMonitor()

ChanIsAvail()

ΠžΠΏΡ€Π΅Π΄Π΅Π»ΡΠ΅Ρ‚, доступСн Π»ΠΈ Π² настоящСС врСмя Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠ°Π½Π°Π»

ChanIsAvall(тСхнология1/рСсурс1[&тСхнолоигя2/рСсурс2...][, ΠΎΠΏΡ†ΠΈΠΈ])

ΠŸΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΡƒ Π½Π° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠ΅ доступности ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΈΠ· Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΊΠ°Π½Π°Π»ΠΎΠ². Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΆΠ΅ Π·Π°Π΄Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅ ΠΊΠ°Π½Π°Π»ΠΎΠ²:

AVAILCHAN

Имя доступного ΠΊΠ°Π½Π°Π»Π°, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ Π½ΠΎΠΌΠ΅Ρ€ сСанса Π²Ρ‹Π·ΠΎΠ²Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ³ΠΎ для провСдСния ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

AVAILORIGCHAN

ΠšΠ°Π½ΠΎΠ½ΠΈΡ‡Π΅ΡΠΊΠΎΠ΅ имя ΠΊΠ°Π½Π°Π»Π°, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠΎΠ΅ для Π΅Π³ΠΎ создания, Ρ‚ΠΎ Π΅ΡΡ‚ΡŒ имя ΠΊΠ°Π½Π°Π»Π° Π±Π΅Π· Π½ΠΎΠΌΠ΅Ρ€Π° сСанса.

AVAIiSTATUS

Код статуса ΠΊΠ°Π½Π°Π»Π°.

Если Π·Π°Π΄Π°Π½Π° опция s (ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π°Ρ state - состояниС), Asterisk Π±ΡƒΠ΄Π΅Ρ‚ ΡΡ‡ΠΈΡ‚Π°Ρ‚ΡŒ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ ΠΊΠ°Π½Π°Π» нСдоступным, Π΄Π°ΠΆΠ΅ Ссли ΠΎΠ½ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ½ΡΡ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Π²Ρ‹Π·ΠΎΠ².

Если Π·Π°Π΄Π°Π½Π° опция j ΠΈ Π½Π΅ доступСн Π½ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Π·Π°ΠΏΡ€Π°ΡˆΠΈΠ²Π°Π΅ΠΌΡ‹Ρ… ΠΊΠ°Π½Π°Π»ΠΎΠ², Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ n + 101 (Π³Π΄Π΅ n - Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚), Ссли этот ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ сущСствуСт.

; провСряСт, доступны Π»ΠΈ ΠΊΠ°Π½Π°Π»Ρ‹ Zap/1 ΠΈ Zap/2 exten => 123,1,ChanIsAvail(Zap/1&Zap/2) ; Π²Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ имя доступного ΠΊΠ°Π½Π°Π»Π° Π² CLI Asterisk exten => 123,2,Verbose(0,${AVAILORIGCHAN})

Π“~ 1 Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ Π½Π΅ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ для ΠΊΠ°Π½Π°Π»ΠΎΠ² MGCP.

ChannelRedirect()

ΠŸΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΠ΅Ρ‚ ΠΊΠ°Π½Π°Π» Π² Π½ΠΎΠ²ΡƒΡŽ Ρ‚ΠΎΡ‡ΠΊΡƒ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π°

ChannelRedirect(ΠΊaΠ½aΠ»,[[контСкст,]Π΄ΠΎΠ±aΠ²ΠΎΡ‡Π½Ρ‹ΠΉΠ½ΠΎΠΌΠ΅Ρ€,]ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚)

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ пСрСнаправляСт Π·Π°Π΄Π°Π½Π½Ρ‹ΠΉ ΠΊΠ°Π½Π°Π» Π² Π½ΠΎΠ²Ρ‹ΠΉ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π°. Если Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹ΠΉΠ½ΠΎΠΌΠ΅Ρ€ Π½Π΅ Π·Π°Π΄Π°Π½, принимаСтся Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€. Если контСкст Π½Π΅ Π·Π°Π΄Π°Π½, Π±ΡƒΠ΄Π΅Ρ‚ принят Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ контСкст:

; ΠŸΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²Π»ΡΠ΅Ρ‚ SIP/Bob ΠΊ ΠΌΡƒΠ·Ρ‹ΠΊΠ΅ Π²ΠΎ врСмя оТидания

; ΠΏΡ€ΠΈ Π½Π°Π±ΠΎΡ€Π΅ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° 123

exten => 123,1,ChannelRedirect(SIP/Bob,124,1)

exten => 124,1,Answer()

exten => 124,2,MusicOnHold()

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

Transfer()

ChanSpy()

Π‘Π»ΡƒΡˆΠ°Π΅Ρ‚ Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€ Π² ΠΊΠ°Π½Π°Π»Π΅ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ сигналы Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠ°Π½Π°Π»

ChanSpy([прСфикскaΠ½aΠ»a[,ΠΎΠΏΡ†ΠΈΠΈ]])

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡ аудиосигнала, проходящСго ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ Asterisk Π² ΠΎΠ±ΠΎΠΈΡ… направлСниях. Если Π·Π°Π΄Π°Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ прСфиксканала, ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚ΡŒΡΡ Π±ΡƒΠ΄ΡƒΡ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Π½Π°Π»Ρ‹, Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ΡΡ с этого прСфикса.

ΠŸΡ€ΠΈ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΠΈ ΠΊΠ°Π½Π°Π»Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒΡΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ дСйствия:

β€’ Набор # цикличСски мСняСт ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ громкости.

β€’ Набор * заставит ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅ΠΉΡ‚ΠΈ ΠΊ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡŽ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ доступного ΠΊΠ°Π½Π°Π»Π°.

β€’ Набор ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ символов, Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½Π½Ρ‹ΠΉ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ ΠΊΠ½ΠΎΠΏΠΊΠΈ #, создаСт имя ΠΊΠ°Π½Π°Π»Π° (ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΎ послС прСфикска- Π½Π°Π»Π°). НапримСр, Ссли Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ChanSpy(Zap), Π° Π·Π°Ρ‚Π΅ΠΌ Π² процСссС ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡ Π½Π°Π±Ρ€Π°Ρ‚ΡŒ символы 42#, начнСтся ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΊΠ°Π½Π°Π»Π° Zap/42.

ΠŸΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΎΠΏΡ†ΠΈΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ Π½ΡƒΠ»ΡŒ ΠΈΠ»ΠΈ Π±ΠΎΠ»Π΅Π΅ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… ΠΎΠΏΡ†ΠΈΠΉ:

b

ΠŸΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ соСдинСнныС ΠΊΠ°Π½Π°Π»Ρ‹.

g(Π³Ρ€ΡƒΠΏΠΏΠ°)

ΠŸΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Ρ‚ΡŒ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Π½Π°Π»Ρ‹ с ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠ°Π½Π°Π»Π° SPYGROUP, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ Π² Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ спискС с Ρ€Π°Π·Π΄Π΅Π»ΡΡŽΡ‰ΠΈΠΌΠΈ двоСточиями Π΄ΠΎΠ»ΠΆΠ½Π° Π±Ρ‹Ρ‚ΡŒ ΡƒΠΊΠ°Π·Π°Π½Π° Π³Ρ€ΡƒΠΏΠΏΠ°.

q

Π‘ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ. Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ, начиная ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΠ΅, Π½Π΅ ΠΏΠΎΠ΄Π°Π²Π°Ρ‚ΡŒ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал ΠΈΠ»ΠΈ Π½Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚ΡŒ имя Π²Ρ‹Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ°Π½Π°Π»Π°.

r[(базовоСимя)]

ЗаписываСт Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€, вСдущийся ΠΏΠΎ ΠΊΠ°Π½Π°Π»Ρƒ, Π² ΠΏΠ°ΠΏΠΊΡƒ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ для записСй Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€ΠΎΠ² (ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ это /var/spool/asterisk/monitor). ΠΠ΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ базовоСимя Π·Π°Π΄Π°Π΅Ρ‚ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ имя Ρ„Π°ΠΉΠ»Π° для записСй, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - chanspy.

v([Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅])

НастраиваСт Π³Ρ€ΠΎΠΌΠΊΠΎΡΡ‚ΡŒ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ аудиосигнала. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ Π² Π΄ΠΈΠ°ΠΏΠ°Π·ΠΎΠ½Π΅ ΠΎΡ‚ 4 Π΄ΠΎ -4. ΠžΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ сдСлаСт Π·Π²ΡƒΠΊ Ρ‚ΠΈΡˆΠ΅, Ρ‚ΠΎΠ³Π΄Π° ΠΊΠ°ΠΊ ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ - Π³Ρ€ΠΎΠΌΡ‡Π΅.

w

Π Π΅ΠΆΠΈΠΌ ΡˆΠ΅ΠΏΠΎΡ‚Π°. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°ΡŽΡ‰Π΅ΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ Β«Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒΒ» с ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌ ΠΊΠ°Π½Π°Π»ΠΎΠΌ. ΠŸΡ€ΠΈ этом Π½ΠΈ ΠΎΠ΄ΠΈΠ½ Π΄Ρ€ΡƒΠ³ΠΎΠΉ соСдинСнный ΠΊΠ°Π½Π°Π» Π½Π΅ смоТСт ΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ этот Ρ€Π°Π·Π³ΠΎΠ²ΠΎΡ€.

W

Π—Π°ΠΊΡ€Ρ‹Ρ‚Ρ‹ΠΉ Ρ€Π΅ΠΆΠΈΠΌ ΡˆΠ΅ΠΏΠΎΡ‚Π°. ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°ΡŽΡ‰Π΅ΠΌΡƒ ΠΊΠ°Π½Π°Π»Ρƒ Β«Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ΡŒΒ» с ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π΅ΠΌΡ‹ΠΌ ΠΊΠ°Π½Π°Π»ΠΎΠΌ Π±Π΅Π· возмоТности ΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ аудиосигнал ΠΈΠ· ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π΅ΠΌΠΎΠ³ΠΎ ΠΊΠ°Π½Π°Π»Π°.

; ΠŸΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π΅ΠΌ ΠΊΠ°Π½Π°Π»Ρ‹ Zap Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ ΡˆΠ΅ΠΏΠΎΡ‚Π° exten => 123,1,ChannelSpy(Zap,w)

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

ExtenSpy()

Congestion()

УстанавливаСт состояниС ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΊΠ°Π½Π°Π»Π°

Congestion([врСмяоТидания])

Π£ΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ ΠΊΠ°Π½Π°Π»Ρƒ ΠΈΠ½Π΄ΠΈΡ†ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΡƒ, Π° Π·Π°Ρ‚Π΅ΠΌ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ повСсит Ρ‚Ρ€ΡƒΠ±ΠΊΡƒ ΠΈΠ»ΠΈ Ρ€Π°Π·Ρ€Ρ‹Π²Π° соСдинСния ΠΏΠΎ истСчСнии Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания (Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠΌ врСмяоТида- ния Π² сСкундах).

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ сигнализируСт ΠΎ ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠ΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° дальний ΠΊΠΎΠ½Π΅Ρ† соСдинСния; ΠΎΠ½ΠΎ фактичСски Π½Π΅ воспроизводит Ρ‚ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ сигнал ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ Π»ΠΈΠ½ΠΈΠΈ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Ρƒ. Для воспроизвСдСния сигнала ΠΏΠ΅Ρ€Π΅Π³Ρ€ΡƒΠ·ΠΊΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Playtones(congestion).

ΠŸΡ€ΠΈ использовании Π΄Π°Π½Π½ΠΎΠΉ ΠΊΠΎΠΌΠ°Π½Π΄Ρ‹ Π±Π΅Π· Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ оТидания Π²ΠΎΠ·Π½ΠΈΠΊΠ°Π΅Ρ‚ риск Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ ΠΊΠ°Π½Π°Π» задСрТится Π² этом состоянии. Π’ этом Π½Π΅Ρ‚ нСобходимости, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ просто Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΈΠ½Ρ„ΠΎΡ€ΠΌΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ ΠΎ пСрСгруТСнности ΠΊΠ°Π½Π°Π»Π°. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Playtones(congestion), Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°Π±ΠΎΠ½Π΅Π½Ρ‚ ΡƒΡΠ»Ρ‹ΡˆΠ°Π» сигнал «занято» ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½Π½ΠΎΠΉ частоты, Π° Π·Π°Ρ‚Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ Hangup().

ВсСгда Π·Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ΡΡ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎ:

; для Caller ID 555-1234 всСгда Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒ ; сигнал пСрСгруТСнности Π»ΠΈΠ½ΠΈΠΈ

exten => 123,1,GotoIf($[${CALLERID(num)} = 5551234]?5:2)

exten => 123,2,Playtones(congestion)

exten => 123,3,Congestion(3)

exten => 123,4,Hangup()

exten => 123,5,Dial(Zap/1)

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

Busy(), Progress(), Playtones(), Hangup()

ContinueWhile()

ВыполняСт пСрСзапуск Ρ†ΠΈΠΊΠ»Π° While()

ContinueWhile()

ВозвращаСтся ΠΊ Π½Π°Ρ‡Π°Π»Ρƒ Ρ†ΠΈΠΊΠ»Π° While() ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ вычисляСт условноС Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅.

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

While(), ExitWhile()

ControlPlayback()

Воспроизводит Ρ„Π°ΠΉΠ» с Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ ускорСнной ΠΏΠ΅Ρ€Π΅ΠΌΠΎΡ‚ΠΊΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄

ControlPlayback(Ρ„Π°ΠΉΠ»[,skipms[, ff [, rew[,stop[, pause[, restart[, ΠΎΠΏΡ†ΠΈΠΈ]]]]]]])

Воспроизводит ΡƒΠΊΠ°Π·Π°Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» (Π±Π΅Π· Ρ€Π°ΡΡˆΠΈΡ€Π΅Π½ΠΈΡ Ρ„Π°ΠΉΠ»Π°), прСдоставляя ΠΏΡ€ΠΈ этом ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŽ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ ΠΏΠΎ Ρ„Π°ΠΉΠ»Ρƒ Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈ Π½Π°Π·Π°Π΄, наТимая ΠΊΠ½ΠΎΠΏΠΊΠΈ ff ΠΈ rew. По ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΠΈ * ΠΈ # для ΠΏΠ΅Ρ€Π΅ΠΌΠΎΡ‚ΠΊΠΈ Ρ„Π°ΠΉΠ»Π° Π½Π°Π·Π°Π΄ ΠΈ Π²ΠΏΠ΅Ρ€Π΅Π΄ соотвСтствСнно. ΠžΠΏΡ†ΠΈΡ skipms опрСдСляСт, Π½Π° сколько сСкунд записи Π²ΠΏΠ΅Ρ€Π΅Π΄ ΠΈΠ»ΠΈ Π½Π°Π·Π°Π΄ выполняСтся ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΏΡ€ΠΈ ΠΊΠ°ΠΆΠ΄ΠΎΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ ff ΠΈΠ»ΠΈ rew. Если Π·Π°Π΄Π°Π½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ stop, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°Ρ‚ΡŒ воспроизвСдСниС ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ stop.

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π·Π°Π΄Π°Π½ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ pause, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ опрСдСляСт, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ pause воспроизвСдСниС Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅Ρ‚ приостановлСно. ΠŸΡ€ΠΈ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎΠΌ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΊΠ½ΠΎΠΏΠΊΠΈ pause воспроизвСдСниС Ρ„Π°ΠΉΠ»Π° возобновится.

Если Π·Π°Π΄Π°Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ restart, Ρ‚ΠΎ ΠΏΡ€ΠΈ Π½Π°ΠΆΠ°Ρ‚ΠΈΠΈ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ воспроизвСдСниС Ρ„Π°ΠΉΠ»Π° Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Ρ‡Π°Ρ‚ΠΎ сначала.

Если для ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Π° ΠΎΠΏΡ†ΠΈΠΈ Π·Π°Π΄Π°Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ j ΠΈ ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Ρ„Π°ΠΉΠ»Π° Π½Π΅ сущСствуСт, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ΠΈΡ‚ Π² ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ n + 101, Ссли Ρ‚Π°ΠΊΠΎΠ²ΠΎΠΉ присутствуСт (Π³Π΄Π΅ n - Π½ΠΎΠΌΠ΅Ρ€ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°).

ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ControlPlayback() ΠΏΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΈ выполнСния Π·Π°Π΄Π°Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ для ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ ΠΊΠ°Π½Π°Π»Π° CPLAYBACKSTATUS. ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠΉ CPLAYBACK STATUS Π±ΡƒΠ΄Π΅Ρ‚ присвоСно ΠΎΠ΄Π½ΠΎ ΠΈΠ· ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π·Π½Π°Ρ‡Π΅Π½ΠΈΠΉ: SUCCESS (успСх)

USERSTOPPED (остановлСн ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ) ERROR (ошибка)

; позволяСт Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Ρƒ ΡƒΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ ; воспроизвСдСниСм этого Ρ„Π°ΠΉΠ»Π°

exten => 123,1,ControlPlayback(tt-monkeys\3000\#\*\5\0)

Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅ Ρ‚Π°ΠΊΠΆΠ΅

Playback(), Background(), Dictate(),

DateTime()

ΠŸΡ€ΠΎΠ³ΠΎΠ²Π°Ρ€ΠΈΠ²Π°Π΅Ρ‚ Π΄Π°Ρ‚Ρƒ ΠΈ/ΠΈΠ»ΠΈ врСмя Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅

DateTime([unixtime[, часовойпояс[, Ρ„ΠΎΡ€ΠΌΠ°Ρ‚]]])

Если Π·Π°Π΄Π°Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ unixtime, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³ΠΎΠ²Π°Ρ€ΠΈΠ²Π°Π΅Ρ‚ эти Π΄Π°Ρ‚Ρƒ ΠΈ врСмя. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΎΠ½ΠΎ ΠΏΡ€ΠΎΠ³ΠΎΠ²Π°Ρ€ΠΈΠ²Π°Π΅Ρ‚ Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠ΅ Π΄Π°Ρ‚Ρƒ ΠΈ врСмя. Если Π·Π°Π΄Π°Π½ часовойпояс, Π΄Π°Ρ‚Π° ΠΈ врСмя Π²Ρ‹Ρ‡ΠΈΡΠ»ΡΡŽΡ‚ΡΡ соотвСтствСнно этому часовому поясу. Π’ ΠΏΡ€ΠΎΡ‚ΠΈΠ²Π½ΠΎΠΌ случаС ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ зональная настройка сСрвСра Asterisk. Если Π·Π°Π΄Π°Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚, Π΄Π°Ρ‚Π° ΠΈ врСмя Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΎΠ³ΠΎΠ²Π°Ρ€ΠΈΠ²Π°Ρ‚ΡŒΡΡ соотвСтствСнно этому Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρƒ. (ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ Π΄Π°Ρ‚Ρ‹ ΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡƒΠ·Π½Π°Ρ‚ΡŒ ΠΈΠ· ΠΎΠ±Ρ€Π°Π·Ρ†Π° Ρ„Π°ΠΉΠ»Π° voicemail.conf.)