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

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

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

Directory(vm-ΠΊ.ΠΎΠ½Ρ‚Π΅ΠΊ.с^, контСкст-Π½Π°Π±ΠΎΡ€Π°[,ΠΎΠΏΡ†ΠΈΠΈ]])

ΠŸΡ€Π΅Π΄ΠΎΡΡ‚Π°Π²Π»ΡΠ΅Ρ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ справочник Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ½ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒ ΠΏΠΎ ΠΈΠΌΠ΅Π½ΠΈ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π°. Бписок ΠΈΠΌΠ΅Π½ ΠΈ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹Ρ… Π½ΠΎΠΌΠ΅Ρ€ΠΎΠ² ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ voicemail.conf. АргумСнт vm-контСкст являСтся ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ; ΠΎΠ½ опрСдСляСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ контСкст voicemail.conf. АргумСнт контСкст-Π½Π°Π±ΠΎΡ€Π° - это контСкст, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для выполнСния Π·Π²ΠΎΠ½ΠΊΠΎΠ² Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ. Если Π½Π΅ Π·Π°Π΄Π°Π½, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ принимаСтся Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ vm-контСкст. Если для Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Π° ΠΎΠΏΡ†ΠΈΠΈ Π·Π°Π΄Π°Π½ΠΎ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ f, Asterisk Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ€ Π² справочникС Π½Π° основании ΠΈΠΌΠ΅Π½ΠΈ, ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ Π² Ρ„Π°ΠΉΠ»Π΅ voicemail.conf, Π° Π½Π΅ Ρ„Π°ΠΌΠΈΠ»ΠΈΠΈ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π°. Если Π·Π°Π΄Π°Π½Π° опция e, ΠΊΡ€ΠΎΠΌΠ΅ ΠΈΠΌΠ΅Π½ΠΈ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π°, Asterisk Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ поиск Ρ‚Π°ΠΊΠΆΠ΅ ΠΈ ΠΏΠΎ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½ΠΎΠΌΡƒ Π½ΠΎΠΌΠ΅Ρ€Ρƒ.

Если ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ 0 (Π½ΡƒΠ»ΡŒ) ΠΈ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ контСкстС Π΅ΡΡ‚ΡŒ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ o (ΠΈΠ»ΠΈ строчная Π±ΡƒΠΊΠ²Π° ΠΎ), ΡƒΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ Π²Ρ‹Π·ΠΎΠ²ΠΎΠΌ ΠΏΠ΅Ρ€Π΅ΠΉΠ΄Π΅Ρ‚ Π² этот Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€. Π’Π²Π΅Π΄Π΅Π½ΠΈΠ΅ * обСспСчит Π°Π½Π°Π»ΠΎΠ³ΠΈΡ‡Π½Ρ‹ΠΉ Π²Ρ‹Ρ…ΠΎΠ΄, Π½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹ΠΉ Π½ΠΎΠΌΠ΅Ρ€ a, Ρ‡Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ ΠΏΠΎΡ…ΠΎΠΆΠ΅ Π½Π° ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Voicemail(). exten => *,1,Directory(default,incoming) exten => #,1,Directory(default,incoming,f) exten => 9,1,Directory(default,incoming,fe)

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

voicemail.conf

DISA()

Direct Inward System Access (ΠŸΡ€ΡΠΌΠΎΠΉ внутрисистСмный доступ): позволяСт внСшним Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ исходящиС Π·Π²ΠΎΠ½ΠΊΠΈ

DISA(ΠΏΠ°Ρ€ΠΎΠ»ΡŒ[, контСкст[, callerid[, почтовыйящик.[@ΡƒΡ‚ΠΊ.ΠΎΠ½Ρ‚Π΅ΠΊ.ст]]]]) DISA(Ρ„Π°ΠΉΠ»-пароля[, callerid[, почтовыйящик[@утконтСкст]]])

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ внСшним Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ ΠΏΠΎΠ»ΡƒΡ‡Π°Ρ‚ΡŒ Β«Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΉΒ» Ρ‚ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ сигнал систСмы ΠΈ ΡΠΎΠ²Π΅Ρ€ΡˆΠ°Ρ‚ΡŒ Π²Ρ‹Π·ΠΎΠ²Ρ‹ с АВБ Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π±ΡƒΠ΄Ρ‚ΠΎ ΠΎΠ½ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π΅Π΅ Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΌΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌΠΈ. АбонСнту прСдоставляСтся Ρ‚ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ сигнал, послС Ρ‡Π΅Π³ΠΎ ΠΎΠ½ Π΄ΠΎΠ»ΠΆΠ΅Π½ ввСсти свой сСкрСтный ΠΊΠΎΠ΄ ΠΈ Π½Π°ΠΆΠ°Ρ‚ΡŒ Π² ΠΊΠΎΠ½Ρ†Π΅ ΠΊΠ½ΠΎΠΏΠΊΡƒ #. Если сСкрСтный ΠΊΠΎΠ΄ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ, Π°Π±ΠΎΠ½Π΅Π½Ρ‚ ΡƒΡΠ»Ρ‹ΡˆΠΈΡ‚ Ρ‚ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ сигнал систСмы ΠΈ смоТСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π·Π²ΠΎΠ½ΠΊΠΈ.

ΠžΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Ρ‡Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ Ρ‚ΠΈΠΏ доступа создаСт ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΡƒΡŽ ΡƒΠ³Ρ€ΠΎΠ·Ρƒ бСзопасности. Π•Π³ΠΎ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‡Ρ€Π΅Π·Π²Ρ‹Ρ‡Π°ΠΉΠ½ΠΎ остороТно, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ ΡƒΡ…ΡƒΠ΄ΡˆΠΈΡ‚ΡŒ Π±Π΅Π·ΠΎΠΏΠ°ΡΠ½ΠΎΡΡ‚ΡŒ своСй систСмы Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½ΠΎΠΉ связи.

АргумСнт ΠΏΠ°Ρ€ΠΎΠ»ΡŒ - это числовой сСкрСтный ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π°Π±ΠΎΠ½Π΅Π½Ρ‚ Π΄ΠΎΠ»ΠΆΠ΅Π½ ввСсти, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ исходящиС Π·Π²ΠΎΠ½ΠΊΠΈ. Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ этот синтаксис, всС Π°Π±ΠΎΠ½Π΅Π½Ρ‚Ρ‹ Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΎΠ΄ΠΈΠ½ ΠΏΠ°Ρ€ΠΎΠ»ΡŒ. Π§Ρ‚ΠΎΠ±Ρ‹ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Ρ‹ ΠΌΠΎΠ³Π»ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ DISA() Π±Π΅Π· пароля, Π½Π°ΠΏΠΈΡˆΠΈΡ‚Π΅ вмСсто пароля строку no-password (ΠΏΠ°Ρ€ΠΎΠ»ΡŒ Π½Π΅ Π½ΡƒΠΆΠ΅Π½).

АргумСнт контСкст опрСдСляСт контСкст, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π°Π±ΠΎΠ½Π΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Π½Π°Π±ΠΈΡ€Π°Ρ‚ΡŒ Π½ΠΎΠΌΠ΅Ρ€. Если контСкст Π½Π΅ Π·Π°Π΄Π°Π½, ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ DISA() ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ контСкст disa.

АргумСнт callerid опрСдСляСт Π½ΠΎΠ²ΡƒΡŽ строку Caller ID, которая Π±ΡƒΠ΄Π΅Ρ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ для исходящСго Π·Π²ΠΎΠ½ΠΊΠ°.

АргумСнт почтовыйящик - это Π½ΠΎΠΌΠ΅Ρ€ ΠΏΠΎΡ‡Ρ‚ΠΎΠ²ΠΎΠ³ΠΎ ящика (ΠΈ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ контСкст голосовой ΠΏΠΎΡ‡Ρ‚Ρ‹, утконтСкст) голосовой ΠΏΠΎΡ‡Ρ‚Ρ‹. Если Π² ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠΌ ящикС голосовой ΠΏΠΎΡ‡Ρ‚Ρ‹ Π΅ΡΡ‚ΡŒ Π½ΠΎΠ²Ρ‹Π΅ сообщСния, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π°Π±ΠΎΠ½Π΅Π½Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ ΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ прСрывистый Ρ‚ΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ сигнал. ΠšΡ€ΠΎΠΌΠ΅ Ρ‚ΠΎΠ³ΠΎ, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π°Π»ΡŒΡ‚Π΅Ρ€Π½Π°Ρ‚ΠΈΠ²Π½Ρ‹ΠΉ синтаксис ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°Π²Π°Ρ‚ΡŒ вмСсто Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² ΠΏΠ°Ρ€ΠΎΠ»ΡŒ ΠΈ контСкст имя глобального Ρ„Π°ΠΉΠ»Π° ΠΏΠ°Ρ€ΠΎΠ»Π΅ΠΉ. Π’ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ строкС Ρ„Π°ΠΉΠ»Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒΡΡ ΠΈΠ»ΠΈ сСкрСтный ΠΊΠΎΠ΄, ΠΈΠ»ΠΈ сСкрСтный ΠΊΠΎΠ΄ ΠΈ контСкст, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ символом Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ Ρ‡Π΅Ρ€Ρ‚Ρ‹ (| ). Если контСкст Π½Π΅ Π·Π°Π΄Π°Π½, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ контСкст disa.

Если рСгистрация Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π° ΠΏΡ€ΠΎΡˆΠ»Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ синтаксичСский Ρ€Π°Π·Π±ΠΎΡ€ Π½Π°Π±Ρ€Π°Π½Π½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π° Π² Π·Π°Π΄Π°Π½Π½ΠΎΠΌ контСкстС:

; позволяСм внСшним Π°Π±ΠΎΠ½Π΅Π½Ρ‚Π°ΠΌ Π·Π²ΠΎΠ½ΠΈΡ‚ΡŒ Π½Π° Π½ΠΎΠΌΠ΅Ρ€Π° 1-800, ; Ссли ΠΎΠ½ΠΈ Π·Π½Π°ΡŽΡ‚ сСкрСтный ΠΊΠΎΠ΄. Π—Π°Π΄Π°Π΅ΠΌ ΠΈΠΌ Caller ID, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ; ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π²ΠΏΠ΅Ρ‡Π°Ρ‚Π»Π΅Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ ΠΎΠ½ΠΈ звонят ΠΈΠ· ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ [incoming]

exten => 123,1,DISA(4569,disa,"Company ABC" <(234) 123-4567>) [disa]

exten => _1800NXXXXXX,1,Dial(Zap/4/${EXTEN})

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

Authenticate(), VMAuthenticate()

DumpChan()

Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΊΠ°Π½Π°Π»Π΅ Π² консоль

DumpCha.n([ΠΌΠΈΠ½ΠΈΠΌaΠ»ΡŒΠ½Ρ‹ΠΉ_ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ_Π΄Π΅Ρ‚aΠ»ΡŒΠ½ΠΎΡΡ‚ΠΈ])

Π’Ρ‹Π²ΠΎΠ΄ΠΈΡ‚ Π½Π° экран ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌ ΠΊΠ°Π½Π°Π»Π΅, Π° Ρ‚Π°ΠΊΠΆΠ΅ список всСх ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΊΠ°Π½Π°Π»Π°. Если Π·Π°Π΄Π°Π½ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ_ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ_Π΄Π΅- Ρ‚Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ, Π²Ρ‹Π²ΠΎΠ΄ отобраТаСтся, Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠΎΠ³Π΄Π° Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΠΉ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Π΄Π΅Ρ‚Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ сообщСний Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅ ΠΈΠ»ΠΈ Π²Ρ‹ΡˆΠ΅.

Если Π·Π°Π΄Π°Π½ΠΎ нСсколько ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… ΠΊΠ°Π½Π°Π»Π°, DumpChan() ΠΏΠΎΠΊΠ°ΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠ΅Ρ€Π²Ρ‹Π΅ 1024 символа списка ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Ρ… вашСго ΠΊΠ°Π½Π°Π»Π°.

exten => s,1,Answer() exten => s,2,DumpChan()

exten => s,3,Background(enter-ext-of-person)

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

NoOp(), Verbose()

EAGI()

Π‘ΠΌ. AGI().

Echo()

Воспроизводит Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΌΡƒ Π°Π±ΠΎΠ½Π΅Π½Ρ‚Ρƒ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ ΠΎΠ½ Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚

Echo()

Π’ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Π·Π²ΡƒΠΊΠΎΠ²ΠΎΠΉ сигнал ΠΈΠ· ΠΊΠ°Π½Π°Π»Π° Π½Π°Π·Π°Π΄ Π² ΠΊΠ°Π½Π°Π». Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для тСстирования Π·Π°Π΄Π΅Ρ€ΠΆΠΊΠΈ ΠΈ качСства голоса VoIP- Π»ΠΈΠ½ΠΈΠΈ. Π’Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Π°Π±ΠΎΠ½Π΅Π½Ρ‚ ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΆΠ°Ρ‚ΡŒ ΠΊΠ½ΠΎΠΏΠΊΡƒ #, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ΠΉΡ‚ΠΈ.

exten => 123,1,Echo()

exten => 123,2,Playback(vm-goodbye)

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

Milliwatt()

EndWhile()

Π—Π°Π²Π΅Ρ€ΡˆΠ°Π΅Ρ‚ Ρ†ΠΈΠΊΠ» while

EndWhile()

ВозвращаСтся ΠΊ Ρ€Π°Π½Π΅Π΅ Π²Ρ‹Π·Π²Π°Π½Π½ΠΎΠΌΡƒ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡŽ While(). ΠŸΠΎΠ»Π½ΡƒΡŽ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ» while, ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² описании прилоТСния While().

exten => 123,1,Set(COUNT=1) exten => 123,2,While($[ ${COUNT} < 5 ]) exten => 123,3,SayNumber(${COUNT}) exten => 123,4,Set(COUNT=$[${COUNT} + 1] exten => 123,5,EndWhile()

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

While(), ExitWhile(), GotoIf()

Exec()

ДинамичСски выполняСт ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Asterisk

Ex.ec(имяприлоТСния(aΡ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹))

ΠŸΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ любоС ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π΄Π°ΠΆΠ΅ Ссли ΠΎΠ½ΠΎ Π½Π΅ ΡƒΠΊΠ°Π·Π°Π½ΠΎ Π² ΠΊΠΎΠ΄Π΅ Π΄ΠΈΠ°Π»ΠΏΠ»Π°Π½Π°. ВыполняСт Π²Ρ‹Ρ…ΠΎΠ΄ Ρ‚Π°ΠΊ ΠΆΠ΅, ΠΊΠ°ΠΊ ΠΈ Π±Π°Π·ΠΎΠ²ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, ΠΈΠ»ΠΈ Π°Π²Π°Ρ€ΠΈΠΉΠ½ΠΎ, Ссли это ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ Π½Π°ΠΉΠ΄Π΅Π½ΠΎ. Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹ пСрСдаСтся Π² Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅.

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ позволяСт динамичСски Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒ прилоТСния, извлСкая ΠΈΡ… ΠΈΠ· Π±Π°Π·Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΎΠ³ΠΎ внСшнСго источника.

exten => 123,1,Set(MYAPP=SayDigits(12345)) exten => 123,2,Exec(${MYAPP})

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

EVAL, TryExec(), ExecIf()

ExecIf()

ВыполняСт ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Asterisk ΠΏΠΎ ΡƒΡΠ»ΠΎΠ²ΠΈΡŽ

ExecIf(Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅,ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹)

Если Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ истинно, выполняСт Π·Π°Π΄Π°Π½Π½ΠΎΠ΅ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅, пСрСдавая Π² Π½Π΅Π³ΠΎ Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚Ρ‹, ΠΈ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚. Π‘ΠΎΠ»ΡŒΡˆΠ΅ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΎ выраТСниях Asterisk ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ Π² Π³Π»Π°Π²Π΅ 6 ΠΈΠ»ΠΈ Π² Ρ„Π°ΠΉΠ»Π΅ channelvariables. txt Π² ΠΏΠΎΠ΄ΠΏΠ°ΠΏΠΊΠ΅ doc/ ΠΏΠ°ΠΏΠΊΠΈ исходного ΠΊΠΎΠ΄Π° Asterisk. Если Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π»ΠΎΠΆΠ½ΠΎ, Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ продолТаСтся со ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π³ΠΎ ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°.

exten => 123,1,ExecIf($[ ${CALLERIDNUM} = 101 ],SayDigits,12345) exten => 123,2,SayDigits(6789)

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

EVAL, Exec(), TryExec()

ExitWhile()

ВыполняСт Π²Ρ‹Ρ…ΠΎΠ΄ ΠΈΠ· Ρ†ΠΈΠΊΠ»Π° While() нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π»ΠΎ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½ΠΎ условиС ΠΈΠ»ΠΈ Π½Π΅Ρ‚

ExitWhile()

Π—Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ Ρ†ΠΈΠΊΠ» While() нСзависимо ΠΎΡ‚ Ρ‚ΠΎΠ³ΠΎ, Π±Ρ‹Π»ΠΎ Π»ΠΈ ΡƒΠ΄ΠΎΠ²Π»Π΅Ρ‚Π²ΠΎΡ€Π΅Π½ΠΎ условиС Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ.

exten => 123,1,Set(COUNT=1)123,1,Set(COUNT=1) exten => 123,n,While($[${COUNT} < 5]) exten => 123,n,GotoIf($[${COUNT} != 3]?continue) exten => 123,n,ExitWhile() exten => 123,n(continue),NoOp() exten => 123,n,SayNumber(${COUNT}) exten => 123,n,Set(COUNT=$[${COUNT} + 1]) exten => 123,n,EndWhile()

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

While(), ContinueWhile(), EndWhile()

ExtenSpy()

ΠŸΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π΅Ρ‚ аудиосигнал ΠΏΠΎ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½ΠΎΠΌΡƒ Π½ΠΎΠΌΠ΅Ρ€Ρƒ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ (ΠΎΠΏΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ) ΠΏΠΎΡΡ‹Π»Π°Ρ‚ΡŒ сигнал Π² Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠ°Π½Π°Π»

ExtenSpy([Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½Ρ‹ΠΉΠ½ΠΎΠΌΠ΅Ρ€@контСкст[, ΠΎΠΏΡ†ΠΈΠΈ]])

Π­Ρ‚ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ для ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡ аудиосигнала, ΠΏΠΎΡΡ‚ΡƒΠΏΠ°ΡŽΡ‰Π΅Π³ΠΎ Π² ΠΊΠ°Π½Π°Π» ΠΈ ΠΈΠ· ΠΊΠ°Π½Π°Π»Π° Asterisk. Для ΠΏΡ€ΠΎΡΠ»ΡƒΡˆΠΈΠ²Π°Π½ΠΈΡ Π±ΡƒΠ΄ΡƒΡ‚ Π²Ρ‹Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΊΠ°Π½Π°Π»Ρ‹, созданныС исходящими Π²Ρ‹Π·ΠΎΠ²Π°ΠΌΠΈ с Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ Π΄ΠΎΠ±Π°Π²ΠΎΡ‡Π½ΠΎΠ³ΠΎ Π½ΠΎΠΌΠ΅Ρ€Π°.

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

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

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

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

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

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

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

q

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

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

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

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

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

w

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